/usr/bin/ld: cannot find -lxxx解决方法之一

makefile遇到问题:

g++ -Wall -fpermissive -o Demo_asr MT_SCYApp.o test_iat.o test_itr.o test_tts.o test_nlp.o -I./ -L./ -ldl -ltic -lthai
/usr/bin/ld: cannot find -lthai
collect2: error: ld returned 1 exit status
make: *** [Demo_asr] Error 1

我的makefile中的-L路径没有错,/usr/lib64/目录下也有相应的libxxx.so.xx文件,链接也有

$ ls -l libthai.so.0
lrwxrwxrwx. 1 root root 16 Jul  4  2016 libthai.so.0 -> libthai.so.0.1.4

最后只可能是链接有问题了
尝试其他库之后,总结规律发现是链接的名称libthai.so.0不对,凡是链接名称是libxxx.so的都可以找到,链接名称是libxxx.so.xx的都无法找到,所以链接名称libxxx.so后面不能加版本号。
解决方法就是在usr/lib64/中创建链接

$ sudo ln -s libthai.so.0 libthai.so

再make就能找到这个库了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值