编译参数中如何包含头文件和动态链接库

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
实时数仓Hologres,5000CU*H 100GB 3个月
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: GCC编译参数:如何包含头文件和动态链接库

以上一个代码实例gdal计算NDVI为例:
如何在Linux下使用gcc进行编译?
(顺便说一下,上次的代码只能在gdal1下编译,因为gdal2和1的API稍微有些改动)
gdal的动态链接库如果采用默认的安装方式应该在/usr/local/lib目录下面,而头文件在/usr/include/gdal目录下面。
那么,我们的编译命令应该是这样的:g++ NDVI.cpp -std=c++11 -I/usr/include/gdal -L/usr/local/lib -lgdal -o NDVI.o
其中:
-std=c++11 指定使用C++11标准进行编译。因为上一个代码中使用了C++11中的std::array 等特性。

-I[Dir] 指定头文件目录的搜索目录
-L[Dir] 指定动态链接库的搜索目录
-l[lib] 指定一来的动态链接库文件

目录
相关文章
|
4月前
|
小程序
在Masm32中如何静态链接自己编写的库文件
在Masm32中如何静态链接自己编写的库文件
|
8月前
|
自然语言处理 编译器 程序员
【头文件】对.h文件的理解
【头文件】对.h文件的理解
233 1
|
编译器 C++ 开发者
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
1071 0
头文件.h、动态链接库.dll、静态链接库.lib的区别与应用总结
|
Linux C++ 编译器
linux下查看包含的头文件的源文件
我想查看linux下包含的一个头文件的源文件,如#include "a.h"。在C++编译器里直接右键就可以打开了,那么在linux下该怎么查看呢?或者怎么查看源文件所在的目录? 如果是系统的文件,那么到 cd /usr/include 下找找就行; 如果是自定义的头文件,到你的工程的根目录下找找。
1158 0
|
XML C# 数据格式
关于C#引用dll动态链接库文件的注释问题
1、dll动态库文件项目生成属性中要勾选“XML文档文件” 注意:1)、要选中项目,查看项目属性,选中解决方案是找不到的。2)、XML文件的名字不要修改。 2、添加引用时XML文件要与DLL文件在同一个目录下。
1193 0
|
C++
boost库生成文件命名和编译
生成文件命名规则:boost中有许多库,有的库需要编译、而有的库不需要编译,只需包含头文件就可以使用。编译生成的文件名字普遍较长,同一个库根据编译链接选项不同,又可以生成多个不同名字的文件。生成的文件名字是很长,可是这样带的信息才多,也就容易识别出用途。
1330 0
|
Linux C语言 C++
gcc/g++编译 cpp/c文件 生成可执行文件
g++编辑cpp生成exe 编译重命名等: g++ –c Hello.cc  编译文件,生成目标文件 Hello.o g++ Hello.o –o abc  连接 并重命名为可执行文件 abc g++ Hello.cc    编译连接一起,生成a.out g++ Hello.cc –o hello 生成a.out并命名为hello 多文件
4386 0