使用 CMake 生成平面缓冲区 windows 共享库
Generate flatbuffers windows shared lib with CMake
我正在尝试使用 CMake 生成 Google 平面缓冲区 (https://github.com/google/flatbuffers) 的 Windows 共享库 (dll)。
我使用了下面的 cmake
命令,但它总是在我构建它时生成一个静态库 (*.lib)。
cmake .. -G "Visual Studio 16 2019" -DBUILD_SHARED_LIBS=ON
我也尝试了选项 CMAKE_IMPORT_LIBRARY_SUFFIX
和
CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
使用 CMake。不幸的是它总是生成一个 *.lib
我需要做什么来生成*.dll?
在Flatbuffers CMake代码中,有一个CMake选项FLATBUFFERS_BUILD_SHAREDLIB
here:
option(FLATBUFFERS_BUILD_SHAREDLIB
"Enable the build of the flatbuffers shared library"
OFF)
您可以在调用 CMake 以启用 shared 库构建时设置此选项:
cmake .. -G "Visual Studio 16 2019" -DFLATBUFFERS_BUILD_SHAREDLIB=ON
为了将来参考,您可以使用以下命令列出所有缓存的 CMake 变量:
cmake -LH
这将显示您可以为构建配置的所有已定义 FLATBUFFERS_*
选项。
我正在尝试使用 CMake 生成 Google 平面缓冲区 (https://github.com/google/flatbuffers) 的 Windows 共享库 (dll)。
我使用了下面的 cmake
命令,但它总是在我构建它时生成一个静态库 (*.lib)。
cmake .. -G "Visual Studio 16 2019" -DBUILD_SHARED_LIBS=ON
我也尝试了选项 CMAKE_IMPORT_LIBRARY_SUFFIX
和
CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS
使用 CMake。不幸的是它总是生成一个 *.lib
我需要做什么来生成*.dll?
在Flatbuffers CMake代码中,有一个CMake选项FLATBUFFERS_BUILD_SHAREDLIB
here:
option(FLATBUFFERS_BUILD_SHAREDLIB
"Enable the build of the flatbuffers shared library"
OFF)
您可以在调用 CMake 以启用 shared 库构建时设置此选项:
cmake .. -G "Visual Studio 16 2019" -DFLATBUFFERS_BUILD_SHAREDLIB=ON
为了将来参考,您可以使用以下命令列出所有缓存的 CMake 变量:
cmake -LH
这将显示您可以为构建配置的所有已定义 FLATBUFFERS_*
选项。