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步骤的更多相关文章

  1. linux下编译运行驱动

    linux下编译运行驱动 嵌入式linux下设备驱动的运行和linux x86 pc下运行设备驱动是类似的,由于手头没有嵌入式linux设备,先在vmware上的linux上学习驱动开发. 按照如下方 ...

  2. DPM检测模型 VoC-release 5 linux 下编译运行

    (转载请注明作者和出处 楼燚(yì)航的blog :http://www.cnblogs.com/louyihang-loves-baiyan/ 未经允许请勿用于商业用途) DPM目前使非神经网络方法 ...

  3. 在linux下编译运行C++程序

    头一回...把windows下的程序挪到linux下,代码见这篇随笔 1.编译ZTHREAD,使用./configure失败,直接编译的,方法还是上面提到的那篇随笔 2.编译源码,最开始用的cc,后来 ...

  4. linux下编译运行C程序

    GCC是Linux操作系统下一个非常重要的源代码编译工具,有着许多重要的选项,支持许多不同语言的编译,如C.C++.Ada.Fortran.Objective.Perl.Python.Ruby以及Ja ...

  5. linux安装软件的几种方法----linux下编译安装软件的一般步骤

    linux安装软件的几种方法: 一.rpm包安装方式步骤: 1.找到相应的软件包,比如soft.version.rpm,下载到本机某个目录: 2.打开一个终端,su -成root用户: 3.cd so ...

  6. 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序

    如何用javac 和java 编译运行整个Java工程 (转载)  http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ...

  7. Linux程序在Windows下编译运行_MinGW和Cygwin

    linux要在windows下编译运行,需要win下的gcc编译器,一般有两种:MinGW和Cygwin. 但某些函数在windows没有,即使使用两种工具也编译不过,需要查询windows函数并使用 ...

  8. linux下编译qt5.6.0静态库——configure配置

    linux下编译qt5.6.0静态库 linux下编译qt5.6.0静态库 configure生成makefile 安装选项 Configure选项 第三方库: 附加选项: QNX/Blackberr ...

  9. Linux下编译安装qemu和libvirt

    目录 [hide] 1 安装qemu 1.1 qemu介绍 1.2 下载源文件 1.3 编译安装 2 安装libvirt 2.1 libvirt介绍 2.2 下载libvirt 2.3 编译安装 3  ...

随机推荐

  1. vc++ 6.0编译后生成的文件

    程序在编译后,在目标路径下会生成多个文件    Debug文件夹(*.exe,*.ilk,*.obj,*.pch,*.pdb,*.idb,*,pdb),*.cpp,*.dsp,*.ncb,*.plg  ...

  2. ArcGIS API for Javascript 使用缓冲区结果做query查询出现“esri.config.defaults.io.proxyUrl 尚未进行设置”错误

    1.前言 在研究ArcGIS API for JavaScript时会遇到这样的问题,比如我们在做缓冲区分析时,用分析的范围作为空间查询query的参数,在执行结果中总是会看到“esri.config ...

  3. 在window下, Java调用执行bat脚本

    参考博客: https://www.cnblogs.com/jing1617/p/6430141.html 最近一段时间用到了Java去执行window下的bat脚本, 这里简单记录一下: 我这里是先 ...

  4. PHP函数:method_exists和function_exists

    method_exists 检查类的方法是否存在 bool method_exists ( mixed $object , string $method_name ) 检查类的方法是否存在于指定的ob ...

  5. 【MFC】0xC0000005: 读取位置 0x00000020 时发生访问冲突

    原因:使用GetDlgItem()函数时需要先判断指针然后才可以使用. 错误代码: //重新建一个线程,查询帧同步 DWORD WINAPI SCsync_Thread(LPVOID Lparam) ...

  6. meterpreter > sysinfo

    meterpreter > sysinfoComputer : test-VCS86VROS : Windows XP (Build 2600).Architecture : x86System ...

  7. Windows系统HTTP身份验证方法

    当Windows客户端尝试使用HTTP协议访问基于Web的资源时,会在客户端和服务器之间建立"对话".换句话说,服务器告诉客户端,访问资源之前进行身份验证 ,并且服务器还告诉客户端 ...

  8. linux 命令——51 lsof(转)

    lsof(list open files) 是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以 如传输控制 ...

  9. iptables (1) 原理

    网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能有所帮助. iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防 ...

  10. 使ListView控件中的选择项高亮显示

    实现效果: 知识运用: ListView控件的SelectedItems属性 //获取在ListView控件中被选中数据项的集合 public ListView.SelectedListViewIte ...