Linux系统下使用swig编译提示找不到-lXX的问题

使用swig编译过程中提示找不到-lXX的问题

前言

  • 最近使用Linux系统进行swig的编译时遇到了一些问题,在查阅了各种资料再加上本人的摸索后终于解决了这个问题,所以在此分享一下相关经验,希望能帮到你
  • 问题描述:
    /usr/bin/ld: 找不到 -lXX
  • 以下是具体问题:
/usr/bin/ld: 找不到-lf77blas
/usr/bin/ld: 找不到-lcblas
/usr/bin/ld: 找不到-llapack
/usr/bin/ld: 找不到-latlas

1.首先确认系统上是否安装了该库

root权限运行以下程序:

 find /usr/lib -name *xx*

比如/usr/bin/ld: cannot find -lm 这个问题是缺少数学库,在/usr/lib里找下有没有这个库,命令如下:

find /usr/lib -name *libm*

如果系统上安装了该库,但位置不在/usr/lib 下,比如位置如下:

/usr/lib/x86_64-redhat-linux5E/lib64/libm.so

然后建立一个软链接即可:

ln -sv  /usr/lib/x86_64-redhat-linux5E/lib64/libm.so  /usr/lib/libm.so

2.若系统中没有安装该库

首先安装apt-file并更新源:

sudo apt-get install apt-file
apt-file update

然后搜索libXX.so文件:(apt-file 将列出所有包含libXX.so文件的apt包)

apt-file search libXX.so

比如说提示/usr/bin/ld: 找不到-llapack,则使用apt-file search liblapack.so搜索相关apt包,选择带有dev的apt包安装
安装命令:

sudo apt-get install liblapack-dev

安装完成即可解决该问题,其余问题按照这个方法解决。

最后完美解决/usr/bin/ld: 找不到 -lXX的问题~~

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值