第一讲 OSG编译 认识OSG
目录
- 前言
- 一 目录介绍
- 二 编译
- 1. 将OSG源代码目录放入CMAKE
- 2.配置
- 3. 打开并编译
- 4.测试编译结果
- 三 编译课程 day1等
- 1.课程目录
- 2.cmake
前言
一 目录介绍
视频连接
资料下载页面
链接:提取码:ketp
第一部分解压结果:
目录 | 说明 | 其他 |
---|---|---|
Data | Osg Example 所需要的数据 | 例如osgViewer.exe 需要cow.osg |
install | 就是osg所需的第三方库 | Install\3rdparty\3rdpartyX64_VS10 osg官方提供第三方代码 |
Source | osg源代码+本10天课程代码 | 产生的.sln.vcproject所调度的cpp |
VS2010-BIN | cmake产生的项目目录 | 可在CMAKE中指定,一般默认为bin |
第三方库连接:官方下载
二 编译
- 用CMAKE,编译前,需要在系统环境加入Qt目录, 增加变量:OSG_FILE_PATH
不过为了方便, 将所需的必须目录都加入了其中
rem 必备 OSG_FILE_PATH
set OSG_FILE_PATH=d:\CodeTest\OSG\1\OSG-Trainrem 这个第三方库,实际上CMAKE会询问
set TH_LIB=d:\CodeTest\OSG\1\OSG-Train\Install\3rdparty\3rdpartyX64_VS10
set TH_LIB_BIN=%TH_LIB%\binrem 必备Qt 目录
set QT=d:\Qt\qt-4.8.6
set QT_BIN=%QT%\binrem 这是是未来osg安装目录.CMAKE也会询问
set OSG_INSTALL=d:\CodeTest\OSG\1\OSG-installrem 所有都加入环境变量
set PATH=%TH_LIB%;%TH_LIB_BIN%;%QT%;%QT_BIN%;%OSG_INSTALL%;%PATH%cd "C:\Program Files\CMake\bin\"start "" "C:\Program Files\CMake\bin\cmake-gui.exe"pause
1. 将OSG源代码目录放入CMAKE
2.配置
注意:所有路径必须使用 /
截图 | 设置 | 说明 |
---|---|---|
第三方库 搜索 3RDPARTY |
不需要到bin d:\CodeTest\OSG\1\OSG-Train\Install\3rdparty\3rdpartyX64_VS10\ (…bin) |
|
Applications Examples 搜索 BUILD_OSG |
||
设置OSG-INSTALL目录 搜索 install |
安装目录 使用默认的c盘目录,会造成无法install |
|
插件路径修正 | 检查 png,gdal,curl,freetype,jpeg,zlib 库的头文件路径和库路径是否配置齐全 | |
zlib 搜索 zlib |
配置重点 ZLIB_IBRARY = 写Releae库 ZLIB_LIBRARY_DEBUG:补一个d即可 |
|
png 搜索 png |
这里额外问了png | |
有的是问了dir 有的是问了库本身 | ||
Qt 搜索 Qt4.8.6_x64_VS10 |
qt 路径 | |
png,gdal,curl,freetype,jpeg | 同上 | 同上 |
Qt配置 | — | ---- |
rcc.exe 搜索rcc |
搜索rcc 然后指定正确qt下路径 一般在bin目录下 |
|
uic.exe | 搜索uic | 一般还要配置uic 和 uic3 |
moc.exe | 搜索moc | 对应配置路径 |
3. 打开并编译
- 选中所有工程(除了filter文件夹)
- 调整所有/MP选项 - 工程属性–>c++ -->打开多CPU
- 4编译ALL_BUILD
- 再仅生成 INSTALL(CMAKE_INSTALL_PREFIX下去找)
4.测试编译结果
因为cd %OSGDATA% 这句话,所以本bat文件也必须在D盘
rem 第三方库
set TH_LIB=d:\CodeTest\OSG\1\OSG-Train\Install\3rdparty\3rdpartyX64_VS10
set TH_LIB_BIN=%TH_LIB%\binrem QT
set QT=d:\CodeTest\OSG\1\qt-4.8.6
set QT_BIN=%QT%\binrem osg安装目录
set OSG_INSTALL=d:\CodeTest\OSG\1\OSG-Install\binrem DATA 调试必备数据目录
set OSGDATA=d:\CodeTest\OSG\1\OSG-Train\Datarem 所有都加入环境变量
set PATH=%TH_LIB%;%TH_LIB_BIN%;%QT%;%QT_BIN%;%OSG_INSTALL%;%OSGDATA%;%PATH%cd %OSGDATA%osgviewer.exe cow.osgpause
三 编译课程 day1等
1.课程目录
2.cmake
1.直接运行会直接提示出现错误
2. 解决Qt问题,搜索QT,找到所有错误目录
下图路径错误,要改为正确路径,并且注意路径斜杠 /
3. 解决uic rcc moc的修改
OSG 目录
安装路径
调试
调试各课程,需要设置工作目录
把OSG_DATA设置进去
第一讲 OSG编译 认识OSG相关推荐
- osg编译方法(CMake_gui的使用)
osg编译方法(CMake_gui的使用) 1.资料清单 2.配置环境变量 3.配置CMake 4.编译工程 5.测试运行 6.经验避坑 1.资料清单 序号 名称 1 第三方库 2 qt库 3 osg ...
- osg编译日志-release
1>------ 已启动生成: 项目: ZERO_CHECK, 配置: Release x64 ------ 1> Checking Build System 1> CMake do ...
- python两个乘号_Python小白入门:第一讲||变量和简单数据类型
在第一讲中,你将学习: 如何使用变量: 如何创建描述性变量名以及如何消除名称错误和语法错误: 字符串是什么,以及如何使用小写.大写和首字母大写方式显示字符串: 使用空白来显示整洁的输出,以及如何剔除字 ...
- 《ArcGIS Engine+C#实例开发教程》第一讲桌面GIS应用程序框架的建立
原文:<ArcGIS Engine+C#实例开发教程>第一讲桌面GIS应用程序框架的建立 摘要:本讲主要是使用MapControl.PageLayoutControl.ToolbarCon ...
- 64位内核第一讲,和32位内核的区别
64位内核第一讲,和32位内核的区别 双击调试配置请查看 连接: https://www.cnblogs.com/aliflycoris/p/5877323.html 一丶编译的区别. 首先,还是使用 ...
- 第一讲 工作区和GOPATH
此为 <极客时间&Go语言核心36讲> 个人笔记,具体课程详见极客时间官网. Table of Contents generated with DocToc 第一讲 工作区和GOP ...
- 【转】阿里技术专家详解 DDD 系列 第一讲- Domain Primitive
导读 对于一个架构师来说,在软件开发中如何降低系统复杂度是一个永恒的挑战,无论是 94 年 GoF 的 Design Patterns , 99 年的 Martin Fowler 的 Refactor ...
- 面向对象技术第一讲 多态性
面向对象技术第一讲 多态性 一﹑什么是多态?为什么要支持多态? 多态是一种普遍存在的现象,如water的三种形态:冰﹑水﹑汽,又如算术运算1+1, 1+0.5, 1/2+0.5等. 多态性用一句经典 ...
- 大学 C语言程序设计第一讲,c语言程序设计1第一讲(第一章上).ppt
c语言程序设计1第一讲(第一章上).ppt 知识可以改变命运! 高级语言程序设计 主讲教师:贾彩燕 计算机与信息技术学院 计算机科学与技术系 cyjia@bjtu.edu.cn 计算机与人沟通 计算机 ...
最新文章
- 什么是三层交换机、网关、DNS、子网掩码、MAC地址
- java opencv4.40图片实现人脸识别(2)
- 创建文档库时指定文件夹(路径)
- linux sshd cpu 过高 问题解决
- vs2019怎么调整字体大小_考研倒计时23天,答题卡怎么使用?来看看正确的使用方法吧!...
- python 速度 memmap_使用python测量文件的读写速度
- 第一天开始学习使用git中遇到的问题
- Leetcode--820:单词的压缩编码(java)
- php设置url,php 设置 url
- java开发中jdbc连接数据 库的操作代码
- 查看堆内存(histogram)中的对象数量及大小
- Kafka: Producer (0.10.0.0)
- HTML使川锚标签,第1章HTML的基本标签祥解.ppt
- 查看Linux系统版本的命令
- 谁能再一次接受“南京大×××”不存在?
- Java实现文件复制功能
- 苹果id注册显示无法连接服务器失败原因,apple id连接服务器失败怎么办
- 移动硬盘遇到无法访问,文件或目录损坏且无法读取的解决办法
- 互动多媒体 Unity 拼接屏 项目分析
- 数据结构(二)----线性表(List)链式存储结构(1)
热门文章
- 计算机网络设备为啥要接地,机房中 机柜(设备)外壳为什么接地? 机房如何做接地?...
- APK和obb的方法
- Vue实现导航栏吸顶效果
- 零基础无学历,长沙哪家it学校好
- bat脚本获目录下下的文件名称:dir tree
- 基于vue+element实现多级菜单动态生成
- 观点丨区块链的价值在于解决产业核心痛点
- ERP 系统在集团化企业财务管理中的应用
- 做副业月薪12K+,工作效率翻倍,Python是个什么宝藏?
- java使用pd4ml,Java PDF导出插件pd4ml-3100pro.jar,ss_css2.jar,fonts.jar无水印版