「ビルド方法」の版間の差分

提供: KiCad.jp Wiki
ナビゲーションに移動 検索に移動
5行目: 5行目:
wxPythonの公式Webページから直接ダウンロードできるのは[http://sourceforge.net/projects/wxpython/files/wxPython/2.9.4.0/wxPython-src-2.9.4.0.tar.bz2/download 2.9.4.0]だが、SourceForgeにはincludeファイル指定のミスを直した2.9.4.1の[http://sourceforge.net/projects/wxpython/files/wxPython/2.9.4.0/wxPython-src-2.9.4.1.patch/download パッチファイル]が存在する。<br>
wxPythonの公式Webページから直接ダウンロードできるのは[http://sourceforge.net/projects/wxpython/files/wxPython/2.9.4.0/wxPython-src-2.9.4.0.tar.bz2/download 2.9.4.0]だが、SourceForgeにはincludeファイル指定のミスを直した2.9.4.1の[http://sourceforge.net/projects/wxpython/files/wxPython/2.9.4.0/wxPython-src-2.9.4.1.patch/download パッチファイル]が存在する。<br>
wxWidgetsを展開後,include/wx/msw/setup0.h内のwxUSE_STLマクロを1に設定する.<br>
wxWidgetsを展開後,include/wx/msw/setup0.h内のwxUSE_STLマクロを1に設定する.<br>
また、build/tools/build-wxwidgets.pyとwxPython/build-wxpython.pyを開き、getVisCVersion関数を<br>
また、build/tools/build-wxwidgets.pyとwxPython/build-wxpython.py,wxPython/config.pyを開き、getVisCVersion関数を<br>
<pre>def getVisCVersion():
<pre>def getVisCVersion():
     text = getoutput("cl.exe")
     text = getoutput("cl.exe")

2012年12月12日 (水) 13:27時点における版

Windows

依存ライブラリwxPythonのビルド(BZR3257以降)

KiCadにPythonスクリプトによるプラグイン機能が追加されたので、これからはこちらのライブラリを使用する。
wxWidgets 2.9.4.1を,VC++2010 Express Editionにてビルド.
wxPythonの公式Webページから直接ダウンロードできるのは2.9.4.0だが、SourceForgeにはincludeファイル指定のミスを直した2.9.4.1のパッチファイルが存在する。
wxWidgetsを展開後,include/wx/msw/setup0.h内のwxUSE_STLマクロを1に設定する.
また、build/tools/build-wxwidgets.pyとwxPython/build-wxpython.py,wxPython/config.pyを開き、getVisCVersion関数を

def getVisCVersion():
    text = getoutput("cl.exe")
    if 'Version 15' in text:
        return '9'
    elif 'Version 16' in text:
        return '10'
    # TODO: Add more tests to get the other versions...
    else:
        return 'FIXME'

のように修正。 VC付属のコマンドラインから,wxPython内で,
python build-wxpython.py --unicode --extra_make="BUILD=release SHARED=0 USE_OPENGL=1 UNICODE=1" include/platform.hの154行目を#include "wx/msw/setup.h"とごまかしてみたり。

依存ライブラリwxWidgetsのビルド(BZR3256以前)

KiCadは2.9.3以上のwxWidgetsでないといけないので,StableリリースではなくDevelopmentリリースを使うところに注意!
wxWidgets 2.9.3を,VC++2010 Express Editionにてビルド.
参考:Jazz++ MIDI Sequencer
wxWidgetsを展開後,include/wx/msw/setup.h内のwxUSE_STLマクロを1に設定する.
VC付属のコマンドラインから,build/msw内で,
nmake BUILD=release SHARED=0 USE_OPENGL=1 UNICODE=1 -f makefile.vc
MONOLITHIC=1 にすると,案の定,KiCadのCMakeで通らない.

画像リソースのコード化

KiCad内で使用されているアイコン等の画像部品はビルド時にコード化されている必要があるが,それらはバージョン管理からは外されている.そのため,KiCad本体のビルド前に画像ファイルからコード化しておく必要がある.

  1. ImagaMagick (パスも通すこと)
  2. zlib (msys では mingw-get install libz でインストール可能)
  3. libpng
  4. icoutils
  5. Incskape (パスも通すこと)

以上のライブラリを事前にインストールしておく.CygwinかMSYSの環境を作っておくこと推奨.

KiCadのビルド

BZR3256ソースを,VC++2010 Express Editionにてビルド.
CMakeで,wxUSE_UNICODEとKICAD_STABLE_VERSIOINにチェック.
Pythonプラグインの機能をONにしたければ,KICAD_SCRIPTINGとKICAD_SCRIPTING_WXPYTHONもチェックしておく.KICAD_SCRIPTING_MODULESのオプションは,Pythonを独立してインストールしている人向け.
CMakeで,CMAKE_INSTALL_PREFIXをpackaging/windowsにしておく.
必要があれば,common/build_versioin.cpp 内でKICAD_BUILD_VERSIONのパラメータを変更.
生成されたソリューションファイルで,Releaseビルド.

Linux

Mac OSX

参考:ShareBrained Technology

  1. git clone git://gist.github.com/3605799.git
  2. svn checkout http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk wxWidgets
  3. cd wxWidgets
  4. patch -p0 <../3605799/wxWidgets-kicad-overlay.patch
  5. patch -p0 <../3605799/wxWidgets-magnify-macosx.patch
  6. mkdir build-release
  7. cd build-release
  8. ../configure --enable-release --enable-unicode=yes --disable-shared --enable-monolithic --with-opengl --with-expat=builtin --enable-aui --with-osx_cocoa --enable-universal-binary=i386,x86_64 --with-macosx-version-min=10.5 --prefix=$PWD/../build-release CFLAGS="-DMAC_OS_X_VERSION_MAX_ALLOWED=1080 -DNDEBUG" CXXFLAGS="-DMAC_OS_X_VERSION_MAX_ALLOWED=1080 -DNDEBUG"
  9. make
  10. cd ../..
  11. bzr branch lp:kicad
  12. cd kicad
  13. patch -p0 <../3605799/kicad-macosx.patch
  14. mkdir build-xcode
  15. cd build-xcode
  16. cmake -DwxWidgets_CONFIG_EXECUTABLE=$PWD/../../wxWidgets/build-release/wx-config -DwxWidgets_wxrc_EXECUTABLE=$PWD/../../wxWidgets/build-release/utils/wxrc/wxrc -DKICAD_STABLE_VERSION=ON -DCMAKE_CXX_FLAGS=-D__ASSERTMACROS__ -DwxUSE_UNICODE=ON -DCMAKE_INSTALL_PREFIX=$PWD/../packaging/mac-osx -G Xcode ..
  17. open -a Xcode kicad.xcodeproj

 Xcodeでは,各プロジェクトのOS X Deployment TargetをOS X 10.5に設定.また,Compiler for C/C++/Objective-CをLLVM GCC 4.2に設定する.LLVM GCC 4.0だと,EeSchemaのビルドが通らない.
 Build for Archivingしたあと,ターゲットをinstallに変えて,再度ビルドすることで,packaging/mac-osxディレクトリ内に必要なファイルがそろう.
 docについても,installのターゲットを同ディレクトリに設定し(CMake),インストールすることで合体.

パッケージ化

 packaging-mac-osx内のosx-package.pmdocをPaclageMaker(OSX10.8からは,Auxiliary Tools for XCodeとしてXcodeから分割されてしまったので,Mac Dev Centerからダウンロード)で開く.
 ビルドすればパッケージの完成.