SST Lab Dokuwiki Header header picture

ユーザ用ツール

サイト用ツール


osx:commandlinetools

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
osx:commandlinetools [2024/03/05 11:42] – [ 基本の手作業] kimiosx:commandlinetools [2024/03/05 12:10] (現在) – [MacPorts版] kimi
行 11: 行 11:
  
 ==== ロードモジュールの作成 ==== ==== ロードモジュールの作成 ====
-''tree''は単に階層ディレクトリ構造を読み取り、それをテキストベース出力を出すだけなので、特別なツールやライブラリは必要ないはず、と思ってここで取り上げている。いや正直に白状するととある理由でtreeコマンドがどうしても欲しかったのでインストールしようとしたところ、どのバッケージ管理システムを導入するかまだ決めかねていたので、ここは大昔のやりかたでやってみようと思い至っただけなのだけれど。+''tree''は単に階層ディレクトリ構造を読み取り、それをテキストベースで整形して出力すだけなので、特別なツールやライブラリは必要ないはず、と思ってここで取り上げている。いや正直に白状するととある理由でtreeコマンドがどうしても欲しかったのでインストールしようとしたところ、どのバッケージ管理システムを導入するかまだ決めかねていたので、ここは大昔のやりかたでやってみようと思い至っただけなのだけれど。
  
-ダウンロードしてきた''tree-2.1.1.tgz'' +  - ダウンロードしてきた''tree-2.1.1.tgz''を解凍し、 
-  - システムにインストールする+  - 作成された''tree-2.1.1''ディレクトリ移動し、 
 +  - 内容を確認する。 
 +<code sh> 
 +$ tar zxf tree-2.1.1.tgz 
 +$ cd tree-2.1.1 
 +$ ls 
 +CHANGES README file.c info.c tree.c 
 +INSTALL TODO filter.c json.c tree.h 
 +LICENSE color.c hash.c list.c unix.c 
 +Makefile doc html.c strverscmp.c xml.c 
 +$  
 +</code> 
 +ここで''README''や''INSTALL''を読みなさいというのが定石かつ必須なのだけれど、見るからにmake一発なので、ロートルは、 
 +<code sh> 
 +kimi@persimmon tree-2.1.1 % make -n  
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o tree.o tree.c 
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o list.o list.c 
 +
 +
 +
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o html.o html.c 
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o strverscmp.o strverscmp.c 
 +gcc  -o tree tree.o list.o hash.o color.o file.o filter.o info.o unix.o xml.o json.o html.o strverscmp.o 
 +kimi@persimmon tree-2.1.1 %  
 +$  
 +</code> 
 +なんてことをやってみる。''make''かけるときは''-n''で様子を見るのは絶対。これなら問題なさそうなので''make''する。 
 +<code sh> 
 +$ make 
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o tree.o tree.c 
 +In file included from tree.c:19: 
 +./tree.h:211:17: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] 
 +char *gnu_getcwd(); 
 +                ^ 
 +                 void 
 +./tree.h:275:22: warning: a function declaration without a prototype is deprecated in all versions of C [-Wstrict-prototypes] 
 +
 +
 +
 +2 warnings generated. 
 +gcc -ggdb -std=c11 -pedantic -Wall -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -c -o strverscmp.o strverscmp.c 
 +strverscmp.c:4:28: warning: invalid UTF-8 in comment [-Winvalid-utf8] 
 +   Contributed by Jean-Fran<E7>ois Bignolles <bignolle@ecoledoc.ibp.fr>, 1997. 
 +                           ^ 
 +strverscmp.c:160:7: warning: no newline at end of file [-Wnewline-eof] 
 +#endif 
 +      ^ 
 +2 warnings generated. 
 +gcc  -o tree tree.o list.o hash.o color.o file.o filter.o info.o unix.o xml.o json.o html.o strverscmp.o 
 +
 +</code> 
 +ウォーニングがちょっと出てるけどほとんどがプロトタイプ宣言が無いという類なので、まあよかろう。後はコメントにUTF-8使ってるってやつで、だからプログラムはコメントまで含めて米語だけで書けといつも言ってるんだ。最後のやつは、まあ大丈夫だろう。 
 + 
 +==== コマンドのインストール ==== 
 + 
 +<code sh> 
 +$ make install -n 
 +install -d /usr/local/bin 
 +install -d /usr/local/man/man1 
 +install tree /usr/local/bin/tree;
 + install -m 644 doc/tree.1 /usr/local/man/man1/tree.1 
 +$ sudo make install  
 +</code> 
 +''make install''も先ずは''-n''付きで確認する。単に''/usr/local/''以下にファイルを配置するだけなので管理者権限で''make install''しておしまい。 
 + 
 +試しに実行してみるとこんな感じ。 
 +<code sh> 
 +$ tree tree-2.1.1 
 +tree-2.1.1 
 +├── CHANGES 
 +├── INSTALL 
 +├── LICENSE 
 +├── Makefile 
 +├── README 
 +├── TODO 
 +├── color.c 
 +├── doc 
 +│   ├── global_info 
 +│   ├── tree.1 
 +│   └── xml.dtd 
 +├── file.c 
 +├── filter.c 
 +├── hash.c 
 +├── html.c 
 +├── info.c 
 +├── json.c 
 +├── list.c 
 +├── strverscmp.c 
 +├── tree.c 
 +├── tree.h 
 +├── unix.c 
 +└── xml.c 
 + 
 +2 directories, 22 files 
 +</code>
  
 ===== MacPorts版 ===== ===== MacPorts版 =====
行 61: 行 155:
  
  
-===== MacPorts版 =====+===== Homebrew版 =====
   - Homebrewのインストール([[https://brew.sh/index_ja|Go official site.]])   - Homebrewのインストール([[https://brew.sh/index_ja|Go official site.]])
 ===== Fink版 ===== ===== Fink版 =====
osx/commandlinetools.1709606522.txt.gz · 最終更新: 2024/03/05 11:42 by kimi

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki