Makefile.am最終的なアプリケーション バイナリの構築を担当する があります。
project/src/Makefile.am
ctrnnまた、src ディレクトリには、追加の を含むと呼ばれるサブディレクトリがありMakefile.amます。
project/src/ctrnn/Makefile.am
ここで、トップレベルがサブディレクトリで生成されたオブジェクト ファイルを使用してバイナリをビルドする必要があるという考えで、ctrnn/Makefile.amオブジェクト ファイルのみを生成する必要があります。.oMakefile.amctrnn
これは次のctrnn/Makefile.amとおりです。
SOURCES = network.cpp\
neuron.cpp
AM_CPPFLAGS= @CXXFLAGS@
このMakefile.amファイルに基づいて、network.o と neuron.o を完成させたいと思います。私はMakefileAutomakeなどを使用してそれに応じて生成していますが、makeファイルを実行しようとすると、何もせず、次のように表示されます:
make: Nothing to be done for `all'
理由はわかっています。ビルド ターゲットを指定する必要があります。しかしctrnn/Makefile.am、bin_PROGRAMS実際のオブジェクト ファイルnetwork.oとneuron.o.
(bin_PROGRAMS 名を指定すると、main への未定義の参照が正しく表示されることに注意してください)。
私は何を間違っていますか?