使用场景

当你在程序中加入一个非gcc默认搜索路径上的一个.h头文件时,会报错“No such file”,当你的程序需要动态链接一个.so库时,在默认路径里找不到该库,也会报错。那么,如何解决这两种问题呢?

gcc编译使用“-I”选项

当头文件非标准头文件或者不在当前目录下时(比如在/usr/local/somedir/include下),编译时按如下方式操作:gcc mytest -I/usr/local/somedir/include mytest.c

添加动态链接库到系统目录

比如.so库在/usr/local/somedir/lib下,那么就做如下操作:
sudo vim /etc/ld.so.conf
添加/usr/local/somedir/lib一行语句
sudo ldconfig

gcc 完整编译选项

gcc mytest -I/usr/local/somedir/include mytest.c -L/usr/local/somedir/lib -ldb

Logo

更多推荐