20114016039 发表于 2012-5-3 14:22:58

请问高手,这个编译提示的错误是怎么一回事?

本帖最后由 20114016039 于 2012-5-3 14:29 编辑

# make
arm-linux-gcc recognise.c -o recognise -DMODELDIR=\ "/usr/local/share/pocketsphinx/model \ "-I/usr/local/include -I/usr/local/include/sphinxbase -I/usr/local/include/pocketsphinx-L/usr/local/lib -lpocketsphinx -lsphinxbase -lsphinxad
/usr/local/arm/4.5.1/bin/../lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/bin/ld: skipping incompatible /usr/local/lib/libpocketsphinx.so when searching for -lpocketsphinx
/usr/local/arm/4.5.1/bin/../lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/bin/ld: skipping incompatible /usr/local/lib/libpocketsphinx.a when searching for -lpocketsphinx
/usr/local/arm/4.5.1/bin/../lib/gcc/arm-none-linux-gnueabi/4.5.1/../../../../arm-none-linux-gnueabi/bin/ld: cannot find -lpocketsphinx
collect2: ld returned 1 exit status
make: *** Error 1
#

那个-lpocketshpinx其实这只是 一个lib的路径呀,怎么说是找不到呢,像我用gcc的话,就可以找到相关的路径 !!!
在pc机上的linux 用gcc去编译就是很正常,可是用arm-linux-gcc就报错,错误如上!请高手指点迷津 ~谢谢

20114016039 发表于 2012-5-3 14:28:13

用gcc编译的结果是这样的:
# make
gcc recognise.c -o recognise -DMODELDIR=\ "/usr/local/share/pocketsphinx/model \ "-I/usr/local/include -I/usr/local/include/sphinxbase -I/usr/local/include/pocketsphinx-L/usr/local/lib -lpocketsphinx -lsphinxbase -lsphinxad
#

dragon_hn 发表于 2012-5-3 15:10:13

下面的指定库文件路径:
L/usr/local/lib
下面的是指定库文件:
-lpocketsphinx

根据你的编译结果显示:找不到lpocketsphinx这个库文件.
另外arm-linux-gcc与gcc不能用同一个库文件.
arm-linux-gcc必须用相应的arm-gcc版的库文件.

20114016039 发表于 2012-5-3 15:25:57

dragon_hn 发表于 2012-5-3 15:10 static/image/common/back.gif
下面的指定库文件路径:
L/usr/local/lib
下面的是指定库文件:


arm-linux-gcc与gcc不能用同一个库文件.

也就是说我要去找一个与arm-linux-gc版本相对的库文件,gcc所用的库arm-linux-gcc不能用

那有没有办法能让arm-linux-gcc用上PC机的库呢?
页: [1]
查看完整版本: 请问高手,这个编译提示的错误是怎么一回事?