【问题】
折腾:
【记录】cygwin下在针对arm920t去ct-ng menuconfig配置后去ct-ng build去编译
期间,编译出错:
Administrator@PC-20130611GART /home/develop/crosstool-ng/crosstool-ng-1.18.0_build $ ct-ng build [INFO ] Performing some trivial sanity checks [INFO ] Build started 20130907.151853 [INFO ] Building environment variables [EXTRA] Preparing working directories [EXTRA] Installing user-supplied crosstool-NG configuration [EXTRA] ================================================================= [EXTRA] Dumping internal crosstool-NG configuration [EXTRA] Building a toolchain for: [EXTRA] build = i686-pc-cygwin [EXTRA] host = i686-pc-cygwin [EXTRA] target = arm-arm920t-linux-gnueabi [EXTRA] Dumping internal crosstool-NG configuration: done in 0.89s (at 00:36) [INFO ] ================================================================= [INFO ] Retrieving needed toolchain components' tarballs [EXTRA] Using 'linux-custom' from custom location [INFO ] Retrieving needed toolchain components' tarballs: done in 2.87s (at 00:40) [INFO ] ================================================================= [INFO ] Extracting, patching and installing companion tools [EXTRA] ================================================================= [EXTRA] Installing make [EXTRA] Installing make: done in 176.19s (at 03:37) [INFO ] Extracting, patching and installing companion tools: done in 177.08s (at 03:37) [INFO ] ================================================================= [INFO ] Extracting and patching toolchain components [EXTRA] Extracting 'binutils-2.20.1a' [EXTRA] Patching 'binutils-2.20.1a' [EXTRA] Extracting 'gcc-4.3.2' [EXTRA] Patching 'gcc-4.3.2' [EXTRA] Extracting 'eglibc-2_17' [EXTRA] Patching 'eglibc-2_17' [EXTRA] Extracting 'dmalloc-5.5.2' [EXTRA] Patching 'dmalloc-5.5.2' [EXTRA] Extracting 'duma_2_5_15' [EXTRA] Patching 'duma-2_5_15' [EXTRA] Extracting 'gdb-6.8a' [EXTRA] Patching 'gdb-6.8a' [EXTRA] Extracting 'ncurses-5.9' [EXTRA] Patching 'ncurses-5.9' [EXTRA] Extracting 'expat-2.1.0' [EXTRA] Patching 'expat-2.1.0' [EXTRA] Extracting 'ltrace-0.5.3' [EXTRA] Patching 'ltrace-0.5.3' [EXTRA] Extracting 'strace-4.5.19' [EXTRA] Patching 'strace-4.5.19' [INFO ] Extracting and patching toolchain components: done in 181.70s (at 06:39) [EXTRA] Saving state to restart at step 'libc_check_config'... [EXTRA] Saving state to restart at step 'companion_libs_for_build'... [EXTRA] Saving state to restart at step 'binutils_for_build'... [EXTRA] Saving state to restart at step 'companion_libs_for_host'... [INFO ] ================================================================= [INFO ] Installing GMP for host [EXTRA] Configuring GMP [EXTRA] Building GMP [EXTRA] Installing GMP [INFO ] Installing GMP for host: done in 1538.78s (at 32:23) [INFO ] ================================================================= [INFO ] Installing MPFR for host [EXTRA] Configuring MPFR [EXTRA] Building MPFR [EXTRA] Installing MPFR [INFO ] Installing MPFR for host: done in 260.82s (at 36:44) [EXTRA] Saving state to restart at step 'binutils_for_host'... [INFO ] ================================================================= [INFO ] Installing binutils for host [EXTRA] Configuring binutils [EXTRA] Building binutils [EXTRA] Installing binutils [INFO ] Installing binutils for host: done in 783.71s (at 49:50) [EXTRA] Saving state to restart at step 'cc_core_pass_1'... [INFO ] ================================================================= [INFO ] Installing pass-1 core C compiler [EXTRA] Configuring gcc [EXTRA] Building gcc [EXTRA] Installing gcc [INFO ] Installing pass-1 core C compiler: done in 1210.79s (at 70:05) [EXTRA] Saving state to restart at step 'kernel_headers'... [INFO ] ================================================================= [INFO ] Installing kernel headers [EXTRA] Installing kernel headers [EXTRA] Checking installed headers [ERROR] make[4]: *** [/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/linux/.check] Error 254 [ERROR] make[3]: *** [linux] Error 2 [ERROR] make[2]: *** [headers_check] Error 2 [ERROR] make[1]: *** [sub-make] Error 2 [ERROR] [ERROR] >> [ERROR] >> Build failed in step 'Installing kernel headers' [ERROR] >> called in step '(top-level)' [ERROR] >> [ERROR] >> Error happened in: CT_DoExecLog[scripts/functions@257] [ERROR] >> called from: do_kernel_install[scripts/build/kernel/linux.sh@122] [ERROR] >> called from: do_kernel_headers[scripts/build/kernel/linux.sh@91] [ERROR] >> called from: main[scripts/crosstool-NG.sh@632] Current command: 'make' '-C' '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' 'O=/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/build/build-kernel-headers' 'ARCH=arm' 'INSTALL_HDR_PATH=/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr' 'V=0' 'headers_check' exited with error code: 2 Please fix it up and finish by exiting the shell with one of these values: 1 fixed, continue with next build command 2 repeat this build command 3 abort build ct-ng:/home/develop/crosstool-ng/crosstool-ng-1.18.0_build>
如图:
即:
[ERROR] make[4]: *** [/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/linux/.check] Error 254
【解决过程】
1.去对应的build.log中看看:
[INFO ] ================================================================= [INFO ] Installing kernel headers [DEBUG] Using kernel's headers_install [EXTRA] Installing kernel headers [DEBUG] ==> Executing: 'make' '-C' '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' 'O=/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/build/build-kernel-headers' 'ARCH=arm' 'INSTALL_HDR_PATH=/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr' 'V=0' 'headers_install' [ALL ] make[1]: Entering directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [ALL ] CHK include/linux/version.h [ALL ] UPD include/linux/version.h [ALL ] HOSTCC scripts/basic/fixdep [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_config_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:244:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_dep_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:325:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'traps': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:377:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:379:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] HOSTCC scripts/basic/docproc [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'find_export_symbols': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:197:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:200:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:206:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:209:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'singfunc': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:277:17: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'parse_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:334:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:339:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:344:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:350:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:353:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:359:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:362:6: warning: array subscript has type 'char' [ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] INSTALL include/asm-generic (12 files) [ALL ] INSTALL include/drm (12 files) [ALL ] INSTALL include/linux/byteorder (2 files) [ALL ] INSTALL include/linux/can (3 files) [ALL ] INSTALL include/linux/dvb (8 files) [ALL ] INSTALL include/linux/hdlc (1 file) [ALL ] INSTALL include/linux/isdn (1 file) [ALL ] INSTALL include/linux/netfilter (57 files) [ALL ] INSTALL include/linux/netfilter_arp (2 files) [ALL ] INSTALL include/linux/netfilter_bridge (16 files) [ALL ] INSTALL include/linux/netfilter_ipv4 (46 files) [ALL ] INSTALL include/linux/netfilter_ipv6 (21 files) [ALL ] INSTALL include/linux/nfsd (6 files) [ALL ] INSTALL include/linux/raid (2 files) [ALL ] INSTALL include/linux/spi (1 file) [ALL ] INSTALL include/linux/sunrpc (1 file) [ALL ] INSTALL include/linux/tc_act (6 files) [ALL ] INSTALL include/linux/tc_ematch (4 files) [ALL ] INSTALL include/linux/usb (8 files) [ALL ] INSTALL include/linux/wimax (1 file) [ALL ] INSTALL include/linux (349 files) [ALL ] INSTALL include/mtd (6 files) [ALL ] INSTALL include/rdma (1 file) [ALL ] INSTALL include/sound (9 files) [ALL ] INSTALL include/video (3 files) [ALL ] INSTALL include (0 file) [ALL ] INSTALL include/asm (31 files) [ALL ] make[1]: Leaving directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [EXTRA] Checking installed headers [DEBUG] ==> Executing: 'make' '-C' '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' 'O=/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/build/build-kernel-headers' 'ARCH=arm' 'INSTALL_HDR_PATH=/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr' 'V=0' 'headers_check' [ALL ] make[1]: Entering directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [ALL ] CHK include/linux/version.h [ALL ] HOSTCC scripts/basic/fixdep [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_config_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:244:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_dep_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:325:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'traps': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:377:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:379:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] HOSTCC scripts/basic/docproc [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'find_export_symbols': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:197:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:200:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:206:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:209:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'singfunc': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:277:17: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'parse_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:334:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:339:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:344:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:350:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:353:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:359:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:362:6: warning: array subscript has type 'char' [ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] CHECK include/asm-generic (12 files) [ALL ] CHECK include/drm (12 files) [ALL ] CHECK include/linux/byteorder (2 files) [ALL ] CHECK include/linux/can (3 files) [ALL ] CHECK include/linux/dvb (8 files) [ALL ] CHECK include/linux/hdlc (1 files) [ALL ] CHECK include/linux/isdn (1 files) [ALL ] CHECK include/linux/netfilter (57 files) [ALL ] CHECK include/linux/netfilter_arp (2 files) [ALL ] CHECK include/linux/netfilter_bridge (16 files) [ALL ] CHECK include/linux/netfilter_ipv4 (46 files) [ALL ] CHECK include/linux/netfilter_ipv6 (21 files) [ALL ] CHECK include/linux/nfsd (6 files) [ALL ] CHECK include/linux/raid (2 files) [ALL ] CHECK include/linux/spi (1 files) [ALL ] CHECK include/linux/sunrpc (1 files) [ALL ] CHECK include/linux/tc_act (6 files) [ALL ] CHECK include/linux/tc_ematch (4 files) [ALL ] CHECK include/linux/usb (8 files) [ALL ] CHECK include/linux/wimax (1 files) [ALL ] CHECK include/linux (349 files) [ALL ] 1 [main] sh 7800 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 12068 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 11284 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 10612 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 93 [main] sh 5896 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: Resource temporarily unavailable [ERROR] make[4]: *** [/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/linux/.check] Error 254 [ERROR] make[3]: *** [linux] Error 2 [ERROR] make[2]: *** [headers_check] Error 2 [ERROR] make[1]: *** [sub-make] Error 2 [ALL ] make[1]: Leaving directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [ERROR] [ERROR] >> [ERROR] >> Build failed in step 'Installing kernel headers' [ERROR] >> called in step '(top-level)' [ERROR] >> [ERROR] >> Error happened in: CT_DoExecLog[scripts/functions@257] [ERROR] >> called from: do_kernel_install[scripts/build/kernel/linux.sh@122] [ERROR] >> called from: do_kernel_headers[scripts/build/kernel/linux.sh@91] [ERROR] >> called from: main[scripts/crosstool-NG.sh@632]
晕死,貌似是内存不够用?
但是很奇怪,当前共6G内存,目前才用了3.8G,还有好多呢。
2.试试重新执行当前命令:
exit 2
看看效果:
结果问题依旧:
[ALL ] HOSTCC scripts/unifdef [ALL ] CHECK include/linux (349 files) [ALL ] 0 [main] sh 10308 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 117 [main] sh 11996 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 6396 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 12012 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable [ALL ] 0 [main] sh 7284 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: Resource temporarily unavailable [ERROR] make[4]: *** [/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/linux/.check] Error 254
重新ct-ng build试试:
3.参考:
其办法是:
最后,我的解决的方法是,更换make.exe的运行兼容模式: “Run this program in compatibility mode for:” and choose “Windows XP (Service Pack 2 or |
但是,还是觉得奇怪:
之前另外一个cygwin中,都没有遇到这个问题。
4.不过,貌似或许的确是权限问题。但是不应该以这种办法解决才对。
另外参考:
说是要把cygwin的path路径设置为最小,而解决问题。
难道是:
路径中有空格等问题,导致此错误的???
5.对于上述解决办法,也在:
Re: Cygwin fork problem: abort: can’t commit memory for stack
中看到了。
且其是先是把path弄成只包含cygwin,就可以编译了。
而且是后来慢慢恢复到原先的path的值,结果也是可以编译了。
所以,还是很奇怪的,没找到根本原因。
6.后来看到:
make, PATH & "Win32 error 487"
大概看懂了意思:
fork一直不是100%成功的,和操作系统有关系;
从make fork出的第一个shell,和之后的subshell,基本没区别;
唯一区别就是:$PATH的值的size大小,影响到了forked的子进程,在主栈的位置
然后经过该人的修复,貌似此问题,已经解决了。
是放到了最新的http://cygwin.com/snapshots/中了。
7.所以,此处,去看看:
看到对应的:
|
然后,我此处的,虽然是x64的win7,但是之前是安装的x86的cygwin。
所以去下载对应的x86的cygwin的dll:
http://cygwin.com/snapshots/x86/cygwin1-20130830.dll.bz2
下载后,解压得到2.38M的
cygwin1-20130830.dll
然后,去把原先的:
2012/10/19的cygwin1.dll,重新改名,比如为cygwin1_dll_backup
再把cygwin1-20130830.dll改名为cygwin1.dll,放到对应位置:
然后,重新运行cygwin,确保正常可用:
然后就可以继续去编译试试了。
8.抽空再去ct-ng build,结果又出现另外的错误:
9.不过,去看了看对应的build.log,的确是解决问题了。
之前是:
[ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] INSTALL include/asm-generic (12 files) [ALL ] INSTALL include/drm (12 files) [ALL ] INSTALL include/linux/byteorder (2 files) [ALL ] INSTALL include/linux/can (3 files) [ALL ] INSTALL include/linux/dvb (8 files) [ALL ] INSTALL include/linux/hdlc (1 file) [ALL ] INSTALL include/linux/isdn (1 file) [ALL ] INSTALL include/linux/netfilter (57 files) [ALL ] INSTALL include/linux/netfilter_arp (2 files) [ALL ] INSTALL include/linux/netfilter_bridge (16 files) [ALL ] INSTALL include/linux/netfilter_ipv4 (46 files) [ALL ] INSTALL include/linux/netfilter_ipv6 (21 files) [ALL ] INSTALL include/linux/nfsd (6 files) [ALL ] INSTALL include/linux/raid (2 files) [ALL ] INSTALL include/linux/spi (1 file) [ALL ] INSTALL include/linux/sunrpc (1 file) [ALL ] INSTALL include/linux/tc_act (6 files) [ALL ] INSTALL include/linux/tc_ematch (4 files) [ALL ] INSTALL include/linux/usb (8 files) [ALL ] INSTALL include/linux/wimax (1 file) [ALL ] INSTALL include/linux (349 files) [ALL ] INSTALL include/mtd (6 files) [ALL ] INSTALL include/rdma (1 file) [ALL ] INSTALL include/sound (9 files) [ALL ] INSTALL include/video (3 files) [ALL ] INSTALL include (0 file) [ALL ] INSTALL include/asm (31 files) [ALL ] make[1]: Leaving directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [EXTRA] Checking installed headers [DEBUG] ==> Executing: 'make' '-C' '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' 'O=/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/build/build-kernel-headers' 'ARCH=arm' 'INSTALL_HDR_PATH=/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr' 'V=0' 'headers_check' [ALL ] make[1]: Entering directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [ALL ] CHK include/linux/version.h [ALL ] HOSTCC scripts/basic/fixdep [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_config_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:244:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_dep_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:325:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'traps': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:377:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:379:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] HOSTCC scripts/basic/docproc [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'find_export_symbols': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:197:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:200:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:206:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:209:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'singfunc': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:277:17: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'parse_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:334:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:339:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:344:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:350:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:353:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:359:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:362:6: warning: array subscript has type 'char' [ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] CHECK include/asm-generic (12 files) [ALL ] CHECK include/drm (12 files) [ALL ] CHECK include/linux/byteorder (2 files) [ALL ] CHECK include/linux/can (3 files) [ALL ] CHECK include/linux/dvb (8 files) [ALL ] CHECK include/linux/hdlc (1 files) [ALL ] CHECK include/linux/isdn (1 files) [ALL ] CHECK include/linux/netfilter (57 files) [ALL ] CHECK include/linux/netfilter_arp (2 files) [ALL ] CHECK include/linux/netfilter_bridge (16 files) [ALL ] CHECK include/linux/netfilter_ipv4 (46 files) [ALL ] CHECK include/linux/netfilter_ipv6 (21 files) [ALL ] CHECK include/linux/nfsd (6 files) [ALL ] CHECK include/linux/raid (2 files) [ALL ] CHECK include/linux/spi (1 files) [ALL ] CHECK include/linux/sunrpc (1 files) [ALL ] CHECK include/linux/tc_act (6 files) [ALL ] CHECK include/linux/tc_ematch (4 files) [ALL ] CHECK include/linux/usb (8 files) [ALL ] CHECK include/linux/wimax (1 files) [ALL ] CHECK include/linux (349 files) [ALL ] 1 [main] sh 7800 child_info_fork::abort: can't commit memory for stack 0x28A000(90112), Win32 error 487 [ALL ] /bin/sh: fork: retry: Resource temporarily unavailable
即,INSTALL后,去CHECK,然后没完成就出错了。
而此处是:
INSTALL后,CHECK完成了:
[ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] INSTALL include/asm-generic (12 files) [ALL ] INSTALL include/drm (12 files) [ALL ] INSTALL include/linux/byteorder (2 files) [ALL ] INSTALL include/linux/can (3 files) [ALL ] INSTALL include/linux/dvb (8 files) [ALL ] INSTALL include/linux/hdlc (1 file) [ALL ] INSTALL include/linux/isdn (1 file) [ALL ] INSTALL include/linux/netfilter (57 files) [ALL ] INSTALL include/linux/netfilter_arp (2 files) [ALL ] INSTALL include/linux/netfilter_bridge (16 files) [ALL ] INSTALL include/linux/netfilter_ipv4 (46 files) [ALL ] INSTALL include/linux/netfilter_ipv6 (21 files) [ALL ] INSTALL include/linux/nfsd (6 files) [ALL ] INSTALL include/linux/raid (2 files) [ALL ] INSTALL include/linux/spi (1 file) [ALL ] INSTALL include/linux/sunrpc (1 file) [ALL ] INSTALL include/linux/tc_act (6 files) [ALL ] INSTALL include/linux/tc_ematch (4 files) [ALL ] INSTALL include/linux/usb (8 files) [ALL ] INSTALL include/linux/wimax (1 file) [ALL ] INSTALL include/linux (349 files) [ALL ] INSTALL include/mtd (6 files) [ALL ] INSTALL include/rdma (1 file) [ALL ] INSTALL include/sound (9 files) [ALL ] INSTALL include/video (3 files) [ALL ] INSTALL include (0 file) [ALL ] INSTALL include/asm (31 files) [ALL ] make[1]: Leaving directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [EXTRA] Checking installed headers [DEBUG] ==> Executing: 'make' '-C' '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' 'O=/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/build/build-kernel-headers' 'ARCH=arm' 'INSTALL_HDR_PATH=/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr' 'V=0' 'headers_check' [ALL ] make[1]: Entering directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [ALL ] CHK include/linux/version.h [ALL ] HOSTCC scripts/basic/fixdep [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_config_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:244:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'parse_dep_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:325:4: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c: In function 'traps': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:377:2: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/fixdep.c:379:4: warning: dereferencing type-punned pointer will break strict-aliasing rules [ALL ] HOSTCC scripts/basic/docproc [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'find_export_symbols': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:197:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:200:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:206:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:209:5: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'singfunc': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:277:17: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c: In function 'parse_file': [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:334:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:339:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:344:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:350:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:353:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:359:6: warning: array subscript has type 'char' [ALL ] /home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom/scripts/basic/docproc.c:362:6: warning: array subscript has type 'char' [ALL ] HOSTCC scripts/basic/hash [ALL ] HOSTCC scripts/unifdef [ALL ] CHECK include/asm-generic (12 files) [ALL ] CHECK include/drm (12 files) [ALL ] CHECK include/linux/byteorder (2 files) [ALL ] CHECK include/linux/can (3 files) [ALL ] CHECK include/linux/dvb (8 files) [ALL ] CHECK include/linux/hdlc (1 files) [ALL ] CHECK include/linux/isdn (1 files) [ALL ] CHECK include/linux/netfilter (57 files) [ALL ] CHECK include/linux/netfilter_arp (2 files) [ALL ] CHECK include/linux/netfilter_bridge (16 files) [ALL ] CHECK include/linux/netfilter_ipv4 (46 files) [ALL ] CHECK include/linux/netfilter_ipv6 (21 files) [ALL ] CHECK include/linux/nfsd (6 files) [ALL ] CHECK include/linux/raid (2 files) [ALL ] CHECK include/linux/spi (1 files) [ALL ] CHECK include/linux/sunrpc (1 files) [ALL ] CHECK include/linux/tc_act (6 files) [ALL ] CHECK include/linux/tc_ematch (4 files) [ALL ] CHECK include/linux/usb (8 files) [ALL ] CHECK include/linux/wimax (1 files) [ALL ] CHECK include/linux (349 files) [ALL ] CHECK include/mtd (6 files) [ALL ] /home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/mtd/jffs2-user.h:21: extern's make no sense in userspace [ALL ] CHECK include/rdma (1 files) [ALL ] CHECK include/sound (9 files) [ALL ] CHECK include/video (3 files) [ALL ] CHECK include (0 files) [ALL ] CHECK include/asm (31 files) [ALL ] /home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/asm/hwcap.h:29: extern's make no sense in userspace [ALL ] make[1]: Leaving directory `/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/src/linux-custom' [INFO ] Installing kernel headers: done in 94.92s (at 64:20) [EXTRA] Saving state to restart at step 'libc_start_files'... [STATE] Saving environment and aliases [DEBUG] Saving '/home/develop/crosstool-ng/crosstool-ng-1.18.0_build/.build/arm-arm920t-linux-gnueabi/buildtools' [STATE] ./ [STATE] ./arm-arm920t-linux-gnueabi/ [STATE] ./arm-arm920t-linux-gnueabi/bin/ [STATE] ./arm-arm920t-linux-gnueabi/bin/ar [STATE] ./arm-arm920t-linux-gnueabi/bin/as [STATE] ./arm-arm920t-linux-gnueabi/bin/gcc.exe [STATE] ./arm-arm920t-linux-gnueabi/bin/ld [STATE] ./arm-arm920t-linux-gnueabi/bin/ld.bfd [STATE] ./arm-arm920t-linux-gnueabi/bin/strip [STATE] ./arm-arm920t-linux-gnueabi/include/ [STATE] ./arm-arm920t-linux-gnueabi/lib/ [STATE] ./bin/ [STATE] ./bin/arm-arm920t-linux-gnueabi-ar [STATE] ./bin/arm-arm920t-linux-gnueabi-as [STATE] ./bin/arm-arm920t-linux-gnueabi-cc.exe [STATE] ./bin/arm-arm920t-linux-gnueabi-cpp.exe [STATE] ./bin/arm-arm920t-linux-gnueabi-gcc-4.3.2.exe [STATE] ./bin/arm-arm920t-linux-gnueabi-gcc.exe [STATE] ./bin/arm-arm920t-linux-gnueabi-gccbug [STATE] ./bin/arm-arm920t-linux-gnueabi-gcov.exe [STATE] ./bin/arm-arm920t-linux-gnueabi-ld [STATE] ./bin/arm-arm920t-linux-gnueabi-ld.bfd [STATE] ./bin/arm-arm920t-linux-gnueabi-strip
所以,至少是解决了此处的问题,没有出现之前的:
1 [main] sh 7800 child_info_fork::abort: can’t commit memory for stack 0x28A000(90112), Win32 error 487 |
的问题的。
【总结】
此处,cygwin下编译crosstool-ng,在:
Installing kernel headers
阶段,出现:
[ERROR] make[4]: *** [/home/develop/crosstool-ng/x-tools/arm-arm920t-linux-gnueabi/arm-arm920t-linux-gnueabi/sysroot/usr/include/linux/.check] Error 254 |
对应的是错误时:
1 [main] sh 7800 child_info_fork::abort: can’t commit memory for stack 0x28A000(90112), Win32 error 487 |
其原因是:
cygwin本身有bug,导致fork会出错。
解决办法是:
把cygwin中/bin下面的那个cygwin1.dll,换成最新版本的即可。
最新版本的cygwin1.dll,可以去:
下载得到。
比如此刻,最新的是2013-08-30的,对应的地址是:
http://cygwin.com/snapshots/x86/cygwin1-20130830.dll.bz2
下载后,解压,改名为cygwin1.dll,替换掉旧的cygwin1.dll,就可以了。
转载请注明:在路上 » 【已解决】cygwin下编译crosstool-ng出错:make Error 254,1 [main] sh 7800 child_info_fork::abort: can’t commit memory for stack 0x28A000(90112), Win32 error 487