当前位置: 技术问答>linux和unix
linux 内核编译问题
来源: 互联网 发布时间:2016-02-24
本文导语: 在Ubuntu 6.10 上编译2.7.17.10内核时,先是make menuconfig,接着是make时遇到下面的问题,达人帮看看,谢谢! ########################### CC [M] lib/ts_fsm.o LD arch/i386/lib/built-in.o CC arch/i386/lib/bitops.o A...
在Ubuntu 6.10 上编译2.7.17.10内核时,先是make menuconfig,接着是make时遇到下面的问题,达人帮看看,谢谢!
###########################
CC [M] lib/ts_fsm.o
LD arch/i386/lib/built-in.o
CC arch/i386/lib/bitops.o
AS arch/i386/lib/checksum.o
CC arch/i386/lib/delay.o
AS arch/i386/lib/getuser.o
CC arch/i386/lib/memcpy.o
AS arch/i386/lib/putuser.o
CC arch/i386/lib/strstr.o
CC arch/i386/lib/usercopy.o
AR arch/i386/lib/lib.a
GEN .version
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
init/built-in.o: In function `try_name':
do_mounts.c:(.text+0x5e3):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `name_to_dev_t':
(.text+0x8cb):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `change_floppy':
(.init.text+0xa11):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `mount_block_root':
(.init.text+0xca7):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `do_header':
initramfs.c:(.init.text+0x4343):对‘__stack_chk_fail’未定义的引用
arch/i386/kernel/built-in.o:(.text+0x54c6): more undefined references to `__stack_chk_fail' follow
make: *** [.tmp_vmlinux1] 错误 1
###########################
前面的过程挺好,就是到了后面才出现这个,google了一下发现也有人遇到相同的问题,可是都没有人能解答。
不知这里的能否有人能解答。
###########################
CC [M] lib/ts_fsm.o
LD arch/i386/lib/built-in.o
CC arch/i386/lib/bitops.o
AS arch/i386/lib/checksum.o
CC arch/i386/lib/delay.o
AS arch/i386/lib/getuser.o
CC arch/i386/lib/memcpy.o
AS arch/i386/lib/putuser.o
CC arch/i386/lib/strstr.o
CC arch/i386/lib/usercopy.o
AR arch/i386/lib/lib.a
GEN .version
CHK include/linux/compile.h
UPD include/linux/compile.h
CC init/version.o
LD init/built-in.o
LD .tmp_vmlinux1
init/built-in.o: In function `try_name':
do_mounts.c:(.text+0x5e3):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `name_to_dev_t':
(.text+0x8cb):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `change_floppy':
(.init.text+0xa11):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `mount_block_root':
(.init.text+0xca7):对‘__stack_chk_fail’未定义的引用
init/built-in.o: In function `do_header':
initramfs.c:(.init.text+0x4343):对‘__stack_chk_fail’未定义的引用
arch/i386/kernel/built-in.o:(.text+0x54c6): more undefined references to `__stack_chk_fail' follow
make: *** [.tmp_vmlinux1] 错误 1
###########################
前面的过程挺好,就是到了后面才出现这个,google了一下发现也有人遇到相同的问题,可是都没有人能解答。
不知这里的能否有人能解答。
|
在顶层的Makefile里找到CFLAGS然后添加-fno-stack-protector标志!!!
其实这是传给GCC的一个编译选项,可以在4.0以后才有的吧!
还有尽可能不要用GCC 4.2来编译老的程序,4.2之后又有比较严格的C标准的验证,很麻烦~~
http://bigstone1982.spaces.live.com/blog/cns!75FB14EA53C4CD8C!804.entry
其实这是传给GCC的一个编译选项,可以在4.0以后才有的吧!
还有尽可能不要用GCC 4.2来编译老的程序,4.2之后又有比较严格的C标准的验证,很麻烦~~
http://bigstone1982.spaces.live.com/blog/cns!75FB14EA53C4CD8C!804.entry
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。