wordpress   发布时间:2022-04-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了windows – 如何使用cmake生成.msi安装程序?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我正在尝试使用cmake生成.msi安装程序.我能够在CMakeLists.txt中使用一些配置生成.dll和.lib文件.请提供示例CMakeLists.txt以生成.msi安装程序.我需要在命令提示符中使用哪些命令? 到目前为止我使用的命令是: > cmake -G"Visual Studio 10" -H"Root CMakeLists.txt path" -B"path to genera
我正在尝试使用cmake生成.msi安装程序.我能够在CMakeLists.txt中使用一些配置生成.dll和.lib文件.请提供示例CMakeLists.txt以生成.msi安装程序.我需要在命令提示符中使用哪些命令?

到目前为止我使用的命令是:

> cmake -G"Visual Studio 10" -H"Root CMakeLists.txt path" -B"path to generate the sln"
> cmake --build "path of the sln" --config Release
> cpack -C Release
output: CPack Error: CPack generator not specified

我使用以下配置生成.dll和.lib文件.

这是我的CMakeLists.txt:

CMAKE_MINIMUM_required(VERSION 2.8)
PROJECT(mydll)
INCLUDE_DIRECTORIES(common/include) 
SET(my_lib_src dllmain.cpp mydll.cpp )
SET_SOURCE_FILES_PROPERTIES(${my_lib_src} PROPERTIES LANGUAGE C)
ADD_LIBRARY(mydll  SHARED ${my_lib_src})
SET_TARGET_PROPERTIES(mydll PROPERTIES 
LINKER_LANGUAGE C                                                                      RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/common/bin
RUNTIME_OUTPUT_DIRECTORY_DEBUG ${CMAKE_SOURCE_DIR}/common/bin
ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/common/lib
ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_SOURCE_DIR}/common/lib)
install(TARGETS mydll 
  ARCHIVE
  DESTINATION lib
  COMPONENT libraries)
install(FILES mydll.h
  DESTINATION include
  COMPONENT headers)
set(CPACK_GENERATOR WIX)
set(CPACK_PACKAGE_NAME "mydll")
set(CPACK_PACKAGE_VENDOR "CMake.org")
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "MyLib - CPack Component Installation Example")
set(CPACK_PACKAGE_VERSION "1.0.0")
set(CPACK_PACKAGE_VERSION_MAJOR "1")
set(CPACK_PACKAGE_VERSION_MINOR "0")
set(CPACK_PACKAGE_VERSION_PATCH "0")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "CPack Component Example")

INCLUDE(CPack)

解决方法

您需要在运行cpack时设置生成器,而不是

你应该指定

cpack -G WIX -C Release

大佬总结

以上是大佬教程为你收集整理的windows – 如何使用cmake生成.msi安装程序?全部内容,希望文章能够帮你解决windows – 如何使用cmake生成.msi安装程序?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: