2013-08-26 47 views
5

Tôi đang cố gắng tạo trình cài đặt .msi với cmake. Tôi có thể tạo các tệp .dll.lib với một số cấu hình trong CMakeLists.txt. Vui lòng cung cấp ví dụ CMakeLists.txt để tạo trình cài đặt .msi. Các lệnh mà tôi cần sử dụng trong dấu nhắc lệnh là gì?Cách tạo trình cài đặt .msi bằng cmake?

Các lệnh mà tôi đang sử dụng cho đến nay là:

> 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 

tôi đã sử dụng các cấu hình sau đây để tạo ra các tập tin .dll.lib.

Đây là tôi 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) 

Trả lời

5

Bạn cần phải đặt máy phát điện khi bạn chạy cpack nên thay vì

3) cpack -C Release
output: CPack Error: CPack generator not specified

Bạn nên xác định

cpack -G WIX -C Release 
2

Khả năng WiX đã được bổ sung trong CMake 2.8.11

+0

gì Steve muốn nói: Thay đổi bạn yêu cầu tối thiểu phiên bản CMake ít nhất 2.8.11 và chắc chắn phải có ít nhất phiên bản này. – usr1234567

Các vấn đề liên quan