Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The auto generated <project name>TypeSupport.cs file is missing all of the TypeSupport, DataReader, and DataWriter supporting classes. #254

Open
Karnak-Kid opened this issue Aug 9, 2024 · 4 comments

Comments

@Karnak-Kid
Copy link

For reasons, I’m constrained to using RHEL 8.10 for developing an application that uses OpenDDS. We have a GUI that will implement OpenDDSharp. The OpenDDSharp.IdlGenerator has GLIBC version compatibility issues with RHEL 8. Ok no problem, we can drop the OpenDDSharp.IdlGenerator nuget package, take the native files in the GitHub repo, and rebuild the binaries and libraries in our environment to be on the needed GLIBC version. This process has mostly worked for us and the IDL projects builds 100%. However, for some reason the auto generated TypeSupport.cs file is missing all of the TypeSupport, DataReader, and DataWriter supporting classes.

Further investigating shows that in the \obj\x64\Debug\net8.0\NativeProject directory, there are auto generated files that are empty or missing data, namely TypeSupport.cpp and TypeSupport.h which I assume are used to generate TypeSupport.cs.

Using: OpenDDS 3.25, OpenDDSharp 3.250.2, dotnet 6/8

Any insight would be appreciated.

@mitza-oci
Copy link

Which glibc version is used to build? Which version does REHL 8 use?

@Karnak-Kid
Copy link
Author

RHEL 8 uses GLIBC version 2.28. The OpenDDSharp.IdlGenerator is looking for GLIBC_2.32 , 2.33, or 2.34

@Karnak-Kid
Copy link
Author

Karnak-Kid commented Aug 12, 2024

./openddsharp_idl <my Idl project dir>/obj/x64/Debug/net8.0/NativeProject/<my Idl>.idl -cwrapper

also what does the -cwrapper flag do? --help does not show it.

@jmmorato
Copy link
Owner

RHEL 8 uses GLIBC version 2.28. The OpenDDSharp.IdlGenerator is looking for GLIBC_2.32 , 2.33, or 2.34

You should be able to build for RHEL8 using the following command from develop branch:
./OpenDDSharp.Build.ps1 --target=BuildOpenDDSharpNativeTask --BuildConfiguration=Release --BuildPlatform=x64 --OpenDdsVersion=3.28.1 --IgnoreThirdPartySetup=False --IgnoreThirdPartyBuild=False
Honestly, I never tested myself so feel free to ask for support if doesn't work.

./openddsharp_idl <my Idl project dir>/obj/x64/Debug/net8.0/NativeProject/<my Idl>.idl -cwrapper

also what does the -cwrapper flag do? --help does not show it.

It creates the native C layer in order to be pinvoked via C#. It is specific from OpenDDSharp so surely I didn't update the --help, my bad 😝

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants