Gaucheをインストールすると、Gaucheでの開発に役立ついくつかの補助プログラムも インストールされます。
gauche-config
インストールされたGaucheのコンフィグレーションパラメータを問い合わせるプログラムです。
gauche-package
拡張パッケージマネージャ。拡張パッケージをインストールし、またインストールされた 拡張の設定を問い合わせることができます。 自分で新たな拡張を書く際にも使えます。
gauche-install
install
プログラムの代替。Gauche拡張モジュールは、システムのinstall
コマンドのかわりにこのプログラムを使えば、プラットフォームごとの細かい違いを
気にする必要がなくなります。
gauche-compile-r7rs
このプログラムはGaucheスクリプトから実行可能バイナリを作るのに使えます。
gauche-cesconv
さらに、Gaucheのconfigure時に--enable-shared-commands
を渡すと、
以下のプログラムも追加でインストールされます。
scheme-r7rs
scheme-srfi-0
scheme-srfi-7
これらはSRFI-22で推奨されているSchemeインタプリタの標準名です。
gosh
へのシンボリックリンクになります。
compile-r7rs
これはSRFI-138で推奨されているSchemeコンパイラ名です。
gauche-compile-r7rs
へのシンボリックリンクになります。
これらの名前はScheme界で共通のため、他のScheme処理系が同じ名前のプログラムを既に インストールしているかもしれないことに留意してください。
• 設定を問い合わせる: | ||
• 拡張パッケージの管理: | ||
• ファイルのインストール: | ||
• スクリプトのコンパイル: |
gauche-config
- 設定を問い合わせる ¶Without options, prints the command usage. With an option, prints the string associated to the option, which is determined at configuration time.
Here are some examples. Note that output may vary on your platform.
$ gauche-config --arch x86_64-pc-linux-gnu
$ gauche-config -l -lgauche-0.98 -lmbedtls -lcrypt -lrt -lm -lpthread
$ gauche-config -I -I/usr/lib/gauche-0.98/0.9.15/include
The command accepts the following arguments. You can only give at most one.
一般のパラメータ:
現在のGaucheのバージョン
Gaucheを使ったアプリケーションのコンパイルのためのパラメータ:
Gaucheを使ったプログラムをコンパイルするのに必要なインクルードパスオプション (Gaucheのインストール先のパスが空白を含んでいる場合、これは 使えません。下の–incdirsを見てください。)
Gaucheを使ったプログラムをコンパイルするのに必要なライブラリパスオプション (Gaucheのインストール先のパスが空白を含んでいる場合、これは 使えません。下の–incdirsを見てください。)
Gaucheを使ったプログラムをリンクする時に必要なライブラリオプション
このGaucheをコンパイルする時に使われたCコンパイラ名
Cプリプロセッサを走らせるコマンド
Gauche用のautoconfマクロがインストールされているディレクトリ名
現在インストールされているGaucheに使われたconfigureのオプション
autoconf形式のアーキテクチャシグネチャ (cpu-vendor-kernel-os)
それぞれ、インクルードファイルとライブラリファイルが探されるディレクトリのリスト。 各ディレクトリ名は、それが空白を含んでいる場合はクオートされています。また、 それぞれのディレクトリ名の間はUnixでは ’:’、Windowsでは ’;’ で区切られています。
これらは、追加のローカルヘッダファイルやライブラリファイルを探すために必要な ’-I’ および ’-L’ フラグのリストです。これらはconfigure時の ’–with-local’ オプションにより設定されます。追加のローカルディレクトリは、’-I’、’-L’、’–incdirs’ ’–arcdirs’ の出力にも含まれます。
ファイルをインストールするためのパラメータ:
configure時に設定されたディレクトリプレフィクス
それぞれ、システム/サイト/パッケージレベルの拡張モジュールヘッダファイルが インストールされるべきディレクトリ
それぞれ、システム/サイト/パッケージのSchemeファイルがインストールされる べきディレクトリ
それぞれ、システム/サイト/パッケージのDSOファイルがインストールされる べきディレクトリ
それぞれ、Gaucheのmanpageとinfoドキュメントがインストールされるべきディレクトリ
拡張モジュールをビルドするためのパラメータ:
コンパイルされたオブジェクトファイルの拡張子 (例: ’o’ や ’obj’)
実行可能ファイルの拡張氏(ピリオドを含む)。Unixシステムでは空文字列、 Windowsでは ’.exe’。
動的ロード(dlopen)可能なファイルの拡張子 (例: ’so’)
動的ロード可能なファイルを作るために追加で必要なCFLAGS
動的ロード可能なファイルを作るために追加で必要なLDFLAGS
動的ロード可能なファイルを作るために追加で必要なライブラリ
動的リンクされる (dlopenされるのではない) ライブラリファイルの拡張子。 通常は–so-suffixと同じだが、OSXでは ’dylib’。
動的リンクされるライブラリファイルを作るのに必要なLDFLAGS。
RPATHを埋め込むためのコンパイラフラグ
Gaucheをコンパイルする時に使われたCFLAGS。拡張モジュールをコンパイルする時にも 同じフラグを使うべき。
Cプリプロセッサに渡されるコンパイラフラグ
Gaucheを静的リンクする時に必要なリンクフラグ (’-llib’) のリスト。 ’-l’ と似ているが、これは拡張モジュールが必要とするライブラリ、 及びGaucheの静的ライブラリ本体(’-lgauche-static-X.X’)を含んでいる。
動的リンクされるlibgaucheのbasename
gauche-package
- 拡張パッケージの管理 ¶This command can be used to build and install Gauche extensions,
query installed ones, and help start building new ones.
It has several subcommands, which can be listed with
gauche-package help
.
gauche-install
- ファイルのインストール ¶This command can be used to install files. It is upper-compatible
to BSD install
command and can be used as drop-in replacement.
Notably, the first three command invocation format are compatible
with BSD install.
It has several more features that keeps Makefile
concise.
The first and second invocation format copies file(s) to dest
(a file pathname) or dir (an existing directory). You can
specify permissons, owners, etc. Basically it’s a fancier cp
.
The third format creates dir(s) if they don’t exist. Basically
it’s a fancier mkdir -p
.
The fourth format copies file … to dir. It differs from the second format in the sense that relative pathname of file is preserved. That is, if you run the following command:
gauche-install -T /usr/local/mytool foo.scm bar/baz.scm
It creates /usr/local/mytool/foo.scm and
/usr/local/mytool/bar/baz.scm. With the second format, the
subdirectory bar
won’t be created. This format is handy
when you want to install a bunch of subtrees.
The fifth format uninstall files which would be installed with -T
option. Simply change -T
option to -U
option and you’ll
clean the files.
The following command-line arguments are recognized.
If installed file has a suffix .sci, replace it for .scm. This is Gauche specific convention.
Installs files to the dir, creating paths if needed. Partial path of files are preserved. (4th format only)
Reverse the effect of -T
, e.g. removes files from its
destination dir.
Look for file … within dir; useful if VPATH
is used.
Adds #!path
before the file contents.
Useful to install scripts.
Creates directories. (3rd format only).
Change mode of the installed file.
Strip prefix dirs from file … before installation. (4th/5th format only).
Change owner of the installed file(s).
Change group of the installed file(s).
Work verbosely
Just prints what actions are to be done, but won’t execute them.
gauche-compie-r7rs
- スクリプトのコンパイル ¶For Gauche-specific programs, we have tools/build-standalone
Scheme
script (see スタンドアロン実行可能ファイルの作成). We recommend
that script, for it is more featureful.
The gauche-compile-r7rs
and compile-r7rs
script is provided
so that you can invoke a ’Scheme compiler’ with a standardized manner.
It may be handy if other tools (e.g. IDE) need to invoke a Scheme
compiler as a subprocess.
This interface is defined in SRFI-138, which also suggests the name
compile-r7rs
. We only install gauche-compile-r7rs
by
default so that we won’t accidentally clobber other implementation’s
program, but if you give --enable-shared-commands
option to
configure
script, a symbolic link compile-r7rs
is created.
Compile a Scheme source file script.scm
and produce an
executable binary. The compile-r7rs
is only installed
if Gauche is configured with --enable-shared-commands
.
Note: SRFI-138 states that if the environment variable
COMPILE_R7RS
is defined, it is assumed to a pathname of another
program and is executed instead of Gauche’s compile-r7rs
.
We think the feature is rather confusing than convenient, so we
don’t support it. If you want to run alternative implementation’s
compiler, there are more explicit means such as running it directly
or change PATH
.
The following command-line arguments are recognized.
Prepend or append path to the path list the referenced libraries are searched. These options can be specified multiple times.
Specifies output executable filename. When omitted, a.out
(on POSIX systems) or a.exe
(on Windows) are used.
Adds feature-id
to the list of feature identifiers.
This is to switch code conditionally in the source with
cond-expand
.
This option can be specified multiple times.
Note that this does not enable certain features. So you
shouldn’t specify system-reserved feature identifiers
(see プラットフォーム依存の機能). This is also different
from -D
option of tools/build-standalone
.