问题描述
在makefile
里面 已经指定 -L XX
和 -l xx
,依然报找不到.so
。ldd a.out
,发现是能找到动态库的,但是执行需要加sudo
权限。这时候sudo ldd a.out
果然报找不到动态库。
原因
在.bashrc
添加动态库路径依然不行,因为sudo启动的程序不会用到.bashrc
中的配置(迷惑)。
两种解决办法:
sudo env LD_LIBRARY_PATH=/opt/arm/armpl_22.0.1_gcc-8.2/lib ./a.out
- 在
/etc/environment
文件中添加LD_LIBRARY_PATH="/opt/arm/armpl_22.0.1_gcc-8.2/lib"