CompileOnUnix/jp

最近のLinuxディストリビューションでは、すべての依存性がパッケージマネージャで提供されるので、FreeCADのビルドは簡単です. 基本的には以下の３ステップを含みます.

1) FreeCADのソースコードを取得 2) 依存関係を取得 (FreeCADが依存するパッケージ) 3) "cake . && make"でのコンパイル

以下は、全体のプロセスと、あなたが遭遇するかもしれない特殊性についての詳細説明です. もしあなたが、以下のテキストで何らかの間違いや古い記述を見つけたとき(Linuxディストリビューションはしばしば変化するので)や、記述されていないディストリビューションを使用する場合は、テキストの修正にご協力ください.

ソースファイルの取得
FreeCADをコンパイルする前に、ソースコードを入手します. 入手するには３つの方法があります.

Git
ソースコードを入手する一番早く良い方法は、リードオンリーのgitリポジトリを複製することです. (git パッケージをインストールしておく必要があります)

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad freecad

上記を実行すると、"FreeCADの"と呼ばれる新しいディレクトリに、の最新バージョンFreeCADのソースコードのコピーを置きます. 初めて free-cad.git.sourceforge.netのホストに接続を試みると、sourceforgeのSSH鍵の認証を尋ねるメッセージを受け取ります. これは、通常、受け入れても安全です. （はっきりしないときは、sourceforge ウェブサイトのSSH鍵をチェックすることができます. ）

Gihub
Gihub上のFreeCADレポジトリは、常に最新版です. github.com/FreeCAD/FreeCAD_sf_master

ソースパッケージ
別の方法として、ソースパッケージのダウンロードもできますが、それらはかなり古い可能性があるので、gitやsubversionで最新版のソースを入手するのが無難です. ディストリビューションによって、ソースパッケージの入手方法はいくつかあります.

Official FreeCAD source packages (distribution-independent): https://sourceforge.net/projects/free-cad/files/FreeCAD%20Source/ Debian: http://packages.debian.org/source/sid/freecad Ubuntu: http://packages.ubuntu.com/source/precise/freecad

依存関係の取得
LinuxでFreeCADをコンパイルするには、最初にサードパーティライブラリに記載されているすべてのライブラリをインストールする必要があります. 最近のディストリビューションでは、一般に、これはいくつかのパッケージをインストールするだけの問題です

Debian and Ubuntu
Debianベースのシステム(Debian, Ubuntu, Mint等)では、全ての必要な依存関係をインストールすることは簡単です. ライブラリのほとんどは、apt-getまたはSynapticパッケージマネージャを介して利用できます. インストールするために必要な全てのpackgagesを、以下に記載します. あなたがお使いのディストリビューションの最新バージョンを使用しない場合は、以下のパッケージのいくつかは、リポジトリから欠落している可能性があることに注意してください. その場合、以下の セクションを参照してください.

build-essential cmake python libtool libcoin60-dev libsoqt4-dev libxerces-c-dev libboost-dev libboost-filesystem-dev libboost-regex-dev libboost-program-options-dev libboost-signals-dev libboost-thread-dev libqt4-dev libqt4-opengl-dev qt4-dev-tools python-dev こちらか: libopencascade-dev (official opencascade version) または: liboce*-dev (opencascade community edition) oce-draw gfortran libeigen3-dev libqtwebkit-dev libode-dev swig libzipios++-dev

オプションで、以下の追加パッケージをインストールすることができます.

libsimage-dev (追加のイメージファイルフォーマットをサポートするCoinを作成するために必要) checkinstall (システムのパッケージマネージャにインストールしたファイルを登録するために必要. あとで簡単にアンインストールできます. ) python-pivy (2D製図モジュールに必要) python-qt4 (2D製図モジュールに必要) doxygen and libcoin60-doc (ソースコードのドキュメントを生成する場合) libspnav-dev (Space NavigatorやSpace Pilot等の3Dconnexion製デバイスのサポート)

Fedora
以下のパッケージが必要です.

cmake doxygen swig gcc-gfortran gettext dos2unix desktop-file-utils libXmu-devel freeimage-devel mesa-libGLU-devel OCE-devel python python-devel boost-devel tbb-devel eigen3-devel qt-devel qt-webkit-devel ode-devel xerces-c xerces-c-devel opencv-devel smesh-devel coin2-devel soqt-devel

以下はオプションです. :

libspnav-devel (Space NavigatorやSpace Pilot等の3Dconnexion製デバイスのサポート) pivy ( https://bugzilla.redhat.com/show_bug.cgi?id=458975 Pivyは必須ではありませんが、ドラフトモジュールに必要 )

Fedoraでは公式のレポジトリではcoin2しか提供していないので、coin3でFreeCADをビルドすることはさらに面倒です. しかし、どうしても望むなら、 http://www.zultron.com/rpm-repo/ からcoin3-readyのパッケージをインストールすれば、 全てのcoin3/soqt/pivyパッケージを再構築をせずにすみます.

Gentoo
FreeCADのビルドには、以下のパッケージが必要です.

dev-cpp/eigen dev-games/ode dev-libs/boost dev-libs/xerces-c dev-python/pivy dev-python/PyQt4 media-libs/coin media-libs/SoQt sci-libs/opencascade-6.5 sys-libs/zlib virtual/fortran x11-libs/qt-gui x11-libs/qt-opengl x11-libs/qt-svg x11-libs/qt-webkit x11-libs/qt-xmlpatterns dev-lang/swig-2.0.4-r1 app-admin/eselect-python-20091230 dev-lang/python-2.7.2-r3 dev-util/cmake-2.8.4 sys-apps/findutils-4.4.0

最新のopencascadeが利用できないので、opencascadeをコンパイルしたくなるかもしれませんが、その場合は以下の追加ライブラリが必要です：

media-libs/ftgl virtual/opengl x11-libs/libXmu dev-lang/tcl-8.5.9 dev-lang/tk-8.5.9-r1 dev-tcltk/itcl-3.4_beta1 dev-tcltk/itk-3.4_pre20090417 dev-tcltk/tix-8.4.3 x11-libs/gl2ps sys-devel/automake-1.11 sys-devel/autoconf-2.68 sys-devel/libtool dev-java/java-config-2.1.11-r3

OpenSUSE
以下のパッケージが必要です.

gcc cmake OpenCASCADE-devel libXerces-c-devel python-devel libqt4-devel python-qt4 Coin-devel SoQt-devel boost-devel libode-devel libQtWebKit-devel libeigen3-devel gcc-fortran

FreeCAD 0.13が不安定なので、Eigen3とswigライブラリを追加する必要があります. それらは標準のレポジトリにはありません. それらは以下から１クリックインストールできます.

Eigen3: http://software.opensuse.org/search?q=eigen3&baseproject=openSUSE%3A12.1&lang=en&exclude_debug=true swig: http://software.opensuse.org/search?q=swig&baseproject=openSUSE%3A12.1&lang=en&exclude_debug=true

Also, note that Eigen3 Library from Factory Education was causing problems sometimes, so use the one from KDE 4.8 Extra repo Factory EducationのEigen3ライブラリは、しばしば問題を起こしていたので、KDE 4.8 Extraレポジトリのものを使ってください.

古く一般的でないディストリビューション
他のディストリビューションでは、ユーザーからのフィードバックがほとんど無いので、必要なパッケージを見つけることが難しくなる場合があります. まず、サードパーティライブラリに記載されている必要なライブラリを用意することを試してください. そのうちのいくつかはお使いのディストリビューションで若干異なるパッケージ名（name、libname、name-dev、name-devel、等..）になっているかもしれないことに注意してください.

GNU gcc コンパイラ バージョン 3.0.0以上も必要です. FreeCADは完全にC++で記述されているので、g++も必要です. コンパイル中には、いくつかのPythonスクリプトも実行されます. そのため、Pythonインタプリタが正しく機能する必要があります. ビルドプロセスでのリンカの問題を避けるため、環境変数"LD_LIBRARY_PATH"、もしくは、"ld.so.conf"ファイルに、ライブラリへのパスを追加するのも良いでしょう. これは、最近のディストリビューションでは一般的なことです.

詳細は、ソースファイル内の"README.Linux"にも書かれています.

以下には、あなたのディストリビューションのリポジトリで見つけることができない可能性のある幾つかのライブラリについての追加ヘルプです.

Eigen 3
Eigen3ライブラリは現在Schecherモジュールを必要とします. このライブラリは、Ubuntu 11.10のリポジトリ以降でのみ使用できます. 前のUbuntuのリリースでは、 次のいずれかのそれをここから ダウンロードして、手動でインストールするか、下記のいづれかの方法を介してそれをインストールする前に、 FreeCAD Daily Builds PPA をソフトウェアのソースに加えてください.

OpenCASCADE　コミュニティ版 (OCE)
OpenCasCade の最近分離した、Community edition は、ビルドがはるかに簡単になっています. FreeCADは"公式"版あるいはコミュニティ版のいづれか、ご使用のシステムにインストールされている任意にバージョンを利用することができます. OCEのウェブサイトにはビルド手順の詳細があります.

OpenCASCADE オフィシャル版
前文ではOpenCasCadeコミュニティ版はビルドが簡単であると紹介しましたが、これも動きます.

全てのLinuxディストリビューションはリポジトリ内に公式OpenCasCadeパッケージを持っていません. もし使えるリポジトリがあるなら、自分自身でリポジトリを確認する必要があります. 少なくともDebian LennyとUbuntu Intrepidから、公式の.debパッケージが用意されています. 古いDebianやUbuntuのリリース用に非公式パッケージをここから入手することができます. あなた自身のプライベートのdebパッケージをビルドするには、次の手順に従います.

wget http://lyre.mit.edu/~powell/opencascade/opencascade_6.2.0.orig.tar.gz wget http://lyre.mit.edu/~powell/opencascade/opencascade_6.2.0-7.dsc wget http://lyre.mit.edu/~powell/opencascade/opencascade_6.2.0-7.diff.gz

dpkg-source -x opencascade_6.2.0-7.dsc

sudo apt-get install build-essential devscripts debhelper autoconf automake libtool bison libx11-dev tcl8.4-dev tk8.4-dev libgl1-mesa-dev libglu1-mesa-dev java-gcj-compat-dev libxmu-dev
 * 1) OCC build-deps をインストール

cd opencascade-6.2.0 ; debuild
 * 1) Opencascade パッケージのビルド. 数時間以上かかる
 * 2) 8GB以上のディスク空き容量

sudo dpkg -i libopencascade6.2-0_6.2.0-7_i386.deb libopencascade6.2-dev_6.2.0-7_i386.deb
 * 1) 生成されたdebライブラリをインストール

また、opencascade.orgから最新バージョンをダウンロードしてコンパイルすることができます.

正常にパッケージをインストールします. インストーラはSun公式のJava ランタイム(パッケージ名：sun-java6-jre)のプログラムであり、UbuntuにバンドルされているオープンソースのJava(gij)でないことに注意してください. 必要に応じてそれをインストールします. sudo apt-get remove gij sudo apt-get install sun-java6-jre あなたがブラウザのプラグインのような他のものでgijのJavaを使用している場合は注意してください、それらは動かなくなるでしょう. インストーラが動作しない場合は、以下を試してみてください. java -cp path_to_file_setup.jar <-Dtemp.dir=path_to_tmp_directory> run

パッケージがインストールされたら、opencascade dir内の "ROS"ディレクトリに移動し、以下を実行します. ./configure --with-tcl=/usr/lib/tcl8.4 --with-tk=/usr/lib/tk8.4 ビルドすることができます. ROSフォルダに戻って操作を行います. : make これは長い時間、数時間かかります.

それが終わったら、インストールを実行します. sudo make install ライブラリファイルは、/usr/local/lib にコピーされます. このフォルダは他のプログラムから自動的に見つけられるので、このフォルダが良いです. 別の方法として、以下のようにもできます. sudo checkinstall あなたは後から簡単にアンインストールできるように、パッケージ管理システムにエントリをインストールするが、作成するようにこれは、同じことをするでしょう. 巨大な一時コンパイルファイルを以下のコマンドで今すぐクリーンアップしましょう. make clean

可能性のあるエラー 1:OCC バージョン 6.2を使っている場合、コンパイラがmakeを実行し始めると同時にに止まります. もしこの現象が生じたら、"configure"スクリプトで、CXXFLAGS="$CXXFLAGS "の文を見つけて、CXXFLAGS="$CXXFLAGS -ffriend-injection -fpermissive"に修正します. それからconfigureをやり直してください.

可能性のあるエラー 2: おそらく、幾つかのモジュール(WOKSH, WOKLibs, TKWOKTcl, TKViewerTest and TKDraw)は、tcl/tkのヘッダファイルが見つからないとエラーを出すでしょう. この場合、オプションがconfigureスクリプトに提供されていないので、その場合は、手動でこれらのモジュールの各々のMakefileを編集する必要があります. ：adm/makeや不良モジュールのフォルダに行きます. Makefileを修正して、CSF_TclLibs_INCLUDES = -I/usr/include と CSF_TclTkLibs_INCLUDES = -I/usr/include を置き、/tck8.4 と /tk8.4を次のように追加します. : SCF_TclLibs_INCLUDES = -I/usr/include/tcl8.4, SCF_TclTkLibs_INCLUDES = -I/usr/include/tk8.4

SoQt
SoQtライブラリは、最新のディストリビューションではそうであるが、Qt4をに対してコンパイルする必要があります. しかし、この記事の執筆時点で利用可能なSoQt4はDebian用のみであり、すべてのUbuntuにはパッケージがありません. バッケージをビルドするには、次の手順を実行します. :

wget http://ftp.de.debian.org/debian/pool/main/s/soqt/soqt_1.4.1.orig.tar.gz wget http://ftp.de.debian.org/debian/pool/main/s/soqt/soqt_1.4.1-6.dsc wget http://ftp.de.debian.org/debian/pool/main/s/soqt/soqt_1.4.1-6.diff.gz dpkg-source -x soqt_1.4.1-6.dsc sudo apt-get install doxygen devscripts fakeroot debhelper libqt3-mt-dev qt3-dev-tools libqt4-opengl-dev cd soqt-1.4.1 debuild sudo dpkg -i libsoqt4-20_1.4.1-6_i386.deb libsoqt4-dev_1.4.1-6_i386.deb libsoqt-dev-common_1.4.1-6_i386.deb

64bitのシステムの場合、i386の記述をamd64に変えてください.

Pivy
PivyはFreeCADのビルドや実行に必要ないが、2D製図モジュールを動かすのに必要とされている. もしこのモジュールを使う予定が無いのであれば、pivyは必要ありません. 執筆時点では、Pivyは非常に新しいものであり、 あなたのお使いのディストリビューションのリポジトリにその方法を作っていない可能性があります. もし、ディストリビューションのパッケージリポジトリにPivyを見つけることができない場合には、FreeCADのダウンロードページから Debian / Ubuntuのパッケージを入手することができます.

http://sourceforge.net/projects/free-cad/files/FreeCAD%20Linux/

または、自分自身でPivyをコンパイルします:

Pivyコンパイル手順

cMake を使う
CMakeは異なるターゲット·システム（Linux、また、Windows、MacOSX、等）間で共通であるという大きな利点を持っている新しいビルドシステムです. FreeCADは現在、メインのビルドシステムとしてCMakeを使用しています. CMakeを使用してのコンパイルは、通常は非常に簡単であり、次の2ステップで実行されます. 最初のステップでは、cMakeは、すべての必要なプログラムやライブラリが、お使いのシステム上に存在しているかをチェックし、その後のコンパイルに必要なすべてのことを設定します. 以下に詳述するいくつかの選択肢を与えられますが、FreeCADでは賢明な標準値が付与されます. 次のステップでは、FreeCADの実行形式を生成するコンパイルです.

FreeCADは大きなアプリケーションなので、コンパイルには少し時間がかかります(速いマシンでは10分、遅いマシンでは30分）.

In-source ビルド
FreeCADは、In-sourceでビルドされます、これはコンパイルで得られた全てのファイルはソースファイルと同じフォルダにあるという意味です. これはFreeCADだけに注目していて、フォルダを削除するだけで簡単に削除できるようにしたいならば良い方法です. しかし、しばしばコンパイルをする場合は、アウトオブソースビルドをおすすめします、これには、より多くの利点があります. 以下のコマンドでfreecadをコンパイルします.

cd freecad (freecadのソースのをコピーしたフォルダ) cmake. make

あなたのFreeCADの実行形式は "bin" フォルダにあり、それを以下のコマンドで起動できます.

./bin/FreeCAD

Out-of-source ビルド
もしあなたがFreeCADの速い進化について行きたいなら、別のフォルダでビルドするのがずっと便利です. あなたがソースコードをアップデートするたびごとに、cMakeは、どのファイルが変更され、必要なものだけが再コンパイルされるということを賢く区別します. Out-of-sourceのビルドは、Gitシステムを利用していると、あなたはビルドシステムを壊すこと無く、他のブランチを簡単に試すことができるため、特に便利です. out-of-sourceでビルドするには、単純に、あなたのfreecadソースフォルダやbuildディレクトリとは異なるビルドフォルダを作成し、cMakeにソースフォルダを示します.

mkdir freecad-build cd freecad-build cmake ../freecad (or whatever the path is to your FreeCAD source folder) make

The FreeCAD executable will then reside in the "bin" directory (within your freecad-build directory). FreeCADの実行形式は、"bin"ディレクトリ(freecad-buildディレクトリ内)にあります.

設定オプション
試験的または未完成のモジュールを使いたい場合は、それらをビルドする必要があります. これを行うには、設定段階で適切なオプションをセットする必要があります. コマンドラインで、 -D : = オプションをcMakeに渡すか、利用できるGUIフロントエンド（Debianでは、packages cmake-qt-gui や、cmake-curses-gui等）のどれかを使うことで実行できます.

例として、アッセンブリモジュールのビルドをコマンドラインで設定するために、以下を実行する cmake -D FREECAD_BUILD_ASSEMBLY:BOOL=ON path-to-freecad-root 利用できるオプションは、FreeCADのroot CmakeLists.txtファイルに書かれています.

autotools を使う
Autotoolsは、cMakeの支持によって、避難されている途中にありますが、現時点ではまだFreeCADのを構築することが可能です. automakeとlibtoolがシステムにインストールされている必要があります. Debian / Ubuntu上では

aptitude install automake libtool

この設定は、gitやsubversionでソースを持っている場合は、一番最初のステップでなければなりません

./autogen.sh

それは、configureスクリプトなどを作成します. ビルドプロセス自体のために我々には、configureスクリプトを提供しています. 以下を入力します.

./configure

すべてが設定されています. もしあなたが指定した全てのオプションの概要を確認するには、次のように入力します.

./configure --help

通常、あなたはそれらのどれを必要としません - あなたのライブラリーが本当に珍しいディレクトリにインストールされていない限り. 設定が完了したら、FreeCADのコンパイルは簡単です.

make

もし何らかのエラーがソースからのビルド中に発生したら、このページとREADME.Linux ファイルをダブルチェクしてください. そしてSourceForgeにある Bug Tracker に行ってください. 状態は"Any"とし、過去のコンパイル問題の投稿を見るために"Brouse"ボタンをクリックしてください. FreeCADが正常にビルドされた後は、以下を実行します.

make install

あなたのマシンにインストールします. デフォルトのインストールディレクトリは、

~/FreeCAD

あなたのホームフォルダにあるFreeCADフォルダにインストールします. そこではroot権限は必要ありません. make installの代わりに、以下を実行します.

checkinstall

この方法で、FreeCADはあなたのパッケージマネジメントシステムによってインストールされます. そうするとあとで簡単にアンインストールできます. しかし全てのFreeCADのインストールはシングルディレクトリになされるため、FreeCADディレクトリを削除することも、アンインストールの有効な手段です.

Qt designer プラグイン
もしFreeCADのためのQtの要素を開発したいなら、FreeCADのカスタムウィジェットを提供しているQt Designerプラグインが必要です. 以下に行きます.

freecad/src/Tools/plugins/widget

これまで、makefileを供給していませんでした. --しかし以下を実行すれば、

qmake plugin.pro

作られます. 一度これがなされたら、以下を実行

make

すると、libFreeCAD_widgets.soライブラリを作成します. このライブラリをQt Designerに知らせるために、このファイルを $QTDIR/plugin/designer にコピーします.

Doxygen
あなたはコードに飛び込むのに十分に大胆に感じている場合は、Doxygenが生成するFreeCADの ソースドキュメント の構築と利用の利点を得ることができます.

debian package の作成
もしDebian packageをソースファイルからビルドする場合、まずはじめに以下のパッケージをインストールする必要があります. dh-make devscripts lintian (optional, used for checking if packages are standard-compliant) パッケージをビルドするにはコンソールを開き、FreeCADのディレクトリに行き、以下を実行します. debuild パッケージがビルドされたら、パッケージにエラーが含まれているかどうかをチェックするためにlintian使用することができます. lintian your-fresh-new-freecad-package.deb (replace by the name of the package you just created)

64bit システムでの注意
64ビット用FreeCADを構築するときOpenCASCADE 64ビットパッケージの既知の問題があります. 正常に動作するFreeCADを取得するために、あなたは ./configure スクリプトを、追加の定義 _0CC64を指定して実行する必要があるかもしれません. ./configure CXXFLAGS="-D_OCC64"

すでにビルドされたパッケージを使用している場合のOpenCASCADEパッケージは、この定義が組み込まれているので、Debianベースのシステムの場合、この回避策は必要ありません. 今、あなたは上記の説明と同じ方法でFreeCADをコンパイルする必要があるでしょう.

Automake マクロ
The configure script of FreeCAD makes use of several automake macros that are sometimes not installed with their packages: bnv_have_qt.m4, coin.m4, and soqt.m4. If needed (error while configuring), google for them and you will find them easily. They are just simple scripts that you need to put in your /usr/share/aclocal folder.

Fedora 13
To build & install FreeCAD on Fedora 13, a few tips and tricks are needed:
 * Install a bunch of required packages, most are available from the Fedora 13 repositories
 * Download and build xerces
 * Download and build OpenCascade. Need to point it to xmu: ./configure --with-xmu-include=/usr/include/X11/Xmu --with-xmu-library=/usr/lib
 * Download and build Pivy. You have to remove 2 references to non existent "SoQtSpaceball.h" from pivy/interfaces/soqt.i Commenting out those two lines allow the build & install to work.
 * Configure Freecad. You will need to point it to a few things: ./configure --with-qt4-include=/usr/include --with-qt4-bin=/usr/lib/qt4/bin --with-occ-lib=/usr/local/lib --with-occ-include=/usr/local/inc --with-xercesc-lib=/usr/local/lib
 * make - hits a problem where the build is breaking because the ldflags for soqt are set to "-LNONE" which made libtool barf. My hackish workaround was to modify /usr/lib/Coin2/conf/soqt-default.cfg so that the ldflags are "" instead of "-LNONE". After this -> success !
 * make install

Ubuntu Lucid
In Ubuntu Lucid, you don't need the qtwebkit-dev, since it is included into qt4-dev.

Automatic ビルドスクリプト
Here is all what you need for a complete build of FreeCAD. It's a one-script-approach and works on a fresh installed distro. The commands will ask for root password (for installation of packages) and sometime to acknowledge a fingerprint for an external repository server or https-subversion repository. This scripts should run on 32 and 64 bit versions. They are written for distinct version, but are also likely to run on a later version with or without minor changes.

If you have such a script for your preferred distro, please send it! We will incorporate it into this article.

Note that this script starts by adding the FreeCAD Daily Builds PPA repository so it can proceed with the Eigen3 library (libeigen3-dev) installation. If you already have this library installed on your system, you can remove the first line.

Ubuntu 10.04 LTS - Lucid Lynx / Ubuntu 10.10 Maverick Meerkat / Ubuntu 11.04 Natty Narwhal
sudo add-apt-repository ppa:freecad-maintainers/freecad-daily && sudo apt-get update sudo apt-get install build-essential python libcoin60-dev libsoqt4-dev \ libxerces-c2-dev libboost-dev libboost-date-time-dev libboost-filesystem-dev \ libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev \ libboost-serialization-dev libboost-signals-dev libboost-regex-dev libboost-thread-dev \ libqt4-dev qt4-dev-tools python2.7-dev libopencascade-dev libsoqt4-dev \ libode-dev subversion cmake libeigen2-dev libsimage-dev python-qt4 \ libtool autotools-dev automake bison flex gfortran libeigen3-dev libqtwebkit-dev git

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad freecad
 * 1) checkout the latest source

cd freecad
 * 1) go to source dir

cmake.
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

./FreeCAD
 * 1) use FreeCAD


 * 1) Update latest version

cd freecad
 * 1) go to source dir

git pull
 * 1) Update source

cmake.
 * 1) build configuration

make
 * 1) build FreeCAD

OpenSUSE 12.2
No external Repositories are needed to compile FreeCAD 0.13 with this release. However, there is an imcompatability with python3-devel which needs to be removed. FreeCAD can be compiled from GIT similar to in OpenSUSE 12.2

sudo zypper install gcc cmake OpenCASCADE-devel libXerces-c-devel \ python-devel libqt4-devel python-qt4 Coin-devel SoQt-devel boost-devel \ libode-devel libQtWebKit-devel libeigen3-devel gcc-fortran git swig
 * 1) install needed packages for development

mkdir FreeCAD-Compiled cd FreeCAD-Compiled
 * 1) create new dir, and go into it

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad
 * 1) get the source


 * 1) Now you will have subfolder in this location called free-cad. It contains the source

mkdir FreeCAD-Build1 cd FreeCAD-Build1
 * 1) make another dir for compilation, and go into it

cmake ../free-cad
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

Since you are using git, next time you wish to compile you do not have to clone everything, just pull from git and compile once more

cd free-cad
 * 1) go into free-cad dir created earlier

git pull
 * 1) pull

cd ..
 * 1) get back to previous dir


 * 1) Now repeat last few steps from before.

mkdir FreeCAD-Build2 cd FreeCAD-Build2
 * 1) make another dir for compilation, and go into it

cmake ../free-cad
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

OpenSUSE 12.1
For FreeCAD 0.13 unstable you need to add Eigen3 and swig libraries, that don't seem to be in standard repos. You can get them with one-click install here:

Eigen3: http://software.opensuse.org/search?q=eigen3&baseproject=openSUSE%3A12.1&lang=en&exclude_debug=true

swig: http://software.opensuse.org/search?q=swig&baseproject=openSUSE%3A12.1&lang=en&exclude_debug=true

sudo zypper install gcc cmake OpenCASCADE-devel libXerces-c-devel \ python-devel libqt4-devel python-qt4 Coin-devel SoQt-devel boost-devel \ libode-devel libQtWebKit-devel libeigen3-devel gcc-fortran git
 * 1) install needed packages for development

mkdir FreeCAD-Compiled cd FreeCAD-Compiled
 * 1) create new dir, and go into it

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad
 * 1) get the source


 * 1) Now you will have subfolder in this location called free-cad. It contains the source

mkdir FreeCAD-Build1 cd FreeCAD-Build1
 * 1) make another dir for compilation, and go into it

cmake ../free-cad
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

Since you are using git, next time you wish to compile you do not have to clone everything, just pull from git and compile once more

cd free-cad
 * 1) go into free-cad dir created earlier

git pull
 * 1) pull

cd ..
 * 1) get back to previous dir


 * 1) Now repeat last few steps from before.

mkdir FreeCAD-Build2 cd FreeCAD-Build2
 * 1) make another dir for compilation, and go into it

cmake ../free-cad
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

OpenSuse 11.2
This script is not working at the moment because:
 * libXerces-c-devel seams to be disappeared ....

sudo zypper install gcc cmake subversion OpenCASCADE-devel \ libXerces-c-devel python-devel libqt4-devel python-qt4 \ Coin-devel SoQt-devel boost-devel libode-devel libQtWebKit-devel \ libeigen2-devel gcc-fortran
 * 1) install needed packages for development

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad freecad
 * 1) get the source

cd freecad
 * 1) go to source dir

cmake.
 * 1) build configuration

nice make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

OpenSuse 11.1
sudo zypper -p http://packman.unixheads.com/suse/11.1/
 * 1) additional repository (for OpenCascade)

sudo zypper install gcc cmake subversion OpenCASCADE-devel \ libXerces-c-devel python-devel libqt4-devel python-qt4 \ Coin-devel SoQt-devel boost-devel libode-devel libQtWebKit-devel \ libeigen2-devel
 * 1) install needed packages for development

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad freecad
 * 1) get the source

cd freecad
 * 1) go to source dir

cmake.
 * 1) build configuration

nice make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

Debian Squeeze
sudo apt-get install build-essential python libcoin60-dev libsoqt4-dev \ libxerces-c2-dev libboost-dev libboost-date-time-dev libboost-filesystem-dev \ libboost-graph-dev libboost-iostreams-dev libboost-program-options-dev \ libboost-serialization-dev libboost-signals-dev libboost-regex-dev \ libqt4-dev qt4-dev-tools python2.5-dev \ libsimage-dev libopencascade-dev \ libsoqt4-dev libode-dev subversion cmake libeigen2-dev python-pivy \ libtool autotools-dev automake gfortran
 * 1) get the needed tools and libs

git clone git://free-cad.git.sourceforge.net/gitroot/free-cad/free-cad freecad
 * 1) checkout the latest source

cd freecad
 * 1) go to source dir

cmake.
 * 1) build configuration

make
 * 1) build FreeCAD

cd bin ./FreeCAD -t 0
 * 1) test FreeCAD

Updating the source code
FreeCAD development happens fast, everyday or so there are bug fixes or new features. The cmake systems allows you to intelligently update the source code, and only recompile what has changed, making subsequent compilations very fast. Updating the source code with git or subversion is very easy:

cd freecad (or where you cloned the source code the first time) git pull (if you are using git)

Move into the appropriate build directory and run cmake again (as cmake updates the version number data for the Help menu, ...about FreeCAD), however you do not need to add the path to source code after "cmake", just a space and a dot:

cd ../freecad-build (or wherever your build directory is located)

cmake.

make