我如何将link这个动态-link库添加到程序中?
How do I link this dynamic-link library to the program?
我已经导出了
/home/username/mesa/lib
LD_LIBRARY_PATH
并尝试 link 库,但我不知道我编译程序时输入错误。
所以我尝试用 g++ 命令编译 testing.cpp,它说:
fatal error: osmesa.h: No such file or directory
#include <osmesa.h>
我想我输入了错误的命令。
我试过的命令:g++ testing.cpp -L/home/username/mesa/lib/libOSMesa.so -lmesa -s -Lmesa -lOSMesa -lGLU
testin.cpp 的源代码:
#include <osmesa.h>
int main()
{
return 0;
}
旁边的库 /home/username/mesa/lib
:
libOSMesa.la libOSMesa.so libOSMesa.so.8 libOSMesa.so.8.0.0
您还必须传递包含目录,使用 -I
编译器选项。
这是因为默认情况下,编译器不会在您的主目录中查找 headers(它会在 /usr/include 中查找系统安装的库)。
我已经导出了
/home/username/mesa/lib
LD_LIBRARY_PATH
并尝试 link 库,但我不知道我编译程序时输入错误。
所以我尝试用 g++ 命令编译 testing.cpp,它说:
fatal error: osmesa.h: No such file or directory
#include <osmesa.h>
我想我输入了错误的命令。
我试过的命令:g++ testing.cpp -L/home/username/mesa/lib/libOSMesa.so -lmesa -s -Lmesa -lOSMesa -lGLU
testin.cpp 的源代码:
#include <osmesa.h>
int main()
{
return 0;
}
旁边的库 /home/username/mesa/lib
:
libOSMesa.la libOSMesa.so libOSMesa.so.8 libOSMesa.so.8.0.0
您还必须传递包含目录,使用 -I
编译器选项。
这是因为默认情况下,编译器不会在您的主目录中查找 headers(它会在 /usr/include 中查找系统安装的库)。