在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 6965|回复: 0

undefined reference to `xxxx' 的编译错误

[复制链接]
发表于 2005-6-28 04:49:25 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
我最近用xilinx的EDK做一个microblaze的嵌入式系统,为了在FPGA上测试一个用c写的software application.现在我已经用Xilinx的SDK将这个software application的所有源文件导入(包括.c和.h文件),并且配置好路径.compile这一步已经没有问题,但在linker这一步出现了如下undefined reference to `xxxx' 的错误。我查找了一些资料,觉得是因为少了相应的库文件。我通过windows的search功能找到含有`xxxx'的库文件,并用-l,-L的参数加入。但试了多次还是出现这些错误。Linker过程如下:
Building target: sphinxproj3.elf
mb-gcc -LC:/zhangming/xpsproject/microblaze_0/lib -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\lib\gcc\microblaze\3.4.1" -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\lib" -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\microblaze\lib" -L"C:\zhangming\lib" -osphinxproj3.elf src/agc.o src/approx_cont_mgau.o src/ascr.o src/bio.o src/bitvec.o src/case.o src/ckd_alloc.o src/classify.o src/cmd_ln.o src/cmn.o src/cmn_prior.o src/cont_ad_base.o src/cont_mgau.o src/corpus.o src/dict.o src/dict2pid.o src/endptr.o src/err.o src/fast_algo_struct.o src/fe.o src/fe_interface.o src/fe_sigproc.o src/feat.o src/filename.o src/fillpen.o src/genrand.o src/glist.o src/gs.o src/hash.o src/heap.o src/hmm.o src/info.o src/interp.o src/io.o src/kb.o src/kbcore.o src/lextree.o src/linklist.o src/live_decode_API.o src/live_decode_args.o src/lm.o src/lmclass.o src/logs3.o src/mdef.o src/misc.o src/mllr.o src/ms_gauden.o src/ms_mllr.o src/ms_senone.o src/mulaw_base.o src/nextword.o src/profi/cygdrive/c/xilinx_EDK7.1/gnu/microblaze/nt/bin/../lib/gcc/microblaze/3.4.1/../../../../microblaze/lib/crt0.o: In function `_start1':
/cygdrive/c/xilinx_EDK7.1/gnu/microblaze/nt/bin/../lib/gcc/microblaze/3.4.1/../../../../microblaze/lib/crt0.o(.text+0xdc): undefined reference to `main'
src/ckd_alloc.o: In function `__ckd_calloc__':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/ckd_alloc.c:94: undefined reference to `calloc'
src/ckd_alloc.o: In function `__ckd_realloc__':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/ckd_alloc.c(.text+0x15c): undefined reference to `realloc'
src/classify.o: In function `classw_initialize':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/classify.c(.text+0x248): undefined reference to `calloc'
src/cont_ad_base.o: In function `cont_ad_init':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/cont_ad_base.c(.text+0x2b90): undefined reference to `calloc'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/cont_ad_base.c(.text+0x2bf8): undefined reference to `calloc'
src/corpus.o: In function `ctl_process_utt':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/corpus.c(.text+0x2a7c): undefined reference to `sleep'
src/endptr.o: In function `endpointer_initialize':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/endptr.c:55: undefined reference to `calloc'
src/fe.o: In function `fe_convert_files':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/fe.c:132: undefined reference to `calloc'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/fe.c:155: undefined reference to `calloc'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/fe.c:226: undefined reference to `calloc'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/fe.c:254: undefined reference to `calloc'
src/fe.o(.text+0x10e0):/cygdrive/c/zhangming/xpsple.o src/str2words.o src/subvq.o src/tmat.o src/unlimit.o src/utt.o src/vector.o src/vithist.o src/wid.o       -lxil -lgcc
roject/SDK_projects/sphinxproj3/Debug/../src/fe.c: more undefined references to `calloc' follow
src/info.o: In function `print_appl_info':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/info.c:49: undefined reference to `gethostname'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/info.c:51: undefined reference to `getcwd'
src/io.o: In function `fread_retry':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/io.c(.text+0x7ac): undefined reference to `sleep'
src/io.o: In function `stat_retry':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/io.c(.text+0x87c): undefined reference to `sleep'
src/profile.o: In function `ptmr_start':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/profile.c(.text+0x254): undefined reference to `getrusage'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/profile.c(.text+0x2cc): undefined reference to `gettimeofday'
src/profile.o: In function `ptmr_stop':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/profile.c(.text+0x33c): undefined reference to `getrusage'
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/profile.c(.text+0x3dc): undefined reference to `gettimeofday'
src/utt.o: In function `utt_end':
/cygdrive/c/zhangming/xpsproject/SDK_projects/sphinxproj3/Debug/../src/utt.c(.text+0xaa4): undefined reference to `getcwd'
C:/zhangming/xpsproject/microblaze_0/lib/libc.a(popen.o): In function `popen':
popen.o(.text+0xac): undefined reference to `pipe'
popen.o(.text+0xbc): undefined reference to `vfork'
popen.o(.text+0x1f0): undefined reference to `_exit'
popen.o(.text+0x208): undefined reference to `dup2'
popen.o(.text+0x22c): undefined reference to `dup2'
C:/zhangming/xpsproject/microblaze_0/lib/libc.a(popen.o): In function `pclose':
popen.o(.text+0x2bc): undefined reference to `waitpid'
C:/zhangming/xpsproject/microblaze_0/lib/libc.a(execl.o): In function `execl':
execl.o(.text+0x48): undefined reference to `_execve'
C:/zhangming/xpsproject/microblaze_0/lib/libc.a(fdopen.o): In function `_fdopen_r':
fdopen.o(.text+0x3c): undefined reference to `fcntl'
C:/zhangming/xpsproject/microblaze_0/lib/libc.a(fdopen.o): In function `fdopen':
fdopen.o(.text+0x1ac): undefined reference to `fcntl'
collect2: ld returned 1 exit status
make: *** [sphinxproj3.elf] Error 1
Build complete for project sphinxproj3
另如果我在SDK中设定linker flag, -Wl,-T -Wl,../LinkScr1,连接到一个linker script文件,编译连接后上面的错误都没了,只有一个错误: ld.real: cannot open linker script file ../LinkScr1: No such file or directory
collect2: ld returned 1 exit status
这真让我大惑不解,如果没连上这个linker script文件,为什么上面的错误会消失呢,究竟错误的原因出在哪?还望大侠们不吝赐教,小弟将万分感激!!!带linker flag的inker过程如下:
Building target: sphinxproj3.elf
mb-gcc -LC:/zhangming/xpsproject/microblaze_0/lib -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\lib\gcc\microblaze\3.4.1" -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\lib" -L"C:\xilinx_EDK7.1\gnu\microblaze\nt\microblaze\lib" -L"C:\zhangming\lib" -Wl,-T -Wl,../LinkScr1 -osphinxproj3.elf src/agc.o src/approx_cont_mgau.o src/ascr.o src/bio.o src/bitvec.o src/case.o src/ckd_alloc.o src/classify.o src/cmd_ln.o src/cmn.o src/cmn_prior.o src/cont_ad_base.o src/cont_mgau.o src/corpus.o src/dict.o src/dict2pid.o src/endptr.o src/err.o src/fast_algo_struct.o src/fe.o src/fe_interface.o src/fe_sigproc.o src/feat.o src/filename.o src/fillpen.o src/genrand.o src/glist.o src/gs.o src/hash.o src/heap.o src/hmm.o src/info.o src/interp.o src/io.o src/kb.o src/kbcore.o src/lextree.o src/linklist.o src/live_decode_API.o src/live_decode_args.o src/lm.o src/lmclass.o src/logs3.o src/mdef.o src/misc.o src/mllr.o src/ms_gauden.o src/ms_mllr.o src/ms_senone.o src/mulaw_base.o src/nextword.o src/profile.o src/s/cygdrive/c/xilinx_EDK7.1/gnu/microblaze/nt/bin/../lib/gcc/microblaze/3.4.1/../../../../microblaze/bin/ld.real: cannot open linker script file ../LinkScr1: No such file or directory
collect2: ld returned 1 exit status
make: *** [sphinxproj3.elf] Error 1
tr2words.o src/subvq.o src/tmat.o src/unlimit.o src/utt.o src/vector.o src/vithist.o src/wid.o       -lxil -lgcc
Build complete for project sphinxproj3
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-5-27 05:38 , Processed in 0.030525 second(s), 13 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表