Open felixf4xu opened 4 months ago
Thanks for the review.
At the same time, I have a question about the compiling switches. The issue only happens when fastcdr is built as a shared dll (on Windows), in ros2, it's BUILD_SHARED_LIBS
. I'm just curious, this project has all code ready (the difinition of Cdr_DllAPI
and all the other stuff) but this issue show that maybe it's never compiled on Windows as shared dll.
ROS2 actually supports Windows, maybe it's build as a static lib on Windows?
The reason why I asked is that I actually have begun to work on fastrtps as well, it has even more issues like this one, but again, fastrtsp seems to be ready for windows shared dll because it already has all the code there, just not tested, maybe nobody wants to build it on Windows as shared dll?
And I see the github actions for this fastcdr project, Windows is also listed there. I'm curious if it's configured to compile as static lib?
I'm not familiar with github actions, is it possible to set some actions to build on windows as shared dll?
@felixf4xu It might be something related with the compiler.
As stated in the supported platforms here, our tier 1 build system on Windows is Visual Studio 2019.
On that tier 1 platform we pass the CI with BUILD_SHARED_LIBS=ON
, so the DLL system is always tested.
The error you mention in #209 is usually reported by MinGW. If you are building in MinGW then bear in mind that it is not an officially supported platform.
@mergifyio rebase
rebase
Fix #209