程序运行时,提示找不到库。
原因:默认运行加载的库路径为 /usr/lib
2 解决方法
2.1 方法一,设置PATH环境变量
如何在加入这些路径呢?以PATH变量为例。
一种方法是:直接在命令行下:
PATH="PATH="PATH:/path/to/your/bin:/another/path/to/bin”
$ export PATH
这种方法的好处是方便,立即生效,缺点是把当前会话或shell关了之后就失效了,下次还得运行一遍。
2.2 方法二, 修改makefile,直接指定路径
另一种方法是:makefile 中增加运行程序的库文件路径
LDFLAGS+= -Wl,-Bstatic -lbt
LDFLAGS+= -Wl,-rpath=/opt/lib/
LDDIR+=-Lhost/libbt/lib
CC=/opt/toolchain/arm-2012.03/bin/arm-none-linux-gnueabi-gcc
编译指令:
(CC)(CC)(LDDIR) -o @@^ $(LDFLAGS)
当程序运行提示找不到库时,可以通过两种方法解决。方法一是设置PATH环境变量,但需每次新开会话重新设置。方法二是修改makefile,直接指定库路径,如添加-L参数。此外,介绍了makefile中CFLAGS和LDFLAGS的作用,LDFLAGS用于指定库文件位置,CFLAGS用于指定头文件路径。
订阅专栏 解锁全文
2253

被折叠的 条评论
为什么被折叠?



