gnustep:install-from-source-fedora
差分
このページの2つのバージョン間の差分を表示します。
| 次のリビジョン | 前のリビジョン | ||
| gnustep:install-from-source-fedora [2026/02/19 16:04] – 作成 freemikan | gnustep:install-from-source-fedora [2026/02/25 02:49] (現在) – [1. GNUstep Make (tools-make)] Tweak just minor wording freemikan | ||
|---|---|---|---|
| 行 36: | 行 36: | ||
| ===== 1. GNUstep Make (tools-make) ===== | ===== 1. GNUstep Make (tools-make) ===== | ||
| - | 詳しい説明は INSTALL に書かれています。 | + | 詳しい説明は |
| GNUstep Make は GNUstep を利用するプロジェクトをビルドするための基本的なビルドツールで、ほぼ必須です。 | GNUstep Make は GNUstep を利用するプロジェクトをビルドするための基本的なビルドツールで、ほぼ必須です。 | ||
| 他のライブラリ (Base、GUI、Backend) をビルドするために必要なので、まず最初にインストールする必要があります。 | 他のライブラリ (Base、GUI、Backend) をビルドするために必要なので、まず最初にインストールする必要があります。 | ||
| GCC を使うならただ configure と make を実行すればよいだけですが、Clang を利用するためには調整が必要です。 | GCC を使うならただ configure と make を実行すればよいだけですが、Clang を利用するためには調整が必要です。 | ||
| - | そして、最も引っかかりやすいポイントでもあります。 | + | そして最もつまづきやすいポイントでもあります。 |
| configureは以下のオプションを指定して実行します。 | configureは以下のオプションを指定して実行します。 | ||
| 行 54: | 行 54: | ||
| </ | </ | ||
| - | ~--with-runtime-abi=gnustep-x.y~ の ~x.y~ は libobjc2 のバージョンに合わせます。 | + | '' |
| 素直に上記のコマンドを実行すると、たぶんエラーになります。 | 素直に上記のコマンドを実行すると、たぶんエラーになります。 | ||
| エラーになったら config.log を確認します。 | エラーになったら config.log を確認します。 | ||
| ※エラーにならなかったらmakeに進んでください。 | ※エラーにならなかったらmakeに進んでください。 | ||
| - | おそらく、clang のオプション | + | おそらく、clang のオプション |
| このオプションをサポートするclangのバージョンは存在しません。 | このオプションをサポートするclangのバージョンは存在しません。 | ||
| configureスクリプトの該当箇所を探して修正します。 | configureスクリプトの該当箇所を探して修正します。 | ||
| - | ~-V~ と~-qversion~ を、clangがサポートする適切なオプション | + | '' |
| あるいは削除してしまいます。 | あるいは削除してしまいます。 | ||
| 行 79: | 行 79: | ||
| prefixを指定しなければ /usr/local 以下にインストールされます。 | prefixを指定しなければ /usr/local 以下にインストールされます。 | ||
| - | アンインストールは | + | アンインストールは |
| - | ~make install~ が通ったら、以下のコマンドで GNUstep Make を有効にします。 | + | '' |
| <cli> | <cli> | ||
| 行 95: | 行 95: | ||
| 大まかにこのような出力にならなければどこかで失敗しています。 | 大まかにこのような出力にならなければどこかで失敗しています。 | ||
| + | |||
| + | source は、別のシェルを起動したらそのたびに実行する必要があります。 | ||
| + | 面倒であれば、シェルの profile や rc ファイルなどに書いてしまうのもひとつの手です。 | ||
| 以降の作業は GNUstep Make が有効になっている前提で進めます。 | 以降の作業は GNUstep Make が有効になっている前提で進めます。 | ||
| 行 100: | 行 103: | ||
| ===== 2. GNUstep Base (libs-base) ===== | ===== 2. GNUstep Base (libs-base) ===== | ||
| - | 詳しい説明は INSTALL に書かれています。 | + | 詳しい説明は |
| 依存するライブラリは dnf でインストールできます。 | 依存するライブラリは dnf でインストールできます。 | ||
| 行 122: | 行 125: | ||
| ===== 3. GNUstep GUI (libs-gui) ===== | ===== 3. GNUstep GUI (libs-gui) ===== | ||
| - | 詳しい説明は INSTALL に書かれています。 | + | 詳しい説明は |
| - | 依存するライブラリはdnfでインストールできます。 | + | 依存するライブラリは dnf でインストールできます。 |
| <cli> | <cli> | ||
| 行 130: | 行 133: | ||
| </ | </ | ||
| - | configureとmakeを実行します。 | + | configure と make を実行します。 |
| <cli> | <cli> | ||
| 行 142: | 行 145: | ||
| ===== 4. GNUstep Backend (libs-back) ===== | ===== 4. GNUstep Backend (libs-back) ===== | ||
| - | 詳しい説明は INSTALL に書かれています。 | + | 詳しい説明は |
| configure と make を実行します。 | configure と make を実行します。 | ||
| 行 152: | 行 155: | ||
| </ | </ | ||
| + | GNUstep 本体のインストールはこれで完了ですが、まだやらないといけなことがあります。 | ||
| - | ===== まだ完全ではない - フォントの問題 ===== | + | |
| - | GNUstep 本体のセットアップは一応これまでで完了です。 | + | ===== フォントの問題の対応 |
| - | Objective-C でプログラムのコードを書いてビルドするところまではできます。 | + | この段階で Objective-C |
| しかし、まだ実行環境としては不完全です。 | しかし、まだ実行環境としては不完全です。 | ||
| + | |||
| フォント周りで致命的な問題があって、このままではGUIアプリケーションが動作しません。 | フォント周りで致命的な問題があって、このままではGUIアプリケーションが動作しません。 | ||
| 具体的には、デフォルトのシステムフォント Helvetica が GNUstep に同梱されていないためです。 | 具体的には、デフォルトのシステムフォント Helvetica が GNUstep に同梱されていないためです。 | ||
| - | Helvetica はプロプライエタリなフォントであるため、代わりのフォントを使用するように設定する必要があります。 | + | Helvetica はプロプライエタリなフォントであるため扱いにくいです。 |
| - | + | 代わりに別のフォントを使用するように設定する必要があります。 | |
| - | 残念ながら、あまり分かりやすい手順だとは言えません。 | + | 残念ながら、その手順はあまり分かりやすいものではありません。 |
| - | 正式なドキュメントがどこにあるかわかりませんでした。 | + | (([[https:// |
| - | [[https:// | + | |
| 以下の手順でフォントの設定を変更します。 | 以下の手順でフォントの設定を変更します。 | ||
| - | - 既存の TTF/OTF などのフォントから、GNUstep が認識する | + | - 既存の TTF/OTF などのフォントから nfont を生成する |
| - .nfont フォルダを適切な場所に配置する | - .nfont フォルダを適切な場所に配置する | ||
| - その nfont を使用するように設定する | - その nfont を使用するように設定する | ||
| - | TTF/OTF のフォントを直接使うことはできないので nfonts という形式にまとめないといけないけません。 | + | GNUstep は TTF/OTF のフォントを直接使うことはできないので nfonts という形式にまとめないといけないけません。 |
| これは mknfonts というツールで自動化できます。 | これは mknfonts というツールで自動化できます。 | ||
| デフォルトで使用するフォントの設定は defaults というコマンドで行います。 | デフォルトで使用するフォントの設定は defaults というコマンドで行います。 | ||
| - | これらを実際に行う一連のコマンドは、以下のようになります。(一例です) | + | 次の一連のコマンドは、これらを実際に行う一例です。 |
| <cli> | <cli> | ||
| 行 190: | 行 194: | ||
| これで、ひとまずGUIアプリケーションも実行できるようになります。 | これで、ひとまずGUIアプリケーションも実行できるようになります。 | ||
| + | |||
| + | |||
| + | ===== 確認のためのテストプログラム ===== | ||
| 単純なパネルを表示するプログラムを書いて、実行できることを確認しておきます。 | 単純なパネルを表示するプログラムを書いて、実行できることを確認しておきます。 | ||
| + | |||
| + | main.m: | ||
| + | <code objc> | ||
| + | #import < | ||
| + | #import < | ||
| + | |||
| + | int main (void) { | ||
| + | @autoreleasepool { | ||
| + | [NSApplication sharedApplication]; | ||
| + | NSRunAlertPanel (@" | ||
| + | } | ||
| + | return 0; | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | GNUmakefile: | ||
| + | <code makefile> | ||
| + | include $(GNUSTEP_MAKEFILES)/ | ||
| + | |||
| + | APP_NAME = PanelExample | ||
| + | PanelExample_HEADERS = | ||
| + | PanelExample_OBJC_FILES = main.m | ||
| + | PanelExample_RESOURCE_FILES = | ||
| + | |||
| + | include $(GNUSTEP_MAKEFILES)/ | ||
| + | </ | ||
| + | |||
| + | ビルドと実行: | ||
| + | <cli> | ||
| + | $ make | ||
| + | $ openapp ./ | ||
| + | </ | ||
| + | |||
| + | 実行結果: | ||
| + | |||
| + | {{: | ||
| + | |||
| + | 実行中に数行程度の煩わしいログが流れるかもしれません。 | ||
| + | 今の段階では無視しておくことにします。 | ||
gnustep/install-from-source-fedora.1771484683.txt.gz · 最終更新: by freemikan
