开源跨平台三维模型轻量化软件osgGISPlugins-2、如何编译

news/2024/10/7 17:54:19 标签: 开源软件, c++

上一篇:开源跨平台三维模型轻量化软件osgGISPlugins-1、简介

1、编译前的准备:安装、配置vcpkg包管理器

1)安装及国内镜像替换教程(Windows和Linux环境都有):vcpkg国内镜像源替换
2)下载第三方依赖库(Readme文档中所给出的百度网盘链接有误,请使用下面的地址):
通过百度网盘分享的文件:lib
链接:https://pan.baidu.com/s/16YB3yUm8jEC6Ep4q4O_PoQ?pwd=2o84
提取码:2o84
在这里插入图片描述
下载第三方库依赖,解压并重命名为3rdparty,将3rdparty文件夹放在根目录下

2、Windows环境

方式一、通过build.bat脚本编译

build.bat脚本如下:

@echo off
if not exist "build" (
    mkdir build
)
cmake -G "Visual Studio 17 2022" -DCMAKE_BUILD_TYPE=Release -DCMAKE_TOOLCHAIN_FILE=E:/SDK/vcpkg/scripts/buildsystems/vcpkg.cmake -S . -B build
cmake --build build --config Release

1)需要将E:/SDK/vcpkg/scripts/buildsystems/vcpkg.cmake替换为你自己的vcpkg路径。
2)"Visual Studio 17 2022"也要替换为自己的Visual Studio的版本,我用的是VS2022

方式二、直接使用Visual Studio编译

1)直接使用VS打开本项目(VS2017及以上版本支持直接打开CMake项目)。

2)需要修改源码根目录的CMakeLists.txt文件的第22行:
set(CMAKE_TOOLCHAIN_FILE C:/wty/work/test/vcpkg/scripts/buildsystems/vcpkg.cmake)
一样将vcpkg工具的路径改为你的本地路径。

方式三、通过CMake生成VS解决方案进行编译

和上面一样,也是修改CMAKE_TOOLCHAIN_FILE变量的值为你的本地路径

使用Vcpkg安装依赖时遇到编译jasper库失败的问题

我使用的是最新版本的vs2022,新版vs2022编译jasper库时会失败,解决方案参考(对于其他版本vs可能也适用):vcpkg+vs2022+Windows编译jasper失败解决方案

3、Linux环境

方式一、使用百度网盘链接中的docker镜像

在这里插入图片描述

方式二、使用项目中的Dockerfile文件自己构建docker镜像

方式三、参考Windows环境下的编译教程及Dockerfile文件进行编译


http://www.niftyadmin.cn/n/5693146.html

相关文章

[C#]使用onnxruntime部署yolov11-onnx实例分割模型

【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 在C#中使用ONNX Runtime部署YOLOv11-ONNX实例分割模型,涉及到模型的加载、数据预处理、模型推理和后处理几个关键步骤。 首先,需要确保已经安装了ONNX Runtime的NuGe…

李宏毅 X 苹果书 自注意力机制 学习笔记下

b1 ,b2...不是依序产生,而是同时被计算好的 从矩阵乘法角度看待self-attention运作过程 矩阵运算表示每一个a都要产生 a k v的操作如下: 矩阵运算表示的计算如下: A‘是A的normalization ,用softmax 矩阵运算表示b计…

基于ssm 和uniapp 开发的微信小程序的学生选课系统设计与实现

博主介绍:专注于Java(springboot ssm 等开发框架) vue .net php phython node.js uniapp 微信小程序 等诸多技术领域和毕业项目实战、企业信息化系统建设,从业十五余年开发设计教学工作 ☆☆☆ 精彩专栏推荐订阅☆☆☆☆☆不…

MATLAB智能优化算法-学习笔记(4)——灰狼优化算法求解旅行商问题【过程+代码】

灰狼优化算法(Grey Wolf Optimizer, GWO)是一种基于灰狼社会行为的元启发式算法,主要模拟灰狼群体的捕猎行为(包括围攻、追捕、搜寻猎物等过程)。多旅行商问题(Multi-Traveling Salesman Problem, mTSP)是旅行商问题(TSP)的扩展,它涉及多个旅行商(车辆)从一个起点城…

【解决办法】git clone报错unable to access ‘xxx‘: SSL certificate problem:

使用git clone 时报错unable to access xxx: SSL certificate problem: 这个报错通常是由于SSL证书问题引起的。通常可以按照以下步骤进行排查: 检查网络连接:确保你的网络连接正常,可以访问互联网。尝试使用其他网站或工具测试网络连接是否正…

Study-Oracle-11-ORALCE19C-ADG集群搭建

一路走来,所有遇到的人,帮助过我的、伤害过我的都是朋友,没有一个是敌人。 一、ORACLE--ADG VS ORACLE--DG的区别 1、DG是Oracle数据库的一种灾难恢复和数据保护解决方案,它通过在主数据库和一个或多个备用数据库之间实时复制数据,提供了数据的冗余备份和故障切换功能。…

3.点位管理改造-列表查询——帝可得管理系统

目录 前言一、与页面原型差距1.现在:2.目标:3. 存在问题: 二、修改1.重新设计SQL语句2.修改mapper层,使用Mybatis中的嵌套查询3.修改service层4. 修改controller层5.前端修改6.补充区域查看详情7.数据完整性 前言 提示&#xff1…

No.6 笔记 | Linux操作系统基础:全面概览与核心要点

1. 简介与历史 1.1 起源 创始人:Linus Torvalds(芬兰赫尔辛基大学学生)初衷:设计一个替代Minix的全功能Unix操作系统首次发布:1991年10月5日,Linux v0.01版本 2. Linux特点 多用户多任务:用…