码农知识堂 - 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
  • 相关阅读:
    Flutter 匠心千刃 | SHA256 加密
    互联网加竞赛 基于设深度学习的人脸性别年龄识别系统
    【Redis】配置项与发布订阅
    使用 git revert 回退代码
    Qt天气预报系统之JSON
    外卖项目(项目优化3)12---前后端分离开发
    【图像分割】基于萤火虫算法实现图像聚类分割附matlab代码
    基于深度学习视觉算法的多模型文件融合检测系统设计与实现及优化(工人姿态检测+安全帽佩戴检测系统)
    Java 面试全解析:核心知识点与典型面试题
    挠场的科学丨四、穿梭阴阳的挠场——道家风水、八卦、布阵的解密
  • 原文地址:https://blog.csdn.net/weixin_42727069/article/details/133312161
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号