Проблема перекомпиляции с использованием команды make в Ubuntu - PullRequest
3 голосов
/ 07 апреля 2011

Я пытаюсь изменить некоторые файлы C ++ в ns2, а затем перекомпилировать с помощью команды make.Несмотря на то, что новый файл .o создается после make, вывод аналогичен предыдущему файлу C ++ (до изменения).может кто-нибудь подсказать, что может быть причиной этого.

Ответы [ 3 ]

3 голосов
/ 08 апреля 2011

Убедитесь, что вы запускаете только что созданный исполняемый файл ns2 - если вы просто наберете ns2, вы получите установленный двоичный файл ns2 в системе, который вы не изменили (если только вы не выполните make installи даже тогда он может установить его в другом месте, оставив старое там, где он есть).

Обычно вам нужно запустить ./ns2, если вы хотите убедиться, что вы получаете исполняемый файл в текущемкаталог (который вероятно тот, который вы только что создали, но для большей уверенности проверьте Makefile и дату на исполняемом файле.)

0 голосов
/ 08 апреля 2011

Чтобы получить все зависимости времени сборки, вам нужно

sudo apt-get build-dep ns2

Продолжить, чтобы получить источники (приблизительно 46 МБ) и скомпилировать

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

Все готово.(он собрал ns2, ns2-doc и ns2-examples в 2'55 "на моей рабочей станции). Внутри исходного каталога вы можете отредактировать исходный код и запустить 'make' или debuild, чтобы пересобрать, используя ваши изменения.

При использовании этого метода (и debuild) вы получите файлы .deb в mkdir $ HOME / ns2work , так что вы сможете установить их чисто (на нескольких компьютерах, если хотите)

Хорошоудачи

0 голосов
/ 07 апреля 2011

Обычно это означает, что вы не компилируете то, что вы думаете. Попробуйте переименовать ваш исходный файл и посмотрите, компилирует ли он все-таки (не должен). В качестве альтернативы, убедитесь, что вы сохраняете свои изменения в редакторе.

...