码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • GDAL Linux离线源码编译(附源码及编译步骤)


    目录

      • 安装步骤
        • 1、安装sqlite3
          • 1.1提前手工编辑更改一下代码
          • 1.2依次执行下面的编译步骤:
        • 2、安装tiff
        • 3、安装curl
        • 4、安装proj
        • 5、安装geos
        • 6、安装gdal

    参考链接:
    1、gdal-3.1.2 linux(Ubuntu) 编译 附SQLite3 PROJ6编译
    2、QGIS:symbol lookup error: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name

    工作中经常会进行程序部署,软硬件系统变化程序都需要重新编译进行适配:armCPU、X86CPU 、Ubuntu系统、Redhat、CentOS系统等等都需要重新编译库
    安装包源码下载点击【这里(免积分下载)】
    包含:
    1、sqlite-autoconf-3360000.tar.gz
    2、tiff-4.2.0.tar.gz
    3、curl-7.71.1.tar.gz
    4、proj-7.1.0.tar.gz
    5、geos-3.8.1.tar.bz2
    6、gdal-2.4.4.tar.gz

    安装步骤

    安装gdal前需要按照顺序先把sqlite3、tiff、curl、proj、geos库都编译好,最后才能顺利编译出gdal
    在线编译gdal以前写过,这里就不说了,特此整理离线编译的方法:
    安装前说明:
    1、安装根目录:/home/zhupenghui/opencv401/GDAL
    2、压缩包所有的都解压到安装根目录
    3、./configure 后面的–prefix参数指的是编译后安装目录
    4、前面五个库安装./configure 配置的时候只用配置输出目录,在最后进行gdal安装的时候需要配置编译好的proj库的bin文件夹
    下面开始编译吧:

    1、安装sqlite3

    1.1提前手工编辑更改一下代码

    如果不更改代码直接编译,在后续运行编译的程序可能异常报错,报错信息如下:

    undefined symbol: sqlite3_column_table_name
    
    • 1

    为避免该报错,需找到压缩包下的sqlite3.c文件,在前面增加定义一下下面的宏(参见参考链接2)

    #define SQLITE_ENABLE_COLUMN_METADATA 1  
    
    • 1
    1.2依次执行下面的编译步骤:
    cd /home/zhupenghui/opencv401/GDAL/sqlite-autoconf-3360000
    sudo mkdir build
    sudo ./configure --prefix=/home/zhupenghui/opencv401/GDAL/sqlite-autoconf-3360000/build
    sudo make
    sudo make install
    
    • 1
    • 2
    • 3
    • 4
    • 5

    完了后设置环境变量

    2、安装tiff

    cd /home/zhupenghui/opencv401/GDAL/tiff-4.2.0
    mkdir build
    ./configure --prefix=/home/zhupenghui/opencv401/GDAL/tiff-4.2.0/build
    make
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5

    3、安装curl

    cd /home/zhupenghui/opencv401/GDAL/curl-7.71.1
    mkdir build
    ./configure --prefix=/home/zhupenghui/opencv401/GDAL/curl-7.71.1/build
    make
    make install
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4、安装proj

    ./configure --prefix=/home/zhupenghui/opencv401/GDAL/proj-7.1.0/build
    make
    make install

    5、安装geos

    ./configure --prefix=/home/zhupenghui/opencv401/GDAL/geos-3.8.1/build
    make
    make install

    6、安装gdal

    注意设置proj编译的bin目录,再设置输出目录

    cd 
    ./configure --with-proj=/home/zhupenghui/opencv401/GDAL/proj-7.1.0/build/bin --prefix=/home/zhupenghui/opencv401/GDAL/gdal-2.4.4/build
    make
    make install
    
    • 1
    • 2
    • 3
    • 4
  • 相关阅读:
    k8s-helm-简介及基础配置
    SSM出租车查询系统 毕业设计-附源码220915
    node包依赖下载管理
    设计模式之【装饰器模式】
    为什么TDM更适合数字传输?(模拟信号与数字信号传输比较,TDM与FDM传输方式比较)
    使用IDEA快速部署到Docker云端
    『亚马逊云科技产品测评』活动征文|AWS 数据库产品类别及其适用场景详细说明
    前端面试中小型公司都考些什么
    Frida IOS 堆栈输出与IDA 对应
    开发 pgadmin4 遇到后后端无法切换目标数据库的问题
  • 原文地址:https://blog.csdn.net/weixin_42727069/article/details/133312161
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号