C++ Linux安装gdal及测试demo注意的问题

6 篇文章 0 订阅

参考链接:在Linux/Ubuntu下从源代码安装GDAL库

根据上面的参考链接进行安装gdal没有啥问题,编译后可以输出可执行程序,但是在运行的时候出现提示libgdal.so没有找到

编译出来运行异常解决方法

参考:
这里解决
在这里插入图片描述

demo源代码

测试Demo代码进行了简单修改,便于查看是否加载影像成功

#include "gdal_priv.h" 
#include "cpl_conv.h" // for CPLMalloc() 
#include <cstdio>
#include <cstdlib>
int main() 
{ GDALDataset *poDataset; 
GDALAllRegister(); 
poDataset = (GDALDataset *) GDALOpen("somefile.tiff" , GA_ReadOnly ); //影像名称最好搞绝对路径
if( poDataset == NULL ) { printf("Open file failed!"); } 
else {printf("Success open img!\n");}
GDALClose(poDataset);// 不关闭文件会得到段错误 
return 0; 
}

编译方法

1、单个cpp文件编译方法

g++ test.cpp -o test -lgdal

2、多个cpp文件编译方法
如果你该工程有多个cpp需编译,只需在test.cpp 后面空格追加多个cpp即可,例如

g++ main.cpp test1.cpp test2.cpp -o test -lgdal

3、很多很多个cpp文件编译方法
使用cmake进行编译
参考我以前写的博客:Linux cmake系统学习

异常的解决方法

还有Linux系统与windows系统略微存在一点差异,如果编译出错会有红色error提示,如:
在这里插入图片描述

解决方案:定位到源代码位置,将_isnan()这个函数用std::isnan()替换即可

又如:
在这里插入图片描述
提示说的很明显了,不能把字符串转换程std::ios_base::openmode
解决方案:把’w’字符串替换成std::ios_base::out 即可解决

以上,特此记录

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值