あなたの習慣について教えてください!!

unix上で
./configure(そのあとに、makeコマンドが続くような形式
で実行できるファイルの事を知りたいのですが、どういったワードで調べたら宜しいでしょうか?
シェルの形式に近いのかな?と思ったのですが、コメントアウトされていて調べきれていません。

./configure内は以下の通りです

#! /bin/sh
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.65 for cvc3 devel.
#
#
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001,
# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software Foundation,
# Inc.
#
#
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
## -------------------- ##
## M4sh Initialization. ##
## -------------------- ##

# Be more Bourne compatible
DUALCASE=1; export DUALCASE # for MKS sh
if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
emulate sh
NULLCMD=:
# Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
# is contrary to our usage. Disable this feature.
alias -g '${1+"$@"}'='"$@"'
setopt NO_GLOB_SUBST
else
case `(set -o) 2>/dev/null` in #(
*posix*) :
set -o posix ;; #(
*) :
;;
esac
fi


as_nl='
'
export as_nl
# Printing a long string crashes Solaris 7 /usr/bin/printf.
as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
# Prefer a ksh shell builtin over an external printf program on Solaris,
# but without wasting forks for bash or zsh.
if test -z "$BASH_VERSION$ZSH_VERSION" \
&& (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='print -r --'
as_echo_n='print -rn --'
elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
as_echo='printf %s\n'
as_echo_n='printf %s'
else

以下略

A 回答 (1件)

具体的に何が知りたいのですか?


いくつか挙げます。それ以外なら、もう少し具体的に書いてください。

ファイルの先頭が #! で始まるテキストファイルに実行権を付けて実行すると、#! 以降に指定したコマンドで、当該スクリプトが実行されます。
# shebang と言います。

#! /bin/sh
なので、
./configure

/bin/sh ./configure
と同様です。よって、このconfigure は shスクリプトとして書かれています。


configureファイルを自作することもできますが、通常は、テンプレートを作成して、ツールで変換します。
> # Generated by GNU Autoconf 2.65 for cvc3 devel.
というのは、 GNU autoconf というツールで作成した、ということです。
OSSのソースコードでは、テンプレートである configure.ac やそれに関連するファイル群だけが配布され、configureは autoconf で自分で用意する、ということもあります。


大抵の場合 --help オプションを付けると、利用できるオプションの一覧が出力されます。
    • good
    • 0
この回答へのお礼

ありがとうございます!。

具体的に知りたい事として、とっかかりの調べるヒントがほしいということでした。
#! /bin/sh
はコメントアウトされていて実行には関係ないと勘違いしておりました。
調べてみたら情報かなり出てきますね!

もしshebangの構文の解説で理解しやすいサイトがあればお伺いしたいと考えていましたが、
出来る限り自己解決してみます!

お礼日時:2014/11/15 19:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!