c++ - omn​​et++ 的头文件错误

标签 c++ omnet++

BaseLayer.h 中包含 ContactCtrlInfo.h 头文件后,我正在努力在 omnet++ 模拟器下编译我的代码(我正在使用 mixim 和 veins 框架)/p>

这是输出:

fatal error: ContactCtrlInfo.h: No such file or directory

这是我目前的项目结构:

src
|_base
| |
| |_folder1
| |_folder2
| |_modules
| | |_BaseLayer.h
| | |_BaseLayer.cc
* *
| |_folderN
|
|_modules
| |_folder1
| |_folder2
| |_utility
| | |_contacts
| |   |_ContactCtrlInfo.h
| |   |_ContactCtrlInfo.cc
* *
| |_folderN

这是我当前的 makefile:

#
# Usage:
#    make -f makemakefiles
# or, for Microsoft Visual C++:
#    nmake -f makemakefiles MMOPT=-n
#

MAKEMAKE=opp_makemake $(MMOPT)

all:
    cd tests/power && $(MAKEMAKE) -f --nolink -O out -d deviceTestAll -d utils -d deviceTest -d deviceTestMulti -d Nic80211Test -d deviceTestAccts -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules
    cd examples/Mac80211 && $(MAKEMAKE) -f -o Mac80211 -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd examples/ieee80211p && $(MAKEMAKE) -f -o ieee80211p -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd examples/multiConnectionManager && $(MAKEMAKE) -f -o multiConnectionManager -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/power/deviceTestAll && $(MAKEMAKE) -f -o deviceTestAll -O out -u CMDENV -L../../../out/$(CONFIGNAME)/tests/power/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lpowerTestUtils -lmiximbase -lmiximmodules
    cd tests/channelInfo && $(MAKEMAKE) -f -o channelInfo -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../testUtils -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd examples/CSMAMac && $(MAKEMAKE) -f -o CSMAMac -O out -I../../src/base/connectionManager -I../../src/base/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/decider && $(MAKEMAKE) -f -o decider -O out -u CMDENV -I../testUtils -I../../src/base/messages -I../../src/modules/phy -I../../src/modules/utility -I../../src/modules -I../../src/modules/obstacle -I../../src/base/connectionManager -I../../src/modules/analogueModel -I../../src/modules/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/modules/application/traci -I../../src/modules/mac/ieee80211p -I../../src/modules/application/ieee80211p -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/blackboard && $(MAKEMAKE) -f -o blackboard -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/coord && $(MAKEMAKE) -f -o coord -O out -u CMDENV -I../testUtils -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd examples/bmac && $(MAKEMAKE) -f -o bmac -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/basePhyLayer && $(MAKEMAKE) -f -o basePhyLayer -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../testUtils -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/power/utils && $(MAKEMAKE) -f --make-so -o powerTestUtils -O out -I../../../src/base/connectionManager -I../../../src/modules/power/battery -I../../../src/base/messages -I../../../src/base/phyLayer -I../../../src/base/modules -I../../../src/base/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/radioState && $(MAKEMAKE) -f -o radioState -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../testUtils -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/connectionManager && $(MAKEMAKE) -f -o connectionManager -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../testUtils -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd examples/obstacles && $(MAKEMAKE) -f -o obstacles -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/power/deviceTest && $(MAKEMAKE) -f -o deviceTest -O out -u CMDENV -L../../../out/$(CONFIGNAME)/tests/power/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lpowerTestUtils -lmiximbase -lmiximmodules
    cd examples/lmac && $(MAKEMAKE) -f -o lmac -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd examples/BaseMoBANNetwork && $(MAKEMAKE) -f -o BaseMoBANNetwork -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules
    cd examples/veins && $(MAKEMAKE) -f -o veins -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/power/deviceTestMulti && $(MAKEMAKE) -f -o deviceTestMulti -O out -L../../../out/$(CONFIGNAME)/tests/power/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lpowerTestUtils -lmiximbase -lmiximmodules
    cd examples/ieee802154a && $(MAKEMAKE) -f -o ieee802154a -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/testUtils && $(MAKEMAKE) -f --make-so -o miximtestUtils -O out -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules
    cd examples/traci_launchd && $(MAKEMAKE) -f -o traci_launchd -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests/power/Nic80211Test && $(MAKEMAKE) -f -o Nic80211Test -O out -L../../../out/$(CONFIGNAME)/tests/power/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd examples/baseNetwork && $(MAKEMAKE) -f -o baseNetwork -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    $(MAKEMAKE) -f --nolink -O out -d src/base -d src/modules -d examples -d tests -L./out/$(CONFIGNAME)/tests/power/utils -L./out/$(CONFIGNAME)/tests/testUtils -L./out/$(CONFIGNAME)/src/base -L./out/$(CONFIGNAME)/src/modules
    cd examples/WSNRouting && $(MAKEMAKE) -f -o WSNRouting -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd examples/ieee802154Narrow && $(MAKEMAKE) -f -o ieee802154Narrow -O out -I../../src/base/messages -I../../src/modules/utility -I../../src/modules/phy -I../../src/modules -I../../src/modules/obstacle -I../../src/base/connectionManager -I../../src/modules/messages -I../../src/modules/analogueModel -I../../src/base/phyLayer -I../../src/base/modules -I../../src/modules/application/traci -I../../src/modules/mac/ieee80211p -I../../src/modules/application/ieee80211p -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd src/base && $(MAKEMAKE) -f --deep --make-so -o miximbase -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/modules
    cd src/modules && $(MAKEMAKE) -f --deep --make-so -o miximmodules -O out -I../base/connectionManager -I../base/messages -I../base/phyLayer -I../base/modules -I../base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -lmiximbase
    cd examples && $(MAKEMAKE) -f --nolink -O out -d Mac80211 -d ieee80211p -d multiConnectionManager -d CSMAMac -d bmac -d obstacles -d lmac -d BaseMoBANNetwork -d veins -d ieee802154a -d traci_launchd -d baseNetwork -d WSNRouting -d ieee802154Narrow -d twoRayInterference -d analogueModels -L../out/$(CONFIGNAME)/tests/power/utils -L../out/$(CONFIGNAME)/tests/testUtils -L../out/$(CONFIGNAME)/src/base -L../out/$(CONFIGNAME)/src/modules
    cd tests/traci && $(MAKEMAKE) -f -o traci -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -I../../src/modules -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd examples/twoRayInterference && $(MAKEMAKE) -f -o twoRayInterference -O out -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules
    cd tests && $(MAKEMAKE) -f --nolink -O out -d power -d channelInfo -d decider -d blackboard -d coord -d basePhyLayer -d radioState -d connectionManager -d testUtils -d traci -d baseMobility -d nicTest -d mapping -L../out/$(CONFIGNAME)/tests/power/utils -L../out/$(CONFIGNAME)/tests/testUtils -L../out/$(CONFIGNAME)/src/base -L../out/$(CONFIGNAME)/src/modules
    cd tests/baseMobility && $(MAKEMAKE) -f -o baseMobility -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/nicTest && $(MAKEMAKE) -f -o nicTest -O out -u CMDENV -I../../src/base/messages -I../../src/modules/phy -I../../src/modules/utility -I../../src/modules -I../../src/modules/obstacle -I../../src/modules/analogueModel -I../../src/modules/messages -I../../src/base/connectionManager -I../../src/modules/mac -I../../src/base/phyLayer -I../../src/base/modules -I../../src/modules/application/traci -I../../src/modules/mac/ieee80211p -I../../src/modules/application/ieee80211p -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/mapping && $(MAKEMAKE) -f -o mapping -O out -u CMDENV -I../../src/base/connectionManager -I../../src/base/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules -lmiximtestUtils
    cd tests/power/deviceTestAccts && $(MAKEMAKE) -f -o deviceTestAccts -O out -u CMDENV -L../../../out/$(CONFIGNAME)/tests/power/utils -L../../../out/$(CONFIGNAME)/tests/testUtils -L../../../out/$(CONFIGNAME)/src/base -L../../../out/$(CONFIGNAME)/src/modules -lpowerTestUtils -lmiximbase -lmiximmodules
    cd examples/analogueModels && $(MAKEMAKE) -f -o analogueModels -O out -I../../src/base/messages -I../../src/modules/phy -I../../src/modules/utility -I../../src/modules -I../../src/modules/obstacle -I../../src/base/connectionManager -I../../src/modules/analogueModel -I../../src/modules/messages -I../../src/base/phyLayer -I../../src/base/modules -I../../src/modules/mac/ieee80211p -I../../src/modules/application/traci -I../../src/modules/application/ieee80211p -I../../src/base/utils -L../../out/$(CONFIGNAME)/tests/power/utils -L../../out/$(CONFIGNAME)/tests/testUtils -L../../out/$(CONFIGNAME)/src/base -L../../out/$(CONFIGNAME)/src/modules -lmiximbase -lmiximmodules

有人能解释一下为什么我会收到这个错误吗?如果我尝试将 ContactCtrlInfo 类移动到基本子文件夹下,它可以工作,但我不想这样做。

谢谢,

最佳答案

Veins 3 仍然使用 MiXiM 构建系统,它首先构建一个“基础”库,然后构建一个“模块”库(两个库都动态链接以运行模拟)。 “base”库旨在仅依赖于存储在“base”文件夹中的组件,因此在编译“base”库时,不包含“modules”文件夹中的文件。这就是您收到错误的原因。

另请注意,Veins 4 将使用不同的构建系统:在这里,所有头文件都可以从任何地方获得,但必须始终指定它们的完整路径(例如,作为 #include "veins/modules/mobility/traci/TraCIColor.h")

关于c++ - omn​​et++ 的头文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29905985/

相关文章:

c++ - Omnet++ 和 MiXiM

c++ - 为每个对象定义唯一的函数

c++ - C++中的模板类?

c++ Variadic Macro编译错误

http - 如何在 OMNeT++ 中模拟真实的 TCP 流量?

c++ - 模拟真实的 UDP 应用程序并测量 OMNeT++ 上的流量负载

c++ - OMNeT++ 反汇编收到的消息

C++11 (g++ thread sanitized) 用原子排序非原子操作(误报?)

c++ - 在 Qt 中向 centralWidget 添加/调整背景图像大小