在CMake中将gtest构建为共享库(dll)

fsi0uk1n  于 2023-01-26  发布在  其他
关注(0)|答案(1)|浏览(160)

我以前从未使用过CMake,所以请原谅我的新手错误。下面的大部分工作框架是我的项目组给我的。目标是将GoogleTest构建成一个.dll,用于我们项目中不同的、独立的部分。我在正确设置CMake时遇到了麻烦。
迄今为止的工作流程是:
1.从git --〉克隆gtest也会下载一个CMake列表文件
1.更改CMakeCache.txt中的变量,使其生成Code::Blocks项目文件
1.编译Code::Blocks中的项目文件
到目前为止,它生成了一个静态库(.a文件),可以在我们的项目中使用。我在生成.dll文件时遇到了麻烦。我尝试更改的变量:

  • BUILD_SHARED_LIBS:BOOL=ON--〉由Code::Blocks生成的文件现在具有. dll. a双扩展名
  • CMAKE_C_FLAGS和所有对应的C++标志,其中将-DGTEST_CREATE_SHARED_LIBRARY=1设置为here
  • CMAKE_EXE_LINKER_FLAGS已设置为-shared以使链接器生成.dll文件

我已经阅读了GoogleTest文档herehere,但在这两个文档中,将其构建为.dll只是一个两句话的主题。

5sxhfpxr

5sxhfpxr1#

正如@Tsyvarev指出的那样,.dll文件是在一个(非常)不同的文件夹中创建的。

相关问题