在编译文件中包含 mingw 库



我正在使用cmake来生成一个Eclipse CDT MinGW项目。(日食版开普勒)

这是我的清单:

project(IMGTODICOM)
find_package(ITK REQUIRED)
include(${ITK_USE_FILE})
add_executable(IMGTODICOM IMGTODICOM.cxx)
target_link_libraries(IMGTODICOM ITKReview ${ITK_LIBRARIES})

代码在我的计算机中编译和运行没有问题,但在其他PC中它无法运行。一些像libgcc_s_dw2-1.dll这样的dll是必需的。我在电脑里找了这个dll,在C:MinGWbin找到了。为了解决这个问题,我将这个文件夹的内容复制到另一台PC中,exe文件最终运行。但是,我想知道是否有更好的方法可以在任何在编译过程中添加这些库的 Windows PC 中运行 exe 文件。

正在阅读,我应该使编译器链接到静态库。在 Eclipse 中,我尝试在属性>C/C++ 包括路径和符号以及项目路径>库下添加 dll,但它不起作用。我试图修改CmakeList,但它也不起作用。

我不知道为什么会出现这个问题以及如何在exe文件中包含C:MinGWbin的内容。

非常感谢任何帮助

是的,有办法。对于纯 C 代码:

set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static")

对于C++代码:

set(CMAKE_EXE_LINKER_FLAGS "-static-libgcc -static-libstdc++ -static")

相关内容

  • 没有找到相关文章

最新更新