Building OpenCASCADE on Debian

Building OpenCASCADE on Debian

eryar@163.comhtml

Abstract. When you are familiar with OpenCASCADE on Windows, you should try it on Linux operating system, because of Debian is also open source like OpenCASCADE. The paper is focus on how to building the OpenCASCADE on Debian.  算法

Key Words. OpenCASCADE, Linux, Debian, Building  編程

1. Introduction 工具

由於OpenCASCADE是用C++寫的幾何造型算法庫,有良好的跨平臺性,因此決定在Linux上來編譯試試看。由OpenCASCADE的文檔可知,在Linux上OCC選擇了Debian做爲常規測試的系統,因此也安裝了一個Debian 64bit的系統。 測試

wps_clip_image-8707

Figure 1.1 Debian 64bit is a platform used for regular testing of contributions ui

DebianGNU/Linux是由一個叫IanMurdock的牛人在1993年發起的,他的名字以Ian開頭,他太太的名字Debra開頭三個字母是Deb,因而在愛情的力量下,他發起了DebianGNU/Linux組織。Debian的正式發音爲/ˈdɛ.bi.ən/,對應的中文發音能夠是待賓。 spa

使用了Debian後,感受到開源的庫真是多啊!選擇Debian你將不會感到孤單,有至關普遍的機構及我的都在使用Debian。Debian擁有驚人數量的軟件包,每同樣都是自由的。且安裝與更新都很方便,只須要使用命令:apt-get update和apt-get install 等就能夠自動更新及安裝軟件。 3d

wps_clip_image-31950

Figure 1.2 debian the universal operating system code

安裝Debian系統的電腦是幾年前的一臺筆記本,配置有些老了。打開Debian的System Monitor能夠查看Debian的系統信息,以下圖所示: orm

wps_clip_image-3108

Figure 1.3 Debian System Info 

2.Preliminary

安裝好了Debian,下載了OpenCASCADE的源碼後,要編譯OpenCASCADE還須要作些準備工做: 

v 配置C++編程環境:apt-get install build-essential 

v 配置C++編譯環境:apt-get install automake autoconf 

v 配置OpenGL庫:apt-get install freeglut3-dev 

剛開始安裝AutoTools還遇到問題,最後查出是源的問題,把源改爲Debian默認的USA源後,便可以自動安裝AutoTools了。原來用的163的鏡像上不能安裝AutoTools。 

編譯OpenCASCADE須要用到OpenGL的庫,編譯以前的configure會檢查是否正確設置GL庫。若是沒有正確安裝OpenGL庫,有幾個模塊是不能正確編譯的。先要安裝好顯卡的驅動程序,再安裝freeglut庫便可解決問題。 

3.Building 3rd-party libraries

OpenCASCADE的第三方庫分紅兩類: 

v 必須的庫:Tcl/Tk 8.5-8.6, FreeType-2.4.10-2.4.11; 

v 可選的庫:TBB 3.x-4.x, gl2ps 1.3.5-1.3.8, FreeImage 3.14.1-3.15.4; 

全部這些第三方庫均可以從Debian的官方源中下載安裝,只須要執行以下命令便可:

sudo apt-get install \    tcllib tklib tcl-dev tk-dev \    libfreetype-dev \    libxt-dev libxmu-dev \    libgl1-mesa-dev \    libfreeimage-dev \    libtbb-dev \    libgl2ps-dev 

若是有些庫找不到,能夠嘗試下換個源。原來設置的163的源有些庫就找不到,更換成USA或其餘國家的源就能夠了,速度也還不錯。 

固然這些庫也能夠本身編譯,推薦本身編譯下,熟悉下Automake工具的使用。 

4.Building OpenCASCADE with Automake

完成上述準備工做後,就能夠編譯OpenCASCADE了。編譯步驟以下所示: 

v 運行在OCCT目錄中的build_configure腳原本生成與系統相適應的Makefile.in和configure; 

v 運行在OCCT目錄中的configure來生成makefiles;命令以下: 

$CASROOT/configure<FLAGS> 

其中<FLAGS>是一些編譯選項,用來配置第三方庫與Draw等,配置參數以下所示: 

wps_clip_image-30961

Figure 4.1 Configure options for OpenCASCADE 

示例configure命令以下: 

wps_clip_image-13390

Figure 4.2 configure example 

image

Figure 4.3 configure successed status without optional 3rdparty products 

如上圖所示,當Component對應的Build都爲yes代表configure成功了。 

v 若是configure成功後,便可使用make命令來編譯了,命令以下:

make -j8 install 

v 編譯成功後,便可運行draw.sh來測試OpenCASCADE了。 

運行《OpenCASCADE Performance Test》中的Tcl腳本獲得的效果以下圖所示。模型及Tcl腳本均可以從下面得到: 

http://www.cppblog.com/eryar/archive/2014/09/25/208421.html

因爲筆記本的配置比較老了,運行起來速度沒有新的機器快。一樣數量的F1賽車模型的網格化及顯示速度都要慢不少,並且幀頻也明顯要慢不少。 

終於在Debian中把OpenCASCADE編譯成功了,下一步就是使用OpenCASCADE在Debian中編程。 

今天是國慶節,呆在家中擺弄這些代碼也是比較愜意,免去了出去玩的People Mountain People Sea的擁擠。 

wps_clip_image-17573

Figure 4.4 Draw Test Hanress in Debian 

wps_clip_image-9360

Figure 4.5 Draw Test Harness in Debian 

5. Conclusion

在Debian上成功編譯OpenCASCADE後,爲程序的開發打開一扇自由之門,在更Open的環境中開發程序,就再也不受什麼限制了,這點感受比用Windows要好。 

OpenCASCADE在Debian上編譯主要使用了Autotools,因此須要正確安裝Autotools及熟悉其使用方法。這點上感受沒有用習慣了的Visual Studio方便,新的工具只有慢慢適應。 

設置合適的Debian更新源也很重要,剛開始我根據網上所說的選擇了國內的鏡像,致使一些工具不能自動安裝,更換成USA的就能夠了。 

 

相關文章
相關標籤/搜索