在 Linux 下用 C++ 开发时配置环境变量,通常分几种常见场景。下面按从常用到进阶给你说明,你可以按需看。
如果你编译出了可执行文件,比如 a.out 或 myapp,想在任何目录直接运行:
export PATH=$PATH:/your/app/path
示例:
export PATH=$PATH:$HOME/myproject/bin
关闭终端后失效
编辑用户环境变量文件:
vi ~/.bashrc
在末尾加:
export PATH=$PATH:$HOME/myproject/bin
保存后执行:
source ~/.bashrc
sudo vi /etc/profile
添加同样内容,然后:
source /etc/profile
编译时指定:
g++ main.cpp -I/usr/local/mylib/include
或设置环境变量(不常用):
export CPLUS_INCLUDE_PATH=/usr/local/mylib/include:$CPLUS_INCLUDE_PATH
g++ main.cpp -L/usr/local/mylib/lib -lmylib
或:
export LIBRARY_PATH=/usr/local/mylib/lib:$LIBRARY_PATH
如果程序运行时报:
error while loading shared libraries
需要设置:
export LD_LIBRARY_PATH=/usr/local/mylib/lib:$LD_LIBRARY_PATH
永久方式(推荐):
sudo vi /etc/ld.so.conf.d/mylib.conf
写入:
/usr/local/mylib/lib
然后:
sudo ldconfig
export MYLIB_ROOT=/opt/mylib
CMakeLists.txt:
include_directories($ENV{MYLIB_ROOT}/include)
link_directories($ENV{MYLIB_ROOT}/lib)
echo $PATH
echo $LD_LIBRARY_PATH
env
.bashrc 只对 bash 终端 生效LD_LIBRARY_PATH 不要滥用,生产环境推荐用 ldconfig如果你愿意,可以告诉我:
我可以直接给你对应的一份配置示例。