이것은 내 previous question과 밀접한 관련이 있습니다. 이는 CMake를 사용하여 iPhone에서 정적 라이브러리를 빌드하는 것과 관련이 있습니다. 나는 그 일을 CMAKE_OSX_SYSROOT
으로 설정해야합니다.iPhone 용 앱을 빌드하기 위해 CMake를 설정하는 방법
그러나 앱을 만드는 데는 작동하지 않습니다.
project(TEST)
set(CMAKE_OSX_SYSROOT iphoneos2.2.1)
set(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_32_BIT)")
set(CMAKE_EXE_LINKER_FLAGS
"-framework Foundation -framework OpenGLES -framework AudioToolbox -framework CoreGraphics -framework QuartzCore -framework UIKit -framework OpenAL"
)
set(SRC --my files--)
add_executable(iphone-test MACOSX_BUNDLE ${SRC})
몇 가지 참고 사항 : I 명시 적으로 find_library
이 프레임 워크의 모든 작동하지 않았기 때문에 -framework
연결 옵션을 제공하고있어
- (그들의 대부분을 찾았지만 내
CMakeLists.txt
처럼 보이는 notOpenGLES
). 나는 왜 그들이 같은 폴더에 모두 있기 때문에, 이해가 안됩니다${SDK}/System/Library/Frameworks
. 이것은 내가 뭔가 잘못하고 있다고 믿게하지만, 나는 무엇을 몰라. add_executable
명령에MACOSX_BUNDLE
을 추가하여 생성 된 제품 유형이com.apple.product-type.tool
대신com.apple.product-type.application
이되도록 생성했습니다. 이는 분명 iPhone에 없습니다. 어떤 경우
, 응용 프로그램 컴파일 및 링크 정확하게,하지만 난 시뮬레이터에서 실행할 때, 나는 지칠대로 지친
Failed to launch simulated application: Unknown error.
가 구글과 유래에이 문제가보고 된 경우가 많이 있습니다 얻을 그러나 모든 솔루션에는 정리 작업이나 새 프로젝트 생성 및 파일 이동 작업이 포함됩니다. CMake가 작업을 마친 후 새로운 복사본을 컴파일하고 있으므로 그 중 아무 것도 적용되지 않습니다.
나는 CMake 메일 링리스트에서 this thread을 찾았지만, 도서관을 짓는 데 성공한 것으로보고하고 나서 크게 웃었다.
나는 당신의 대답이 매우 도움이된다는 것을 발견했다. 나는 CMake와 Xcode에서 정말로 잃어 버렸다. 약간 수정 된 버전의 CMakeLists 파일을 사용해 보았습니다. 그러나, 나는 이상한 문제들을 만났다. 아마 제 질문을보실 수 있을까요? http://stackoverflow.com/questions/5473448/cmake-and-xcode-cannot-find-interface-declaration-for-nsobject 미리 감사드립니다 :) – Shade
리소스에 대한 또 다른 방법이 있습니다. 여기를 참조하십시오. http :// /cmake.org/gitweb?p=cmake.git;a=blob;f=Tests/iOSNavApp/CMakeLists.txt 그러나 이것은 디렉토리 계층 구조를 제거하므로 중복 된 파일 이름이 문제가됩니다. –