![构建 ubuntu-kernel-test mainline-crack v4.4 内核清理失败](https://linux22.com/image/1086773/%E6%9E%84%E5%BB%BA%20ubuntu-kernel-test%20mainline-crack%20v4.4%20%E5%86%85%E6%A0%B8%E6%B8%85%E7%90%86%E5%A4%B1%E8%B4%A5.png)
fakeroot debian/rules clean
ubuntu/
在构建 Ubuntu 内核团队的 Linus v4.4-rc8 上游分支时,由于缺少目录,步骤失败。
除了这三个补丁之外,还有其他补丁吗?http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.4-rc8-wily/在构建说明之前需要执行的附加步骤https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel可以使用吗?
我认为这些错误不能被忽略,因为 Tim Gardner 提出了一个修复程序“[Config] Fix bogus reconstruct script”,它明确地更改了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