Geant4采用make和cmake編譯運行geant4自帶例子的方法


 

該教程介紹如何將geant4中自帶的例子通過camke編譯成可執行文件,並運行程序。

 

1 在linux主目錄下創建一個geant4_workdir目錄,並將geant4自帶的例子B1復制到該目錄下,如圖1所示,geant4自帶的B1源文件所在目錄為geant4安裝目錄,如圖2所示。

圖1

圖2

2 復制完成后到終端並進入到B1文件里面(~/geant4_workdir/B1/),然后在終端輸入make開始編譯文件,開始與結果分別如圖3所示,這樣便完成了編譯。

圖3

編譯之后再回到~/geant4_workdir/目錄下,可以看到有bin和temp文件夾,bin文件夾下裝的是二進制文件exampleB1,如圖4,可以直接運行。

圖4

3 現在開始運行exampleB1可執行文件,在終端進入剛才編譯的B1文件夾,人后輸入命令~/geant4_workdir/bin/Linux-g++/exampleB1,即編譯生成的可執行文件的目錄,運行結果見圖5,並彈出可視化界面,可以在彈出的界面里輸入macro文件命令執行程序

圖5

上述方法編譯的程序有一個缺點就是源程序B1和編譯程序B1沒分開,下面介紹源程序和編譯后的程序分開執行geant4程序的過程:

 

1 同樣的,首先將源程序B1復制到~/geant4_workdir目錄下,然后建立一個B1-build的文件夾,如圖6所示,這個B1-build文件夾就是用來生成可執行文件的。

圖6

2 編譯生成可執行文件,從終端進入到B1-build文件夾,並在終端輸入命令:

cmake –DGeant4_DIR=/home/geant4.10.03-install/lib/Geant4-10.3.2 $HOME/geant4_workdir/B1

等式后面的內容分為兩部分,前面是geant4安裝目錄,這里需要geant4安裝的Geant4Congfig.cmake(如圖7所示)文件來編譯B1文件,因此先輸入Geant4Congfig.cmake文件所在目錄,后半部分是要編譯的B1源文件所在目錄,就是剛才復制到~/geant4_workdir目錄下的B1文件,輸入命令回車后得到圖8 結果,這一步將源文件B1復制到了B1-build文件下,並創建了geant4頭文件庫可待編譯源文件的連接,打開B1-build問價夾可以看到與B1源文件相同的文件,如圖8所示。

圖7

圖8

3 現在可以進行編譯了,在終端繼續輸入命令make –j2,2表示電腦系統的內核數,我的系統內核數為2,編譯結果后會生成可執行文件exampleB1,如圖9所示。

圖9

4 現在可以執行exampleB1文件了,在終端輸入./exampleB1,回車后會得到和第一種方法一樣的結果。

第二種方法將B1源文件和編譯生成的可執行文件B1-build分開放在了不同的目錄,這樣不會將源文件和可執行文件混淆,有許多好處。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM