Announcement

Collapse
No announcement yet.

Linux 4.22 -> 4.23 Migration Guide

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Linux 4.22 -> 4.23 Migration Guide

    Running into some troubles migrating a C++-heavy project from 4.22 -> 4.23 on Linux. I hope this thread can serve as a place to find solutions to some of the problems. I'll be updating it as I go through migrating my own project and finding the solutions.

    Module symbol exports are hidden by default
    In 4.22, you could have a header file for a regular class in your module's Public/ folder, and another module that includes the first module in its PublicDependencyModuleNames could use it, no problem. This is no longer the case, and non-decorated class declarations will not be exported. Any class that you want exported must include your <MODULENAME>_API macro in between "class" and your class name. For example:

    In 4.22:
    Code:
    class EventThing {
    ...
    In 4.23
    Code:
    class MYMODULE_API EventThing {
    ...
    Now the linker will be able to find your objects like before.
Working...
X