2009-09-15 11 views
5

私はRedHat LinuxボックスにZooKeeperをビルドしようとしています。私はパッケージの指示に従った場合(おそらく重要ではありませんまさにZooKeeperのです:-)autoconf/automakeを非標準パッケージに向ける方法

は、私が手:私は標準的な場所にCPPPUNITをインストールすることはできません

$ autoreconf -if 
aclocal:configure.ac:33: warning: macro `AM_PATH_CPPUNIT' not found in library 
aclocal:configure.ac:33: warning: macro `AM_PATH_CPPUNIT' not found in library 
configure.ac:33: error: possibly undefined macro: AM_PATH_CPPUNIT 
     If this token and others are legitimate, please use m4_pattern_allow. 
     See the Autoconf documentation. 
autoreconf: /usr/bin/autoconf failed with exit status: 1 

。 (root権限を持っていない、システムチーム は、標準構成から「ノー偏差」の方針を持っています。)

は、私は私のconfigure.acファイルで AM_PATH_CPPUNI Tへの参照をコメントアウトすることで問題を回避働いてきましたしかし、私が実際にやりたいことは 私の個人的なディレクトリにCPPPUNITをインストールして、それを指すことですが、私は です。autoconf/auotmake システムにそれを探す方法を理解することはあまり進歩していません非標準的な場所です。誰でも何かヒントがありますか? その方法は?

+0

彼らはautomakeに名前空間に踏みされているので、あなたはおそらく、のCppUnitでバグレポートを提出しなければなりません。 "AM_"で始まる名前(m4マクロの)は、automakeで使用するために予約されています。 –

+0

パッケージをインストールしたいだけなら、なぜautoreconfを実行していますか?もしあなたが直接ビルドできるtarballを提供するのではなく、パッケージングの指示があなたにそうするよう指示していれば、それをバグレポートとして提出するべきです。彼らはあなたにautoconfをインストールしてもらう必要はないはずです。 –

答えて

7

環境変数ACLOCAL_PATHを設定する必要があります。

ACLOCAL_PATH="/home/YOU/path/to/share/aclocal" autoreconf -if 

あなたがAM_PATH_CPPUNITを定義.m4ファイルを含むディレクトリを見つける必要があるでしょう、でACLOCAL_PATHを指し示すために必要なものディレクトリ把握します。

1

あなたのプロフィールや環境にパス変数を追加できない場合や、あなたが持っているものは、autoconfを実行する前にパスを "エクスポート"しようとすることができます。これは、プッシュが突き出すに来るならば、あなたは...(これは任意の非稼働がらくたのあなたのMakefileのautoconf /設定することをクリアすることができ、また...少なくともそのセッションのために、

export ACLOCAL_PATH=/home/YOU/path/to/share/aclocal 

をそのオプションを設定しますコマンドが...)

make clean 

であなたを残して、テキストエディタで...あなたの「./configureを」スクリプトを開き、それは少しの友人( 『設定する。*』という名前のもの)です。次に、 "何が"あなたを台無しにしているかのインスタンスを幾分慎重に "検索と置換"します。あなたがconfigureスクリプトで指示文を修正して、それらをもう一度実行すると... makeファイルがあなたの環境でうまくいくかどうかは不思議です。

注:これは私のMAC上で、通常はテストされていない、またはMac上で動作するように設計されたLinux SWをコンパイルするためのものです。これはやり方が間違っているかもしれませんが、たくさんの選択肢がないときは、時にはそこに入り込んで泥だらけにする必要があります。

5

私の場合、パッケージcppunit-develがないためにこのエラーが発生しました。このパッケージをcentosサーバーにyum -y install cppunit-develでインストールすると、すべて正常に動作します。

+2

これは私の関連する問題を解決するために私を導いた - Ubuntuで私はlibcppunit-devをインストールする必要があった。 – Pierz

1

複数パスの場合は、区切り記号を付けて追加します。 ように:

export ACLOCAL_PATH="/usr/share/aclocal/:/usr/local/share/aclocal" 
関連する問題