我该如何确定Ubuntu Linux的库路径?也就是说,当链接我的程序时,链接器如何知道去哪里获取目标文件?
请查看 /etc/ld.so.conf
和 /etc/ld.so.conf.d/
目录中的文件 -- 那里设置了它。
-L
参数和环境变量LD_LIBRARY_PATH
在链接时显式设置。-L
参数。您可以使用以下命令查看这些路径:gcc -Xlinker -v
/lib
,/usr/lib
),您可以使用编译器标志指定位置。对于 g++
,使用 -L/some/path/lib
。如果使用 autotools,则可以使用 LDFLAGS=-L/some/path/lib
进行配置以获取特定路径。如果为该项目正确设计了 configure,则应具有 --with-some-library=PATH
选项,您也可以在其中仅指定该库的路径。在链接时,需要指定 -L 标志来指示库的位置。运行时,动态链接器使用 "/etc/ld.so.conf"、"/etc/ld.so.conf.d/*" 和 LD_LIBRARY_PATH 的值中给定的路径。
sudo ldconfig
"更新系统缓存,如果您刚刚安装了一些新软件。