
fakeroot debian/rules clean
由於ubuntu/
在建置 Linus v4.4-rc8 的 Ubuntu 核心團隊的上游分支時缺少目錄,該步驟失敗。
除了這三個補丁之外還有其他補丁嗎http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc8-wily/在建置指令之前需要執行的步驟或附加步驟https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel可以用嗎?
我認為這些錯誤不能被忽略,因為 Tim Gardner 的“[Config] Fix bogus重建腳本”進行了修復,它明確更改debian.master/reconstruct
了0001-base-packaging.patch
.
git clone git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack
cd mainline-crack/
git fetch --tags
git checkout -b v4.4-rc8 v4.4-rc8
curl --silent http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc8-wily/0001-base-packaging.patch | git am --signoff
curl --silent http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc8-wily/0002-debian-changelog.patch | git am --signoff
curl --silent http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc8-wily/0003-configs-based-on-Ubuntu-4.4.0-1.12.patch | git am --signoff
fakeroot debian/rules clean
for i in debian.master/d-i/kernel-versions.in debian.master/control.stub.in; do \
new=`echo $i | sed 's/\.in$//'`; \
cat $i | sed -e 's/PKGVER/4.4.0/g' \
-e 's/ABINUM/040400rc8/g' \
-e 's/SRCPKGNAME/linux/g' \
-e 's/=HUMAN=/64 bit x86/g' \
> $new; \
done
...
# Install the copyright information.
cp debian.master/copyright debian/copyright
# If we have a reconstruct script use it.
[ -f debian.master/reconstruct ] && bash -x debian.master/reconstruct
+ '[' '!' -L ubuntu/vbox/vboxguest/include ']'
+ ln -sf ../include ubuntu/vbox/vboxguest/include
ln: failed to create symbolic link 'ubuntu/vbox/vboxguest/include': No such file or directory
+ '[' '!' -L ubuntu/vbox/vboxguest/r0drv ']'
+ ln -sf ../r0drv ubuntu/vbox/vboxguest/r0drv
ln: failed to create symbolic link 'ubuntu/vbox/vboxguest/r0drv': No such file or directory
+ '[' '!' -L ubuntu/vbox/vboxsf/include ']'
+ ln -sf ../include ubuntu/vbox/vboxsf/include
ln: failed to create symbolic link 'ubuntu/vbox/vboxsf/include': No such file or directory
+ '[' '!' -L ubuntu/vbox/vboxsf/r0drv ']'
+ ln -sf ../r0drv ubuntu/vbox/vboxsf/r0drv
ln: failed to create symbolic link 'ubuntu/vbox/vboxsf/r0drv': No such file or directory
+ '[' '!' -L ubuntu/vbox/vboxvideo/include ']'
+ ln -sf ../include ubuntu/vbox/vboxvideo/include
ln: failed to create symbolic link 'ubuntu/vbox/vboxvideo/include': No such file or directory
+ '[' '!' -L spl/rpm/redhat/spl-dkms.spec.in ']'
+ cd spl/rpm/redhat
debian.master/reconstruct: line 9: cd: spl/rpm/redhat: No such file or directory
+ ln -sf ../generic/spl-dkms.spec.in
+ '[' '!' -L spl/rpm/redhat/spl.spec.in ']'
+ cd spl/rpm/redhat
debian.master/reconstruct: line 10: cd: spl/rpm/redhat: No such file or directory
+ ln -sf ../generic/spl.spec.in
+ '[' '!' -L zfs/rpm/redhat/zfs-dkms.spec.in ']'
+ cd zfs/rpm/redhat
debian.master/reconstruct: line 12: cd: zfs/rpm/redhat: No such file or directory
+ ln -sf ../generic/zfs-dkms.spec.in
+ '[' '!' -L zfs/rpm/redhat/zfs.spec.in ']'
+ cd zfs/rpm/redhat
debian.master/reconstruct: line 13: cd: zfs/rpm/redhat: No such file or directory
+ ln -sf ../generic/zfs.spec.in
+ '[' '!' -L zfs/cmd/zed/zed.d/checksum-notify.sh ']'
+ cd zfs/cmd/zed/zed.d
debian.master/reconstruct: line 14: cd: zfs/cmd/zed/zed.d: No such file or directory
+ ln -sf io-notify.sh checksum-notify.sh
+ '[' '!' -L zfs/cmd/zed/zed.d/checksum-spare.sh ']'
+ cd zfs/cmd/zed/zed.d
debian.master/reconstruct: line 15: cd: zfs/cmd/zed/zed.d: No such file or directory
+ ln -sf io-spare.sh checksum-spare.sh
+ '[' '!' -L zfs/cmd/zed/zed.d/data-notify.sh ']'
+ cd zfs/cmd/zed/zed.d
debian.master/reconstruct: line 16: cd: zfs/cmd/zed/zed.d: No such file or directory
+ ln -sf io-notify.sh data-notify.sh
+ '[' '!' -L zfs/cmd/zed/zed.d/resilver.finish-notify.sh ']'
+ cd zfs/cmd/zed/zed.d
debian.master/reconstruct: line 17: cd: zfs/cmd/zed/zed.d: No such file or directory
+ ln -sf scrub.finish-notify.sh resilver.finish-notify.sh
+ '[' '!' -L zfs/scripts/zpios-test/large-thread-survey.sh ']'
+ cd zfs/scripts/zpios-test
debian.master/reconstruct: line 18: cd: zfs/scripts/zpios-test: No such file or directory
+ ln -sf 1x256th-65536rc-4rs-1cs-4off.sh large-thread-survey.sh
+ '[' '!' -L zfs/scripts/zpios-test/large.sh ']'
+ cd zfs/scripts/zpios-test
debian.master/reconstruct: line 19: cd: zfs/scripts/zpios-test: No such file or directory
+ ln -sf 256th-65536rc-4rs-1cs-4off.sh large.sh
+ '[' '!' -L zfs/scripts/zpios-test/medium.sh ']'
+ cd zfs/scripts/zpios-test
debian.master/reconstruct: line 20: cd: zfs/scripts/zpios-test: No such file or directory
+ ln -sf 16th-8192rc-4rs-1cs-4off.sh medium.sh
+ '[' '!' -L zfs/scripts/zpios-test/small.sh ']'
+ cd zfs/scripts/zpios-test
debian.master/reconstruct: line 21: cd: zfs/scripts/zpios-test: No such file or directory
+ ln -sf 4th-1024rc-4rs-1cs-4off.sh small.sh
+ '[' '!' -L zfs/scripts/zpios-test/tiny.sh ']'
+ cd zfs/scripts/zpios-test
debian.master/reconstruct: line 22: cd: zfs/scripts/zpios-test: No such file or directory
+ ln -sf 1th-16rc-4rs-1cs-4off.sh tiny.sh
+ exit 0
如果我跳過清理步驟並嘗試使用fakeroot debian/rules binary-headers binary-generic
它進行構建,那麼在嘗試構建 SPL/ZFS 時將會失敗。
$ fakeroot debian/rules binary-headers binary-generic
...
IHEX firmware/cpia2/stv0672_vp4.bin
IHEX firmware/yam/1200.bin
IHEX firmware/yam/9600.bin
make[2]: Leaving directory `/home/user/Workspace/mainline-crack/debian/build/build-generic'
make[1]: Leaving directory `/home/user/Workspace/mainline-crack'
#
# SPL/ZFS wants a fully built kernel before you can configure and build.
# It seems to be impossible to tease out the application configuration
# from the modules, but at least one can build just the modules.
#
install -d /home/lucasmagasweran/Workspace/mainline-crack/debian/build/build-generic/spl
rsync -a --exclude=dkms.conf --delete spl/ /home/user/Workspace/mainline-crack/debian/build/build-generic/spl/
rsync: change_dir "/home/user/Workspace/mainline-crack//spl" failed: No such file or directory (2)
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1183) [sender=3.1.0]
make: *** [/home/user/Workspace/mainline-crack/debian/stamps/stamp-build-generic] Error 23
但是,可以透過註解掉或[1]do_zfs = true
中的行來解決此問題。debian.master/rules.d/amd64.mk
sed -i "s/do_zfs),false/do_zfs),true/g" debian/rules.d/2-binary-arch.mk
[1]http://ubuntuforums.org/showthread.php?t=2301071&page=16&p=13411241#post13411241