生成与CMake的上MAC OSX一个.bundle文件(Generating a .bundle

2019-08-17 05:26发布

我要生成一个可执行.bundle文件上Mac OSX 10.6.8使用CMake 。 我的CMakeLists.txt文件看起来像:

cmake_minimum_required(VERSION 2.8)
PROJECT(TESTProject)
SET(MACOSX_BUNDLE_BUNDLE_NAME TEST)
ADD_EXECUTABLE(TEST MACOSX_BUNDLE main.cpp)
SET_TARGET_PROPERTIES(TEST PROPERTIES MACOSX_BUNDLE TRUE)

然后我打电话的CMake:

CMake -G"Xcode" .

然而,当我编译这个程序用Xcode 3.2.1 ,我不断地得到TEST.app文件,而不是一个TEST.bundle文件。

我在做什么错在这里?

Answer 1:

使用BUNDLE_EXTENSION target属性来获得不同的扩展比默认。 http://www.cmake.org/cmake/help/v2.8.10/cmake.html#prop_tgt:BUNDLE_EXTENSION

另外,我觉得。应用程序仅对可执行目标的默认值。 对于库或模块的目标,.bundle应该是默认值。

你尝试用库的目标?



Answer 2:

对于谁碰到这个运行,并试图建立一个图书馆.bundle任何人,这为我工作在CMake的3.0:

add_library(Foo MODULE ${SOURCES} ${HEADERS})
set_target_properties(Foo PROPERTIES BUNDLE TRUE)

关键是使用MODULESHARED 。 出于某种原因,CMake的忽略BUNDLE ,否则财产。



文章来源: Generating a .bundle file with CMake on MAC OSX