linux下编译运行TIGL Viewer步骤
linux下编译运行TIGL Viewer步骤(仅为了正确编译安装的话直接跳到步骤3)
1. linux发行版选择:
由于linux发行版众多,不同版本包含的库版本可能存在差别,因此需要选择正确的版本。由于在openCascade推荐使用的发行版列表中,对Ubuntu比较熟悉,所以选用ubuntu。(其他发行版的包安装方式与ubuntu有较大差别,不熟悉的话会比较麻烦)
2. ubuntu版本选择:
虽然openCascade推荐使用ubuntu13.04版本,但因为13.04非长期支持版,所以使用apt-get install 已经无法安装需要的软件包了,而手动下载并安装包的方式是非常低效和痛苦的:需要软件包A,下载A,安装A,提示需要另一个软件包B;于是下载B,安装B,但又提示需要另一个软件包C;于是下载C,......。于是我选择了使用长期支持版12.04,并使用apt-get install 安装需要的包:
sudo apt-get update
sudo apt-get install cmake libtixi-dev qt4-dev-tools liboce-foundation-dev liboce-modeling-dev liboce-ocaf-dev liboce-ocaf-lite-dev liboce-visualization-dev
安装过程很顺利,但在CMake-GUI的configure阶段,会提示QT版本太旧,这是因为12.04软件源中的qt包太旧导致的,要解决这个问题只有手动下载最新版QT Library并编译(编译过程耗时3小时)。搞定QT后,Cmake可以generate正确的makefile。但在使用make编译TIGL过程中会提示一个类似"unsolved reference to ..."的链接错误,理论上应该可以修复这个问题,但简单的试了一下,没能解决,并且考虑到后续可能还有类似错误,所以放弃12.04,还是考虑使用13.04.
猜测14.04应该没有这些问题,但没有尝试。
3. ubuntu13.04下TIGLViewer的编译运行
3.1 在源列表中增加TIGL相关的仓库地址:
在 /etc/apt/source.list中的最后增加如下一行: deb http://download.opensuse.org/repositories/home:martinsiggel/xUbuntu_13.04/ /
3.2 修改13.04软件源:
将source.list里面原有的 http地址替换为 http://old-releases.ubuntu.com/ubuntu
切记保留源地址前面的 deb/deb-src 还有后面的 raring main restricted (multiverse)等,只是单纯的替换掉 http 链接,其余部分不要动。
3.3 更新软件源:
sudo apt-get update
sudo apt-get upgrade
3.3 下载安装需要的软件包:
sudo apt-get install cmake libtixi-dev qt4-dev-tools liboce-foundation-dev liboce-modeling-dev liboce-ocaf-dev liboce-ocaf-lite-dev liboce-visualization-dev
3.4 下载CMake-gui并使用cmake构建相应的makefiles
下载安装:sudo CMake-gui
构建:打开CMake-gui,选择source dirctory和target dirctory,无需进行任何path的设置(包括CVSRoot),点击configure和generate,生成对应的makefiles(在Cmake配置选项中可以选择Unix Makefiles和Eclipse CDT Makefiles两种方式,都可以)。
3.5 使用makefiles编译构建源代码并执行构建后的可执行程序:
如果使用Unix Makefiles方式:
编译构建:切换到CMake-gui中配置的target dirctory,console下执行sudo make
执行:切换到bin目录,console下执行sudo ./TIGLViewer
如果使用Eclipse CDT Makefiels方式:
编译构建:首先安装eclipse-cdt: sudo apt-get install eclipse-cdt;然后把CMake-gui中配置的target dirctory import到eclipse中;最后在eclipse-cdt中build已导入的工程
执行:在eclipse-cdt中run已构建的工程。
linux下编译运行TIGL Viewer步骤的更多相关文章
- linux下编译运行驱动
linux下编译运行驱动 嵌入式linux下设备驱动的运行和linux x86 pc下运行设备驱动是类似的,由于手头没有嵌入式linux设备,先在vmware上的linux上学习驱动开发. 按照如下方 ...
- DPM检测模型 VoC-release 5 linux 下编译运行
(转载请注明作者和出处 楼燚(yì)航的blog :http://www.cnblogs.com/louyihang-loves-baiyan/ 未经允许请勿用于商业用途) DPM目前使非神经网络方法 ...
- 在linux下编译运行C++程序
头一回...把windows下的程序挪到linux下,代码见这篇随笔 1.编译ZTHREAD,使用./configure失败,直接编译的,方法还是上面提到的那篇随笔 2.编译源码,最开始用的cc,后来 ...
- linux下编译运行C程序
GCC是Linux操作系统下一个非常重要的源代码编译工具,有着许多重要的选项,支持许多不同语言的编译,如C.C++.Ada.Fortran.Objective.Perl.Python.Ruby以及Ja ...
- linux安装软件的几种方法----linux下编译安装软件的一般步骤
linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...
- 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序
如何用javac 和java 编译运行整个Java工程 (转载) http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ...
- Linux程序在Windows下编译运行_MinGW和Cygwin
linux要在windows下编译运行,需要win下的gcc编译器,一般有两种:MinGW和Cygwin. 但某些函数在windows没有,即使使用两种工具也编译不过,需要查询windows函数并使用 ...
- linux下编译qt5.6.0静态库——configure配置
linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...
- Linux下编译安装qemu和libvirt
目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3 ...
随机推荐
- 解决ie9以及以下console未定义
页面明明已经删除了所有的console,但是ie9下依旧会报错 console未定义 只能这样解决了 window.console = window.console || (function () { ...
- java 千分位的添加和去除
转至:http://blog.sina.com.cn/s/blog_8f99a1640102v1xh.html 将一个数字转换为有千分位的格式: NumberFormat numberFormat1 ...
- linux设置history历史记录
#说明export HISTSIZE=1000 #设置历史记录显示1000行export HISTTIMEFORMAT='%F %T ' #设置历史记录格式 999 2017-08-15 10:58: ...
- python3基础11(正则表达式及re模块)
#生成re对象 compile# 之后再期调用 match search 返回匹配到的字符串# findall 返回匹配结果的列表#如果要对匹配的结果进行分组,可加(),并可通过\数字 去应用
- eclipse Indigo搭建SSH框架详解
SSH框架是最常用的框架之一,在搭建SSH框架的时候总有人遇到这样,那样的问题.下面我介绍一下SSH框架搭建的全过程. 第一步:准备工作. 下载好eclipse,Struts2,Spring,Hi ...
- POJ 3734 Blocks (线性递推)
定义ai表示红色和绿色方块中方块数为偶数的颜色有i个,i = 0,1,2. aij表示刷到第j个方块时的方案数,这是一个线性递推关系. 可以构造递推矩阵A,用矩阵快速幂求解. /*********** ...
- Android(java)学习笔记94: SurfaceView使用
1. SurfaceView简介 在一般的情况下,应用程序的View都是在相同的GUI线程(UI主线程)中绘制的.这个主应用程序线程同时也用来处理所有的用户交互(例如,按钮单击或者文本输入). ...
- Problem J: 搜索基础之红与黑
Problem J: 搜索基础之红与黑 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 170 Solved: 100[Submit][Status][ ...
- sublime package control以及常用插件
一.package Control安装 1.sublime 3 import urllib.request,os; pf = 'Package Control.sublime-package'; ip ...
- C# 运用作用域
前面已经展示了一些在方法内部创建变量的例子.变量从定义了它的语句开始存在,同一个方法内的后续语句可以使用该变量.换言之,变量只能在创建了之后才能使用.方法执行完毕后,变量也会彻底消失. 假如一个变量能 ...