3

ns2 でいくつかの C++ ファイルを変更してから、make コマンドを使用して再コンパイルしようとしています。make 後に新しい .o ファイルが作成されますが、出力は以前の C++ ファイル (変更前) と同様です。誰かがその背後にある理由を示唆できますか。

4

3 に答える 3

3

新しくビルドした ns2 実行可能ファイルを実行していることを確認してください -- と入力するだけns2で、システムにインストールされた ns2 バイナリが取得されますmake install。別の場所で、古い場所はそのままにしておきます)。

通常./ns2、現在のディレクトリに実行可能ファイルを確実に取得したい場合は、実行する必要があります (これはおそらくビルドしたばかりのディレクトリですが、Makefile と実行可能ファイルの日付を確認してください)。

于 2011-04-07T23:02:31.720 に答える
0

これは通常、自分が思っていることをコンパイルしていないことを意味します。ソースファイルの名前を変更して、makeがまだ「コンパイル」しているかどうかを確認してください(コンパイルしないでください)。または、エディタから変更を保存していることを確認してください。

于 2011-04-07T19:53:38.637 に答える
0

すべてのビルド時の依存関係を取得するには、次のようにします。

sudo apt-get build-dep ns2

ソース (約 46Mb) の取得とコンパイルに進みます。

mkdir $HOME/ns2work
cd $HOME/ns2work
apt-get source ns2 --compile

あなたは終わったでしょう。(私のワークステーションで 2'55" に ns2、ns2-doc、および ns2-examples をビルドしました。) ソース ディレクトリ内で、ソースを編集し、'make' または debuild を実行して、変更を使用して再構築することができます。

この方法 (およびデビルド)を使用すると、最終的に mkdir $HOME/ns2work に .deb ファイルが作成されるため、実際に (必要に応じて複数のマシンに) クリーンにインストールできます。

幸運を

于 2011-04-07T23:04:13.493 に答える