在ubuntu中使用make命令重新编译问题

时间:2011-04-07 19:36:42

标签: c++ linux ubuntu-10.10 ns2

我试图在ns2中修改一些C ++文件,然后使用make命令重新编译。尽管在make之后创建了新的.o文件,但输出类似于以前的C ++文件(在修改之前)。有人可能会建议背后的原因。

3 个答案:

答案 0 :(得分:3)

确保您正在运行新构建的ns2可执行文件 - 如果只键入ns2,您将在系统上获得已安装的ns2二进制文件,但您没有更改(除非您执行{ {1}}即便如此,它也可以将它安装在不同的地方,将旧的安装在原处。)

通常你需要运行make install如果你想确保在当前目录中获取可执行文件(可能是你刚构建的那个,但是检查Makefile并且可执行文件上的日期更加确定。)

答案 1 :(得分:0)

这通常意味着你没有编译你的想法。尝试重命名你的源文件,看看make是否仍然“编译”它(它不应该)。或者,确保从编辑器中保存更改。

答案 2 :(得分: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来使用您的更改进行重建。

当使用此方法(和debuild)时,您将在mkdir $ HOME / ns2work 中找到.deb文件,这样您就可以干净地安装它(如果需要,可以在几台机器上安装)

祝你好运