g++来进行编译的头文件路径问题

Linux中用 g++ 来对 .cpp文件进行编译的时候,当头文件不在系统默认的 /usr/local/include/ 中时,需要为其指定路径。有如下几种方法。

方法1、在进行编译时用 -l 选项来指定路径:

# /path/to/eigen/ 为eigen头文件的路径所在。
g++ -I /path/to/eigen/ my_program.cpp -o my_program 

方法2、通过环境变量来设置,这样就可以不需要在g++ 中来指定了

export CPLUS_INCLUDE_PATH=/path/to/eigen/
g++  my_program.cpp -o my_program

方法3、将eigen头文件建立软连接到 /usr/local/include/ 目录下:

sudo cp  /path/eigen/*.h  /usr/local/include/*.h
或者
sudo ln -s  /path/eigen/*.h  /usr/local/include/*.h

然后在编译即可:
g++ my_program.cpp -o my_program 

方法4、利用cmake来进行编译:

# 在 CMakeLists.txt 文件中添加头文件搜索路径:
include_directories(/path/to/eigen/)

猜你喜欢

转载自blog.csdn.net/Jeffxu_lib/article/details/86245281
今日推荐