CompileOnMac/jp

Mac OS X は BSD(UNIX)ベースなので、Mac上でのFreeCADのコンパイルはCompileOnUnixと大きく違いませんが、すべての機能を適切に動かすには、Mac特有の重要な点がいくつかあります. この説明内容は、Lion(10.7)でテストしていますが、(Snow) Leopardが動くIntel Macでも同様に"動くはず"です.

FreeCAD sources のダウンロード
FreeCADのsourceの最新リビジョンをSourceforge subversion リポジトリからチェックアウトします.

svn co http://free-cad.svn.sourceforge.net/svnroot/free-cad/trunk free-cad

依存パッケージのインストール
Mac OS X 10.7上では、以下の依存パッケージがバンドルされていないので、FreeCADのビルドの前にインストールする必要があります.


 * sip
 * fortran
 * xerces-c
 * boost
 * eigen
 * ftgl
 * coin3d
 * OpenCASCADE
 * Qt
 * pyqt
 * soqt

選択肢 1: Homebrew
"注意" : このセクションは、現在修正中です！フォーラムで最新の投稿を確認してください.


 * https://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=4&t=2064&p=15405

Homebrewパッケージマネージャをダウンロードし、インストールします. :


 * http://mxcl.github.com/homebrew/

FreeCADのほとんどの依存パッケージをコンパイルし、インストールします. :

brew install sip gfortran xerces-c boost eigen coin qt pyqt soqt ftgl

CompileOnMac/jpを確認します.

選択肢 2: MacPorts/Fink
'''注意：このセクションは更新する必要があります. '''

(まだMacPortsをインストールしていない場合は) MacPortsをインストールします. MacPortsは、1つのコマンドで一般的なオープンソースのアプリケーションをダウンロード、コンパイル、インストールできます. UNIX/Linuxの世界では、PKCSRCやAPTに似ているアプリケーションです. インストールするには、MacPortsサイトからディスクイメージをダウンロードして、指示に従ってください. :


 * http://www.macports.org/install.php

MacPortsをインストールした直後かどうかにかかわらず、MacPortsが最新かどうかを確認したくなるでしょう. 以下を実行します. :

sudo port selfupdate そうすると、MacPortsがインストールされ、最新版になり、FreeCADが必要とするパッケージのインストールをはじめることができます. :


 * xercesc
 * boost
 * py-sip
 * ftlg
 * f2c
 * eigen3
 * py-pyqt4

以下のコマンドで、上記のライブラリをコンパイル/インストールできます. もしMacPortsがエラーを出力したら、それらを一つずつ試すことになるでしょう.

sudo port install xercesc boost ftgl f2c eigen3 py-sip py-pyqt4

py-sipやpy-pyqt4のようなpythonパッケージは各MacPortsのPythonのバージョンに対応したパッケージが1つずつあるため、複数のパッケージがあることに注意が必要です.

boostは大きなパッケージです. また、py-pyqt4にはqt4-macが必要でこれも大きなパッケージです. 長いビルドの間に、何が起こっているかを確認するために、port -v instsall を実行したくなるでしょう.

QT4はQtウェブサイトからMac用のバイナリインストーラも利用可能です. この方法がFreeCADのコンパイルにどのようにうまくいくかは、よくわかりません.

Fortran コンパイラのインストール

FOATRANコンパイラも必要です. Appleで分岐したOSX上のgccはFORTRANが付属していません.

GFortranのコンパイラはここにあり、うまく動作するでしょう:

http://gcc.gnu.org/wiki/GFortranBinaries#MacOS

もしfinkを使っているならば、他の方法としては、次のコマンドを利用することです. (Shaneyfelt 2100.Nov.14) sudo fink selfupdate sudo fink install gcc46

''これは、appleのgccコンパイラコレクションと名前の衝突を避けるために、別のgccコンパイラコレクションをgcc-4という名前でインストールします. ''

MacPortsのgcc4xパッケージもFORTRANコンパイラを含んでいるので、これでも動作するはずです: sudo port install gcc46

他の候補となるMacPortsパッケージはg95です. これは有効なFORTRAN90コンパイラと思われ、FreeCADのcmakeコンフィグレーションテストを通るはずですが、実際の構築ではgcc固有のオプションを尋ねられると思われます. そのため、gcc4xを使うのが簡単です.

Eigen3のインストール

最新版のeigen3ライブラリを以下からダウンロードし、解凍します:

http://eigen.tuxfamily.org/index.php?title=Main_Page

これらはソルバー機能のために必要です. 解凍すると、'Eigen'という名前のフォルダが以下に作成されます.

/usr/local/include/eigen3/

OpenCASCADEの構築
現在、OS X上でのOpenCASCADEの構築で最も簡単な方法は、コミュニティ版(oce)を使うことです. ソースコードをダウンロードするか、以下のGitレポジトリからチェックアウトしてください:


 * https://github.com/tpaviot/oce

それから、端末で以下を実行します:

mkdir build cd build cmake .. cd .. make make install/strip

FreeCAD.appテンプレートのダウンロードと'インストール'
次のアーカイブはFreeCAD用のアプリケーションバンドルのテンプレートを含んでいます. これは必ずしも必要ではありませんが、デフォルトのインストール構成よりも便利にFreeCADを操作できます. バンドルの推奨インストール場所は/Applicationsフォルダですが、あなたはどこにでもそれを置くことができるはずです - FreeCADがさらに修正されずにコンパイルとインストールされた後では、バンドルが移動できないことを覚えておいてください. 次のステップでコンフィグレーションを使用して、make installを実行すると、このバンドルにインストールされます.


 * http://dl.getdropbox.com/u/103808/FreeCAD/FreeCAD_bundle_template_20091128.tar.gz

コンパイル
FreeCADルートフォルダ内から、以下のコマンドでFreeCADのコンフィグレーション、コンパイル、インストールします. もし、FreeCAD.appバンドルを /Application以外のどこかに置く(もしくはバンドルを使わない)場合は、'PREFIX'引数を適宜変更してください.

./autogen.sh PREFIX=/Applications/FreeCAD.app/Contents

If you installed dependencies using Option 1 (Homebrew): 選択肢１(Homebrew)を利用して依存関係パッケージをインストールした場合:

注意: このコンフィグレーションコマンドは検証しておらず、エラーを含んでいるかもしれません！

./configure --with-xercesc-lib=/usr/local/lib --with-xercesc-include=/usr/local/include \ --with-boost-lib=/usr/local/lib --with-boost-include=/usr/local/include \ --with-qt4-dir=/usr/local--with-qt4-lib=/usr/local/lib --with-qt4-include=/usr/local/include \ --with-qt4-framework=/usr/local/lib --with-qt4-bin=/usr/local/bin --with-occ-lib=/usr/local/lib \ --with-occ-include=/usr/local/include/oce --with-coin=/usr/local/lib --with-soqt=/usr/local/lib \ --prefix=/Applications/FreeCAD.app/Contents --bindir=/Applications/FreeCAD.app/Contents/MacOS \ --libdir=/Applications/FreeCAD.app/Contents/Frameworks/FreeCAD \ --includedir=/Applications/FreeCAD.app/Contents/Resources/include \ --datarootdir=/Applications/FreeCAD.app/Contents/Resources/share --enable-debug=no \ --with-python-include=/System/Library/Frameworks/Python.framework/Versions/2.5/Headers

もしくは、選択肢２(MacPorts/Fink)を利用して依存関係パッケージをインストールした場合:

./configure --with-xercesc-lib=/opt/local/lib --with-xercesc-include=/opt/local/include \ --with-boost-lib=/opt/local/lib --with-boost-include=/opt/local/include \ --with-qt4-dir=/usr/local/Trolltech/Qt-4.8.0 --with-qt4-lib=/usr/local/Trolltech/Qt-4.8.0/lib \ --with-qt4-include=/usr/local/Trolltech/Qt-4.8.0/include --with-qt4-framework=/Library/Frameworks \ --with-qt4-bin=/usr/local/Trolltech/Qt-4.8.0/bin --with-occ-lib=/usr/local/lib \ --with-occ-include=/usr/local/include/oce --with-coin=/Library/Frameworks \ --with-soqt=/Library/Frameworks --prefix=/Applications/FreeCAD.app/Contents \ --bindir=/Applications/FreeCAD.app/Contents/MacOS --libdir=/Applications/FreeCAD.app/Contents/Frameworks/FreeCAD \ --includedir=/Applications/FreeCAD.app/Contents/Resources/include \ --datarootdir=/Applications/FreeCAD.app/Contents/Resources/share --enable-debug=no \ --with-python-include=/System/Library/Frameworks/Python.framework/Versions/2.5/Headers

その後、以下を実行します: make make install

あなたのマシンの処理能力に応じて、makeのステップにはしばらく時間がかかります.

実行
全てが上手く入ったら、.appバンドルをダブルクリックするとFreeCADが起動するはずです. もし何か問題が生じたら、以下に詳細を投稿してください help forum.

PyQt4
一部のユーザは、FreeCADの起動時に "No Module named PyQt4" というメッセージに直面すると報告しています. 以下はそれを修正する回避策です: cd /Library/Python/2.6/site-packages sudo ln -s /contrib/lib/python2.6/site-packages/PyQt4. sudo ln -s /contrib/lib/python2.6/site-packages/sip*. cd /volatile/FreeCAD-r5443-ser/bin/pivy cp _coin.dylib _coin.so cd /volatile/FreeCAD-r5443-ser/lib for i in *.dylib; do j=`basename $i .dylib`; cp $i $j.so; done

Pivy
FreeCADのコンポーネントの一部は、Pivyが無いと動きません. 部分的な構築の説明として、ここを見てください.