You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello!
After several compilations of messagepack to linux/arm, linux/x64 and some others I turned to linux/mips platform with toolchain-mipsel_24kc_gcc-12.3.0_musl.
In my case Messagepack is included in shared library that's being used by application.
So while compiling application I'm getting error:
mipsel-openwrt-linux-musl/bin/ld: libnodesd.so: undefined reference to msgpack::v1::adaptor::object<decltype(nullptr), void>::operator()(msgpack::v2::object&, decltype(nullptr) const&) const
Digging with nm shows that mentioned symbol is really undefined in library:
Perhaps writing your own adaptor for decltype(nullptr)std::nullptr_t? solve the issue.
NOTE: msgpack-c (C++) is a header-only library. The all translation unit should have the same version of msgpack-c, basically. But if msgpack-c code is in the user's library, you can only use the type that is instantiated in the library, I guess.
Sorry for may be newbie quiestions, but I don't understand the reason of that error while same app/user library successfully compiles with other compilers.
I'm using MessagePack 3.1.0, 3.3.0 and today tried 6.1.0 with identical behavior.
Hello!
After several compilations of messagepack to linux/arm, linux/x64 and some others I turned to linux/mips platform with toolchain-mipsel_24kc_gcc-12.3.0_musl.
In my case Messagepack is included in shared library that's being used by application.
So while compiling application I'm getting error:
mipsel-openwrt-linux-musl/bin/ld: libnodesd.so: undefined reference to msgpack::v1::adaptor::object<decltype(nullptr), void>::operator()(msgpack::v2::object&, decltype(nullptr) const&) const
Digging with nm shows that mentioned symbol is really undefined in library:
nm -D --demangle ./libnodesd.so | grep "msgpack::v1::adaptor::object<decltype(nullptr), void>::operator()"
U msgpack::v1::adaptor::object<decltype(nullptr), void>::operator()(msgpack::v2::object&, decltype(nullptr) const&) const
Everything is fine when compiling with regular x64 gcc, linaro arm crosscompiler and others.
I would be very appreciated for any clues to resolve error.
The text was updated successfully, but these errors were encountered: