使用 MinGW64 构建 assimp
building assimp using MinGW64
我正在尝试使用 MinGW64 构建 assimp-5.0.0。
CMake CMakeLists.txt -G"MinGW Makefiles" 运行 没有问题。
但是当我调用 mingw32-make 时,我在
处遇到以下问题
[ 73%] Linking CXX executable ..\..\bin\assimp.exe:
CMakeFiles\assimp_cmd.dir/objects.a(Main.cpp.obj):Main.cpp:(.text+0x8d): undefined reference to Assimp::Importer::ValidateFlags(unsigned int) const
CMakeFiles\assimp_cmd.dir/objects.a(Main.cpp.obj):Main.cpp:(.text+0xc4): undefined reference to Assimp::Importer::ReadFile(char const*, unsigned int)
...
CMakeFiles\assimp_cmd.dir/objects.a(Export.cpp.obj):Export.cpp:(.text+0xf44): undefined reference to `Assimp::Exporter::GetExportFormatDescription(unsigned long long) const'
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [tools\assimp_cmd\CMakeFiles\assimp_cmd.dir\build.make:195: bin/assimp.exe] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:337: tools/assimp_cmd/CMakeFiles/assimp_cmd.dir/all] Error 2
mingw32-make: *** [Makefile:135: all] Error 2
我在这里 https://github.com/assimp/assimp/issues/2431 发现了一个具有相同问题的 github 线程,创建者说它已修复...但似乎并非如此。
知道如何解决吗?
对于给您带来的不便,我们深表歉意。我认为这个问题已经被另一个提交修复了。我已经重新打开了问题报告。
在使用 MinGW-w64 构建 assimp 5.0.1 时,我注意到存在一些 dllexport/dllimport 问题。
在我的例子中,他们通过这个补丁解决了:
patch -ulbf include/assimp/defs.h << EOF
@@ -128,3 +128,3 @@
-#ifdef _MSC_VER
+#ifdef _WIN32
# undef ASSIMP_API
EOF
我正在尝试使用 MinGW64 构建 assimp-5.0.0。 CMake CMakeLists.txt -G"MinGW Makefiles" 运行 没有问题。 但是当我调用 mingw32-make 时,我在
处遇到以下问题[ 73%] Linking CXX executable ..\..\bin\assimp.exe:
CMakeFiles\assimp_cmd.dir/objects.a(Main.cpp.obj):Main.cpp:(.text+0x8d): undefined reference to Assimp::Importer::ValidateFlags(unsigned int) const
CMakeFiles\assimp_cmd.dir/objects.a(Main.cpp.obj):Main.cpp:(.text+0xc4): undefined reference to Assimp::Importer::ReadFile(char const*, unsigned int)
...
CMakeFiles\assimp_cmd.dir/objects.a(Export.cpp.obj):Export.cpp:(.text+0xf44): undefined reference to `Assimp::Exporter::GetExportFormatDescription(unsigned long long) const'
collect2.exe: error: ld returned 1 exit status
mingw32-make[2]: *** [tools\assimp_cmd\CMakeFiles\assimp_cmd.dir\build.make:195: bin/assimp.exe] Error 1
mingw32-make[1]: *** [CMakeFiles\Makefile2:337: tools/assimp_cmd/CMakeFiles/assimp_cmd.dir/all] Error 2
mingw32-make: *** [Makefile:135: all] Error 2
我在这里 https://github.com/assimp/assimp/issues/2431 发现了一个具有相同问题的 github 线程,创建者说它已修复...但似乎并非如此。 知道如何解决吗?
对于给您带来的不便,我们深表歉意。我认为这个问题已经被另一个提交修复了。我已经重新打开了问题报告。
在使用 MinGW-w64 构建 assimp 5.0.1 时,我注意到存在一些 dllexport/dllimport 问题。
在我的例子中,他们通过这个补丁解决了:
patch -ulbf include/assimp/defs.h << EOF
@@ -128,3 +128,3 @@
-#ifdef _MSC_VER
+#ifdef _WIN32
# undef ASSIMP_API
EOF