2016-12-24 7 views
0

マイセットアップを使用してくださいかなり新しいです:autoreconf -fiエラー:未定義である可能性が高いマクロ:AC_DEFINEこのトークンなどが正当であれば、のautoconf m4_pattern_allow

m4 (GNU M4) 1.4.17 and came with ubuntu 
autoconf (GNU Autoconf) 2.69 

私configure.acは非常に簡単です:

私は私のACX_PTHREADと信じ

autoreconf -fi 
libtoolize: putting auxiliary files in '.'. 
libtoolize: copying file './ltmain.sh' 
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. 
libtoolize: copying file 'm4/libtool.m4' 
libtoolize: copying file 'm4/ltoptions.m4' 
libtoolize: copying file 'm4/ltsugar.m4' 
libtoolize: copying file 'm4/ltversion.m4' 
libtoolize: copying file 'm4/lt~obsolete.m4' 
configure.ac:31: error: possibly undefined macro: AC_DEFINE 
     If this token and others are legitimate, please use m4_pattern_allow. 
     See the Autoconf documentation. 

30 ACX_PTHREAD([ 
31 AC_DEFINE([HAVE_PTHREAD], [1], [Define if you have POSIX threads libraries and headers]) 
32 gtest_LIBS="$PTHREAD_LIBS $LIBS" 
33 gtest_CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 
34 gtest_CXXFLAGS="$CXXFLAGS $PTHREAD_CXXFLAGS" 
35 gtest_CC="$PTHREAD_CC" 
36 gtest_CXX="$PTHREAD_CXX"]) 

実行autconfは私にエラーを与えましたマクロが私に困っている。このマクロの定義を調べたところ、奇妙なものは見つかりませんでした。他の状況でpkg.m4が見つからないことが原因であるという提案があります。私は最新バージョンのpkg-configが私のシステムにインストールされていることを確認しました。 pkg.m4は私のシステムにあります:/ usr/share/aclocal。私はこの問題の解決策を研究しており、どこにも行けませんでした。

答えて

1

私の問題は、axc_pthread.m4ファイルがないことが原因であることが判明しました。これは私がそれを発見した方法です:

autoreconf -fiはエラーメッセージを出しました。 autoreconf -iを実行すると、プログラムはエラーメッセージなしでサイレントモードで実行されます。 ./configureを実行すると、ACX_PTHREAD(...)がそのままコンフィギュレーションファイルにコピーされる行に問題が表示されます。これは、自分のシステムでACX_PTHREADマクロが定義されていないことを示します。

ダウンロードリンクはhttp://ac-archive.sourceforge.net/ac-archive/acx_pthread.htmlです。いくつかの研究の後で、このマクロ定義を提供する多くのソースがあるようです。どちらが良いかわからない。しかし、私はこの問題を解決することを熱望しています。このファイルをプロジェクトのm4ディレクトリにコピーした後、私の問題は解決しました。これが他人を助けることを望みます。 autoconfの問題は、通常、問題が間違った症状を示すことです。

関連する問題