I have a port of OpenFlow for the latest version of inet. In Linux, I can generate the program, but in windows, I have some problems,
Creating shared library: ../out/clang-debug/src/libopenflow6_dbg.dll
lld-link: error: duplicate symbol: inet::SharingTagSet::setTag(int, inet::IntrusivePtr<inet::TagBase const> const&)
>>> defined at ../../inetmanet-4.x/src/inet/common/packet/tag/SharingTagSet.h:165
>>> ../out/clang-debug/src/openflow/controllerApps/ARPResponder.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::OperationalMixin<omnetpp::cSimpleModule>::OperationalMixin()
>>> defined at ../../inetmanet-4.x/src/inet/common/lifecycle/OperationalMixin.h:16
>>> ../out/clang-debug/src/openflow/controllerApps/AbstractControllerApp.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::SharingRegionTagSet::operator=(inet::SharingRegionTagSet const&)
>>> defined at ../../inetmanet-4.x/src/inet/common/packet/tag/SharingRegionTagSet.h:285
>>> ../out/clang-debug/src/openflow/messages/HF_ChangeNotification_m.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::OperationalMixin<omnetpp::cSimpleModule>::numInitStages() const
>>> defined at ../../inetmanet-4.x/src/inet/common/lifecycle/OperationalMixin.h:41
>>> ../out/clang-debug/src/openflow/controllerApps/AbstractControllerApp.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::OperationalMixin<omnetpp::cSimpleModule>::isUp() const
>>> defined at ../../inetmanet-4.x/src/inet/common/lifecycle/OperationalMixin.h:66
>>> ../out/clang-debug/src/openflow/controllerApps/AbstractControllerApp.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::OperationalMixin<omnetpp::cSimpleModule>::isDown() const
>>> defined at ../../inetmanet-4.x/src/inet/common/lifecycle/OperationalMixin.h:67
>>> ../out/clang-debug/src/openflow/controllerApps/AbstractControllerApp.o
>>> defined at libINET_dbg.dll
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
../../inet/src/inet/common/packet/tag/SharingRegionTagSet.h:325:54: warning: 'const inet::SharingRegionTagSet::RegionTag<inet::TagBase> inet::SharingRegionTagSet::getRegionTagForUpdate(int)' redeclared without dllimport attribute after being referenced with
dll linkage
325 | inline const SharingRegionTagSet::RegionTag<TagBase> SharingRegionTagSet::getRegionTagForUpdate(int index)
| ^~~~~~~~~~~~~~~~~~~
Creating shared library: ../out/gcc-debug/src/libopenflow6_dbg.dll
lld-link: error: duplicate symbol: inet::SharingTagSet::setTag(int, inet::IntrusivePtr<inet::TagBase const> const&)
>>> defined at ../../inet/src/inet/common/packet/tag/SharingTagSet.h:165
>>> ../out/gcc-debug/src/openflow/controllerApps/ARPResponder.o
>>> defined at libINET_dbg.dll
lld-link: error: duplicate symbol: inet::SharingRegionTagSet::operator=(inet::SharingRegionTagSet const&)
>>> defined at ../../inet/src/inet/common/packet/tag/SharingRegionTagSet.h:285
>>> ../out/gcc-debug/src/openflow/messages/HF_ChangeNotification_m.o
>>> defined at libINET_dbg.dll
In the second case, it is possible that the problem could be related to the inline definition