ryn*_*n1x 5 cmake perl6 visual-studio nativecall
我有一个使用NativeCall的模块,可以在Linux和macOS上运行,但不能在Windows上运行.当我尝试在Windows上使用该模块时,我遇到了很多错误,例如:
# Cannot locate symbol 'TinyTIFFReader_open' in native library 'tinytiff.dll'
Run Code Online (Sandbox Code Playgroud)
我使用cmake来解决所有三个操作系统上的C++依赖问题.在Linux和macOS上我可以cmake ..; make; sudo make install,在Windows上cmake -G "Visual Studio 15 2017 Win64" ..然后在Visual Studio中打开创建的".sln"进行编译.构建成功,所有三个操作系统都没有错误.
有没有人知道我需要做什么/更改以使我的模块在Windows上工作?
我认为你必须给出TINYTIFFREADER_LIB_EXPORT并TINYTIFFWRITER_LIB_EXPORT定义一个值(在源代码中,但可能更好地让它由构建系统传递)并且在Windows上我认为它必须是__declspec(dllexport),否则这些符号可能无法在DLL.
| 归档时间: |
|
| 查看次数: |
121 次 |
| 最近记录: |