Skip to content

Register_Serializer linker error in INET 4.6 #1108

@ddominguez-te

Description

@ddominguez-te

I'm updating a project in Windows from INET 4.5 to 4.6, and every custom serializer triggers the linker error
ld.lld: error: undefined symbol: inet::CodeFragment::CodeFragment(void (*)(), omnetpp::SimulationLifecycleEventType),
which is referenced in the line calling Register_Serializer(...).

The symbol seems to be defined in the object file, though:

$ nm -C samples/inet4.6/out/clang-release/src/inet/common/Compat.o | grep CodeFragment
00000790 T inet::CodeFragment::executeAll(omnetpp::SimulationLifecycleEventType)
00000038 B inet::CodeFragment::head
000008b0 T inet::CodeFragment::CodeFragment(void (*)(), omnetpp::SimulationLifecycleEventType)
000008b0 T inet::CodeFragment::CodeFragment(void (*)(), omnetpp::SimulationLifecycleEventType)
         U __imp__ZN7omnetpp13CodeFragmentsC1EPFvvEPKcNS0_4TypeE

Error reproduced using a clean installation of INET 4.6 from the releases page, and a Windows installation of OMNeT++ 6.3.0 (MinGW).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions