2

問題を再現するためにCMake2.8.2を使用して試したセットアップは次のとおりです。

/test.sh:

/CMakeLists.txt:

cmake_minimum_required(VERSION 2.8)

SET(CPACK_PACKAGE_NAME test)
SET(CPACK_PACKAGE_VERSION 1.0)

LIST(APPEND CPACK_GENERATOR RPM)

SET(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "test.sh")

INCLUDE(CPack)

それから:

mkdir build && cd build && cmake .. && make package

結果:

CPackRPM:警告:CPACK_RPM_POST_INSTALL_SCRIPT_FILEが存在しません-無視します

ビルドシステムに私のファイルtest.shを認識させる方法は?

4

1 に答える 1

7

絶対パスを使用する必要があります:

SET(CPACK_RPM_POST_INSTALL_SCRIPT_FILE "${CMAKE_CURRENT_SOURCE_DIR}/test.sh")

test.shこれが必要になるのは、CPackRPM がファイルの絶対パスを必要とするためです。これは、CPack がソース ツリーに相対的であることを認識していないためです。

于 2010-08-31T16:22:32.700 に答える