先说一般情况我们在使用动态库的时候:
往往会涉及几个参数:
-L 库路径
-l(小写L)库名(不含lib .so)
-I(大写i) 头文件路径
-o 输出文件名
例: 头文件在当前Include目录下 ,库文件libMyLib.so在SharedLib目录下 编译test.cpps生成test
g++ -I ./Include test.cpp -L ./SharedLib/ -l MyLib -o test
可是这样往往只生成了可执行文件 test,当我们执行时报错:找不到依赖的库libMyLib.so
这时我们一般会先解决连接库的问题:
解决方式: 将自定义库写入标准库不推荐
【1】 通过环境变量: export LD_LIBRARY_PATH=动态库路径
./a.out 成功!!! (临时生效, 终端重启环境变量