【发布时间】:2016-08-12 08:44:24
【问题描述】:
我想编辑现有软件以添加新的源文件 (Source.cpp)。 但是,我无法管理编译过程(它似乎是automake,看起来很复杂)。
软件 (iperf 2: https://sourceforge.net/projects/iperf2/files/?source=navbar) 使用经典的./configure make 然后make install 编译。
如果我只是将文件添加到相应的源和包含目录,我会收到以下错误消息:
Settings.cpp:(.text+0x969) : undefined reference to ...
看起来 makefile 无法生成与我的新源文件 (Source.cpp) 关联的输出文件。所以,我可能需要在某处手动指出它。
我在项目文件中搜索了一下,似乎要编辑的文件是:“Makefile.am”。
我将我的源添加到该文件中的变量iperf_SOURCES,但它没有工作。
你能帮我找到我需要指出我的新源文件的文件吗(这似乎是一个非常标准的编译方案,但我从未使用过 automake 软件,而且这个似乎很复杂)。
提前谢谢你
【问题讨论】:
-
您的新源文件在某个新目录中还是与现有源文件一起?如果您更改了层次结构,则需要在 make 文件中进行更新。
-
不,source.cpp 与之前的源在同一目录中。我以与其他文件相同的方式在 makefile.am 中添加源代码。
-
有时一个makefile调用另一个makefile来编译一些不同/相同模块的源文件。你在编辑正确的 makefile 吗?
-
在你的makefile中的“Mptcp.cpp”和“\”之间添加一个空格并试一试
-
你能提供你所有的makefile和./configure文件吗?