0

我正在尝试构建一个 ns3 模块,但我陷入了“未定义的引用错误”。我过去曾通过 #include 指令指定定义的位置来处理这些错误,但现在我对未定义的引用感到困惑来自共享库,如我在此链接上获得的输出所示:

http://www.blikoon.com/wp-content/uploads/2014/05/wafError-1024x575.png

一些搜索结果指出我的问题可能与未指定库的路径有关,但我确实有

module.uselib='Xerces-C++

我模块的 wscript 文件中的语句

有没有办法让我的编译器知道 Xerces 库的位置。在我的系统上搜索,我发现 xerces 安装在:

/usr/include/xercesc

我正在构建最新版本的 ns3.19,它使用 waf1.7.13。

感谢您的时间。

4

1 回答 1

1

我不了解 Xcerces,但这就是我使用 libxml 库的方式。它应该与其他库非常相似。这是来自 NS-3.19,您可以查看使用外部库的其他模块,例如使用 SQL 的统计信息

在模块的 wscript 文件中,您应该像这样开始:

import wutils

def configure(conf):
     have_libxml2 = conf.check_cfg(package='libxml-2.0', atleast_version='2.6',
                              args=['--cflags', '--libs'], uselib_store='LIBXML2',
                              mandatory=False)

conf.env['ENABLE_LIBXML2'] = have_libxml2
conf.report_optional_feature("XmlIo", "XmlIo",
                             conf.env['ENABLE_LIBXML2'],
                             "library 'libxml-2.0 >= 2.7' not found")
于 2014-05-30T12:54:16.257 回答