MacOS/jp: Difference between revisions
(Created page with "<span style="color: #000000; background: none; overflow: hidden; page-break-after: avoid; font-size: 2.0em; font-family: Georgia,Times,serif; margin-top: 1em; margin-bottom: 0...") |
|||
| (5 intermediate revisions by the same user not shown) | |||
| Line 1: | Line 1: | ||
< | <div class="pagetitle">macOS</div> | ||
本項は'''macOS'''システムでRawTherapeeをコンパイルする説明をしています。[[Linux/jp|Linux]] と [[Windows/jp| Windows]] でコンパイルする説明は別項にあります。 ここにはコンパイルの際に'''何を'''、'''どうするのか'''という詳細が書かれています。'''何故'''及びこれらコマンドの説明、ディペンデンシーのリスト、CMakeオプション、その他の情報に関しては、[[Linux/jp| Linux]] を参考にして下さい。 | 本項は'''macOS'''システムでRawTherapeeをコンパイルする説明をしています。[[Linux/jp|Linux]] と [[Windows/jp| Windows]] でコンパイルする説明は別項にあります。 ここにはコンパイルの際に'''何を'''、'''どうするのか'''という詳細が書かれています。'''何故'''及びこれらコマンドの説明、ディペンデンシーのリスト、CMakeオプション、その他の情報に関しては、[[Linux/jp| Linux]] を参考にして下さい。 | ||
| Line 17: | Line 17: | ||
=== MacPorts === | === MacPorts === | ||
{{warning/jp|1=前提条件となるライブラリーを管理するためにHomebrewを使う場合は、MacPorts或いは<code>sudo port</code>に関わるコマンドは使用しません}} | |||
以下の手順はバージョン10.9及びそれ以降のOS Xでテスト済です。 | 以下の手順はバージョン10.9及びそれ以降のOS Xでテスト済です。 | ||
* ''' | * '''前提条件:''' | ||
** | ** Xcode デベロッパーツール | ||
** | ** コマンドラインツール | ||
** MacPorts | ** MacPorts | ||
*** MacPortsとXcode | *** MacPortsとXcode デベロッパーツールの詳細設定は[https://www.macports.org MacPorts website]のウェブサイトで見ることが出来ます。 | ||
*** Appleが提供している専用システムコンパイリングは非常に古いものでOpenMPをサポートしていませんので使わないようにします。MacPortsの最新の安定したコンパイラを使います-その方がRawTherapeeの動作が速くなります。 | *** Appleが提供している専用システムコンパイリングは非常に古いものでOpenMPをサポートしていませんので使わないようにします。MacPortsの最新の安定したコンパイラを使います-その方がRawTherapeeの動作が速くなります。 | ||
* '''MacPortsの構成:''' | * '''MacPortsの構成:''' | ||
| Line 29: | Line 30: | ||
:: <code>+quartz -x11 -gnome</code> | :: <code>+quartz -x11 -gnome</code> | ||
* '''ディペンデンシー:''' | |||
: ディペンデンシーをインストールするには, ターミナルから実行します: | |||
:: <code>sudo port install git clang-9.0 ++-mp libomp gtk3 gtkmm3 gtk-osx-application-gtk3 adwaita-icon-theme libsigcxx2 lcms2 libiptcdata fftw-3-single lensfun</code> | |||
: Xcode 9.2上でコンパイルする場合は、以下を追加する必要があります: | |||
:: <code>sudo port install ld64 +ld64_xcode</code> | |||
* '''MacPortsのコンパイルシステムの構成''' | |||
: <code>cmake</code> コマンドに以下のフラッグを追加: | |||
:: <code>-DLOCAL_PREFIX=PATH:"/opt"</code> | |||
== コンパイル == | == コンパイル == | ||
| Line 355: | Line 69: | ||
-DPROC_LABEL="generic processor" \ | -DPROC_LABEL="generic processor" \ | ||
-DCACHE_NAME_SUFFIX="5-dev" \ | -DCACHE_NAME_SUFFIX="5-dev" \ | ||
-DCMAKE_C_COMPILER="clang | -DCMAKE_C_COMPILER="clang" \ | ||
-DCMAKE_CXX_COMPILER="clang++ | -DCMAKE_CXX_COMPILER="clang++" \ | ||
-DWITH_LTO="OFF" \ | -DWITH_LTO="OFF" \ | ||
-DLENSFUNDBDIR="./share/lensfun" \ | -DLENSFUNDBDIR="./share/lensfun" \ | ||
.. | .. | ||
make - | make j$(sysctl -n hw.ncpu) install | ||
make macosx_bundle | sudp make macosx_bundle | ||
</pre> | </pre> | ||
<hr> | <hr> | ||
| Line 370: | Line 84: | ||
cmake .. -DCMAKE_BUILD_TYPE="release" \ | cmake .. -DCMAKE_BUILD_TYPE="release" \ | ||
-DPROC_TARGET_NUMBER="2" \ | -DPROC_TARGET_NUMBER="2" \ | ||
-DCACHE_NAME_SUFFIX="5. | -DCACHE_NAME_SUFFIX="5.8-dev" \ | ||
-DCMAKE_C_COMPILER="clang"\ | -DCMAKE_C_COMPILER="clang"\ | ||
-DCMAKE_CXX_COMPILER="clang++" \ | -DCMAKE_CXX_COMPILER="clang++" \ | ||
-DWITH_LTO="ON" \ | -DWITH_LTO="ON" \ | ||
-DLENSFUNDBDIR="./share/lensfun" \ | -DLENSFUNDBDIR="/Applications/RawTherapee.app/Contents/Resources/share/lensfun" \ | ||
-DCMAKE_BUILD_TYPE=Release \ | -DCMAKE_BUILD_TYPE=Release \ | ||
-DOpenMP_C_FLAGS=-fopenmp=libomp \ | -DOpenMP_C_FLAGS=-fopenmp=libomp \ | ||
| Line 381: | Line 95: | ||
-DOpenMP_CXX_LIB_NAMES="libomp" \ | -DOpenMP_CXX_LIB_NAMES="libomp" \ | ||
-DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \ | -DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \ | ||
-DOpenMP_CXX_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ | -DOpenMP_CXX_FLAGS="-Wno-pass-failed-Wno-deprecated-register-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ | ||
-DOpenMP_CXX_LIB_NAMES="libomp" \ | -DOpenMP_CXX_LIB_NAMES="libomp" \ | ||
-DOpenMP_C_FLAGS="-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ | -DOpenMP_C_FLAGS="-Wno-pass-failed-Wno-deprecated-register-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \ | ||
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ | -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \ | ||
-DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib" \ | -DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib" \ | ||
| Line 391: | Line 105: | ||
=== From-Scratchでコンパイルする方法 === | === From-Scratchでコンパイルする方法 === | ||
* オプションで、この [https://raw.githubusercontent.com/Benitoite/RTdeps/master/macbuildRT.sh] 完全なコマンドリストは、from-scratch方式によるRawTherapeeのコンパイルとmacOS10. | * オプションで、この [https://raw.githubusercontent.com/Benitoite/RTdeps/master/macbuildRT.sh] 完全なコマンドリストは、from-scratch方式によるRawTherapeeのコンパイルとmacOS10.15.3/Xcode 11.1の実行に使うことが出来ます。 | ||
* | * [https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-5672538.html JDK]をインストールする必要があります。 | ||
* [https://developer.apple.com/xcode Xcode 11.1] をインストールする必要があります。 | * [https://developer.apple.com/xcode Xcode 11.1+] をインストールする必要があります。 | ||
<hr> | <hr> | ||
| Line 406: | Line 120: | ||
==== macOS 10.15 ==== | ==== macOS 10.15 ==== | ||
* macOS 10.15 ''Catalina'' | * macOS 10.15 ''Catalina'' 上でRawTherapee5.8を実行する場合は以下が必要です: | ||
** Appをコピーし<code>/Applications</code> フォルダーから実行します。 | ** Appをコピーし<code>/Applications</code> フォルダーから実行します。 | ||
** <code>/bin/sh</code>をSystem Preferences > Security & Privacy > Privacy > Full Disk Accessに追加します。プログラムを起動した最初の時だけ、自動的にこれが行われるよう要求されます。 | ** <code>/bin/sh</code>をSystem Preferences > Security & Privacy > Privacy > Full Disk Accessに追加します。プログラムを起動した最初の時だけ、自動的にこれが行われるよう要求されます。 | ||
Latest revision as of 01:49, 27 February 2020
本項はmacOSシステムでRawTherapeeをコンパイルする説明をしています。Linux と Windows でコンパイルする説明は別項にあります。 ここにはコンパイルの際に何を、どうするのかという詳細が書かれています。何故及びこれらコマンドの説明、ディペンデンシーのリスト、CMakeオプション、その他の情報に関しては、 Linux を参考にして下さい。
不明な点があれば、IRCに参加して、他の参加者に聞いてみて下さい。
ソースコードのクローン作成、ブランチの選択、CMakeの構成、実際のコンパイルの手順に関しては、 Linuxの同じセクションを参照して下さい。以下の情報はそれに追加されたものです。
ディペンデンシー
ディペンデンシーのリストはLinuxのディペンデンシーを参照して下さい。
Homebrew
以下のコマンドでRawTherapeeに関するディペンデンシーをインストールします:
brew install gtk+3 gtkmm3 gtk-mac-integration adwaita-icon-theme libsigc++ little-cms2 libiptcdata fftw lensfun wget llvm cmake expat pkgconfig libomp
MacPorts
前提条件となるライブラリーを管理するためにHomebrewを使う場合は、MacPorts或いはsudo portに関わるコマンドは使用しません |
以下の手順はバージョン10.9及びそれ以降のOS Xでテスト済です。
- 前提条件:
- Xcode デベロッパーツール
- コマンドラインツール
- MacPorts
- MacPortsとXcode デベロッパーツールの詳細設定はMacPorts websiteのウェブサイトで見ることが出来ます。
- Appleが提供している専用システムコンパイリングは非常に古いものでOpenMPをサポートしていませんので使わないようにします。MacPortsの最新の安定したコンパイラを使います-その方がRawTherapeeの動作が速くなります。
- MacPortsの構成:
- 以下のラインを/opt/local/etc/macports/variants.confに追加します。
+quartz -x11 -gnome
- ディペンデンシー:
- ディペンデンシーをインストールするには, ターミナルから実行します:
sudo port install git clang-9.0 ++-mp libomp gtk3 gtkmm3 gtk-osx-application-gtk3 adwaita-icon-theme libsigcxx2 lcms2 libiptcdata fftw-3-single lensfun
- Xcode 9.2上でコンパイルする場合は、以下を追加する必要があります:
sudo port install ld64 +ld64_xcode
- MacPortsのコンパイルシステムの構成
cmakeコマンドに以下のフラッグを追加:-DLOCAL_PREFIX=PATH:"/opt"
コンパイル
ソースコードの“クローン”の作り方、“ブランチ”の選び方、“CMakeの構成の仕方に関しては、手動コンパイリングを参照して下さい。但し、その中の”RawTherapeeをコンパイルする“に記述されているコードは無視して、以下の説明にあるコードを使います。
ビルドをアップロードする、或いは第三者とシェアする場合には、以下を使う必要があります、
-DPROC_TARGET_NUMBER="1"
そして、設定によりプロセッサラベルを手動で行います
-DPROC_LABEL="generic processor"
自分用にコンパイルする場合は以下を使います、
-DPROC_TARGET_NUMBER="2"
プロセッサラベルの設定は重要ではないのでスキップします。
貴方のビルドにコードサイニングを施す場合は、CMakeコマンドに詳細を追加します:
-DCODESIGNID="Developer ID Application: Firstname Lastname (XXXXXXXXXX)"
Appと生成されたdmg (Apple Disk Image)がコードサインされます。
貴方のコードサインしたビルドに公証を受けるため、Cmakeコマンドに貴方のappの固有の承認情報を入れます:
-DNOTARY="--username user@mail.com --password abcd-efgh-ijkl-mnop"
Appとdmgが公証され(悪意のあるアプリかどうかの確認)、綴じられます(公証チケットが貼り付けられます)。
RawTherapeeをコンパイルする
これでコンパイルの準備が出来ました:
cd ~/repo-rt
rm -rf build
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE="release" \
-DPROC_TARGET_NUMBER="1" \
-DPROC_LABEL="generic processor" \
-DCACHE_NAME_SUFFIX="5-dev" \
-DCMAKE_C_COMPILER="clang" \
-DCMAKE_CXX_COMPILER="clang++" \
-DWITH_LTO="OFF" \
-DLENSFUNDBDIR="./share/lensfun" \
..
make j$(sysctl -n hw.ncpu) install
sudp make macosx_bundle
Homebrewのディペンデンシーを使ってLiwm clan 8でコンパイルするのであれば、以下のCMakeコマンドを使います:
export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/expat/lib/pkgconfig && \
cmake .. -DCMAKE_BUILD_TYPE="release" \
-DPROC_TARGET_NUMBER="2" \
-DCACHE_NAME_SUFFIX="5.8-dev" \
-DCMAKE_C_COMPILER="clang"\
-DCMAKE_CXX_COMPILER="clang++" \
-DWITH_LTO="ON" \
-DLENSFUNDBDIR="/Applications/RawTherapee.app/Contents/Resources/share/lensfun" \
-DCMAKE_BUILD_TYPE=Release \
-DOpenMP_C_FLAGS=-fopenmp=libomp \
-DOpenMP_CXX_FLAGS=-fopenmp=libomp \
-DOpenMP_C_LIB_NAMES="libomp" \
-DOpenMP_CXX_LIB_NAMES="libomp" \
-DOpenMP_libomp_LIBRARY="/usr/local/lib/libomp.dylib" \
-DOpenMP_CXX_FLAGS="-Wno-pass-failed-Wno-deprecated-register-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
-DOpenMP_CXX_LIB_NAMES="libomp" \
-DOpenMP_C_FLAGS="-Wno-pass-failed-Wno-deprecated-register-Xpreprocessor -fopenmp /usr/local/lib/libomp.dylib -I/usr/local/include" \
-DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
-DCMAKE_EXE_LINKER_FLAGS="-L/usr/local/opt/libffi/lib -L/usr/local/lib" \
-DCMAKE_AR="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ar" \
-DCMAKE_RANLIB="/usr/local/Cellar/llvm/8.0.0/bin/llvm-ranlib"
From-Scratchでコンパイルする方法
- オプションで、この [1] 完全なコマンドリストは、from-scratch方式によるRawTherapeeのコンパイルとmacOS10.15.3/Xcode 11.1の実行に使うことが出来ます。
- JDKをインストールする必要があります。
- Xcode 11.1+ をインストールする必要があります。
RawTherapeeの実行とシェア
ビルドディレクトリーの中にディスクイメージを見つけることが出来るでしょう;これはビルドがディストリビューション用であり、前述したvariants.confで貴方が特定したアーキテクチャー要件を満たすコンピューターであればどれでもビルドを実行することが出来ます。
RawTherapeeのプロジェクトに貴方のビルドを提供するために、dmgとAboutThisBuild.txtファイルをzipで圧縮して下さい。そして、以下のテンプレートに従ってそのzipファイルに名前を付けます:
- RawTherapee_OSX_<minimum supported macOS version>_64_<RawTherapee version>.zip
例えば、貴方のビルドがRawTherapee 5.2-dev-g1a2b3c4dのmacOS 10.12用であれば、その名前は:
- RawTherapee_OSX_10.12_64_5.2-dev-g1a2b3c4d.zipとなります。
そのzipアーカイブをhttp://filebin.net/にアップロードし、open a new issue on our GitHub pageにそのリンクを貼り付けて下さい、そうすれば私たちがウェブサイトにアップロードできます。
macOS 10.15
- macOS 10.15 Catalina 上でRawTherapee5.8を実行する場合は以下が必要です:
- Appをコピーし
/Applicationsフォルダーから実行します。 /bin/shをSystem Preferences > Security & Privacy > Privacy > Full Disk Accessに追加します。プログラムを起動した最初の時だけ、自動的にこれが行われるよう要求されます。
- Appをコピーし