Inconsistent Symbol Mangling in Rust on Windows -
i have 2 interdependent, cross platform rust projects. project main application, producing main executable , dynamic library containing common dependencies. project b contains plugins application, each distributed dynamic library dependency on project common library.
because 2 projects separate, cargo builds common library both projects , b. on windows, symbol name mangling inconsistent between 2 builds, meaning project b plugins cannot use common library produced project build, , vice versa. tried placing #[no_mangle]
directive on pertinent symbols in project common library, on windows ignored in project b build.
on linux, symbol names consistent between 2 builds, or without #[no_mangle]
directive.
what causing inconsistency on windows builds , how can resolved? keep 2 projects separate make easier develop new plugins in future.
all testing has been done using rust 1.13.0 on windows 10 , centos 7. issue occurs both msvc , gnu abis on windows, application needs compile msvc abi.
Comments
Post a Comment