GCC连接共享库的问题

3

我尝试链接刚刚在我的系统上安装的共享库,但由于某种原因,输出结果无法执行。这是我的编译命令:

gcc -o test test.c -lgpio

运行输出时,我遇到了以下错误:

./test: error while loading shared libraries: libgpio-3.0.0.so.3: cannot open shared object file: No such file or directory

这很奇怪,因为我在我的/usr/local/lib文件夹中有这个完全相同的文件(还有libgpio-3.0.0.so和其他共享库文件)。我对GCC没有太多经验,所以可以有人请解释一下出了什么问题吗?

1个回答

2

你的库文件夹可能不在默认搜索路径中。编译时,你需要使用-L选项来指定它:

gcc -L /usr/local/lib-folder -o test test.c -lgpio

当您运行程序时,还需要将此文件夹添加到LD_LIBRARY_PATH环境变量中。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接