-
Notifications
You must be signed in to change notification settings - Fork 46
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
Does not compile under MSVC #91
Comments
These are all "global variables" or rather class static variables. Are you building as libebml/libmatroska as a DLLs or static libraries ? AFAIK it's not possible in a clean way to share global variables between DLLs on Windows. mkvtoolnix and VLC use libebml and libmatroska as static libraries on Windows so they don't have this problem. Our CMake build file system also uses a static library by default on Windows and when compiled with |
shared lib, aka dll. I’ll try static. |
Partial fix: #94 |
static compilation works. |
Does #94 fix the whole DLL issue ? It seems the
We could also move these lines in the header files, as in #94 and hopefully that would fix the issue DEFINE_EBML_CLASS_GLOBAL(EbmlCrc32, 0xBF, 1, "EBMLCrc32\0ratamadabapa")
DEFINE_EBML_CLASS_GLOBAL(EbmlVoid, 0xEC, 1, "EBMLVoid") |
#94 is only a partial fix. |
@robUx4 fun MSVC issue now...
I guess libebml should be bumped to C++14 now. |
Through some unexplained reason, this no longer fails. Closing. |
never mind |
I think the issue is me not implementing hidden visibility properly. I can't reproduce this after fixing. |
Thought MinGW not having issues indicates MSVC would not have issues. |
It does build under MSVC as you can see here https://github.com/Matroska-Org/libebml/actions/workflows/windows.yaml |
Fully tested and working after Matroska-Org/libmatroska#79 |
When linking against libmatroska, linking errors occur:
for UnixEpochDelay, defining it directly fixes the error. I'm not sure about the others.
The text was updated successfully, but these errors were encountered: