3

GNU autotoolsを使用してCで作成したプログラムを作成しようとしていますが、configure実行すると吐き出されるため、設定が間違っているようです。

configure: error: C compiler cannot create executables

調べてみるとconfig.log、次のようになります。

configure:2846: checking for C compiler default output file name
configure:2868: gcc    conftest.c  >&5
conftest.c:3:25: warning: missing terminating " character
conftest.c:4: error: expected '=', ',', ';', 'asm' or '__attribute__' before ':' token
configure: failed program was:
| /* confdefs.h.  */
| #define PACKAGE_NAME "Jackoff"
| #define PACKAGE_TARNAME "jackoff
|       http://github.com/enaeseth/jackoff"
| #define PACKAGE_VERSION "0.1"
| #define PACKAGE_STRING "Jackoff 0.1"
| #define PACKAGE_BUGREPORT "Eric Naeseth <enaeseth@gmail.com>"
| #define PACKAGE "jackoff
|       http://github.com/enaeseth/jackoff"
| #define VERSION "0.1"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }

何らかの理由で、autoconfは無効なテストファイルを生成しています:セミコロンとして表示されるその行には何が必要ですか?ビルドはUbuntu9.04とMacOSX 10.6でも同じように失敗するので、これは間違いなく私のせいであり、環境のせいではありません。

4

4 に答える 4

3

問題は、ファイルに設定されているPACKAGE_TARNAME(および)に改行があることです。何が含まれているのかを確認し、修正して、スクリプトを再生成する必要があります。PACKAGEconfigure.acconfigure

私のconfigure.acスクリプトの1つに(上部近くに)含まれています:

AC_CONFIG_HEADER(config.h)

PACKAGE="sqlcmd"
VERSION="86.04"

AC_MSG_RESULT([Configuring $PACKAGE version $VERSION])

AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
于 2009-09-22T18:18:01.023 に答える
2

問題は「」の改行文字にあるようです。それを確認します。jackoff http://github.com/enaeseth/jackoff

于 2009-09-22T18:17:11.947 に答える
0

PACKAGE_TARNAME大丈夫見ていません。一つには、問題の直接の原因である改行が埋め込まれています。

于 2009-09-22T18:19:15.980 に答える
0

AC_INITの先頭に追加の引数がありますconfigure.ac。削除するだけです。

于 2009-09-22T18:19:57.207 に答える