>

xcode 6-beta 3을 사용하여 프레임 워크를 만들려고합니다. xcode를 사용하여 컴파일 할 때 작동하지만 다음 명령을 사용하여 터미널에서 컴파일 할 때 :

xcodebuild -project <projName> -scheme <schemeName>  -configuration Debug clean build

다음 오류가 발생합니다

CodeSign error: entitlements are required for product type 'Framework' in SDK 'Simulator - iOS 8.0'. Your Xcode installation may be damaged.

그리고 빌드가 완료되지 않았습니다. 로그 끝에

The following build commands failed:
PhaseScriptExecution Run\ Script build/myProj.build/Debug-iphoneos/myScheme.build/Script-DB9DC5BB19740464002F9181.sh


업그레이드 :


실패한 스크립트는 다음과 같습니다.

  #!/bin/sh 
# Config 
UFW_TARGET=AppCore
# Default build dir
UFW_BUILD_DIR="./build"
# Global vars
if [ -z ${SDK_NAME} ]; then
# Use the latest iphoneos SDK available
UFW_GREP_RESULT=$(xcodebuild -showsdks | grep -o "iphoneos.*$")
while read -r line; do
UFW_SDK_VERSION="${line}"
done <<< "${UFW_GREP_RESULT}"
else
# Use the SDK specified by XCode
UFW_SDK_VERSION="${SDK_NAME}"
fi
UFW_SDK_VERSION=$(echo "${UFW_SDK_VERSION}" | grep -o "[0-9].*$")
UFW_IPHONE_DIR="${UFW_BUILD_DIR}/${CONFIGURATION}-iphoneos"
UFW_SIMULATOR_DIR="${UFW_BUILD_DIR}/${CONFIGURATION}-iphonesimulator"
UFW_UNIVERSAL_DIR="${UFW_BUILD_DIR}/${CONFIGURATION}-universal"
# Static lib name
STATIC_LIB_NAME="appCore"
UFW_FRAMEWORK_DIR="${STATIC_LIB_NAME}.framework"
# Build Framework
rm -rf ${UFW_UNIVERSAL_DIR}
xcodebuild ARCHS="armv7 armv7s arm64" -target "${UFW_TARGET}" -configuration ${CONFIGURATION} -sdk iphoneos${UFW_SDK_VERSION} clean build RUN_CLANG_STATIC_ANALYZER=NO
if [ "$?" != "0" ]; then echo >&2 "Error: xcodebuild failed"; exit 1; fi
xcodebuild ARCHS="i386 x86_64" -target "${UFW_TARGET}" -configuration ${CONFIGURATION} -sdk iphonesimulator${UFW_SDK_VERSION} clean build RUN_CLANG_STATIC_ANALYZER=NO
if [ "$?" != "0" ]; then echo >&2 "Error: xcodebuild failed"; exit 1; fi
mkdir -p "${UFW_UNIVERSAL_DIR}"
mkdir -p "${UFW_UNIVERSAL_DIR}/${UFW_FRAMEWORK_DIR}"
mkdir -p "${UFW_UNIVERSAL_DIR}/${UFW_FRAMEWORK_DIR}/Headers"
cp -a "${UFW_IPHONE_DIR}/${UFW_FRAMEWORK_DIR}/Headers" "${UFW_UNIVERSAL_DIR}/${UFW_FRAMEWORK_DIR}"
echo "running lipo -create -ouput..."
lipo -create -output "${UFW_UNIVERSAL_DIR}/${UFW_FRAMEWORK_DIR}/${STATIC_LIB_NAME}" "${UFW_IPHONE_DIR}/${UFW_FRAMEWORK_DIR}/${STATIC_LIB_NAME}" "${UFW_SIMULATOR_DIR}/${UFW_FRAMEWORK_DIR}/${STATIC_LIB_NAME}"
if [ "$?" != "0" ]; then echo >&2 "Error: lipo failed for ${STATIC_LIB_NAME}"; exit 1; fi


아무도 내가 뭘 잘못하고 있는지 알고 있습니까?
 도움을 주시면 감사하겠습니다

  • 답변 # 1

    답을 찾았습니다.
    커스텀 프레임 워크는 iOS 8에서만 발표되었으므로 -sdk iphonesimulator8.0   스크립트에 추가해야하는 경우, Ios 8 전용 프로젝트를 빌드하기 위해 Xcode를 정의합니다.
    다음과 같아야합니다.

    xcodebuild -project <projName> -scheme <schemeName> -sdk iphonesimulator8.0 -configuration Debug clean build
    
    

    이 코드는 작동합니다

관련 자료

  • 이전 판다 MultiIndex에서 사전 사전 정렬 보장
  • 다음 camera - iPhone에서 ExposureMode AVCaptureExposureModeAutoExpose가 지원되지 않습니다