iOS 용 정적 라이브러리로 색상이있는 mp3 인코더를 컴파일하려고합니다. i686, armv6, armv7, armv7s 및 arm64를 포함한 모든 아키텍처를 지원하고 싶습니다.iOS 용 LAME을 컴파일 할 수 없습니다.
#!/bin/bash
DEVELOPER=`xcode-select -print-path`
SDK_VERSION="7.1"
mkdir build
function build_lame()
{
make distclean
./configure \
CFLAGS="-isysroot ${DEVELOPER}/Platforms/${SDK}.platform/Developer/SDKs/${SDK}${SDK_VERSION}.sdk" \
CC="${DEVELOPER}/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch ${PLATFORM} -miphoneos-version-min=7.0 " \
--prefix=/Users/mcrute/Desktop/lame \
--host="arm-apple-darwin9" \
--disable-shared \
--enable-static \
--disable-decoder \
--disable-frontend
make -j4
cp "libmp3lame/.libs/libmp3lame.a" "build/libmp3lame-${PLATFORM}.a"
}
SDK="iPhoneSimulator"
PLATFORM="i686"
build_lame
SDK="iPhoneOS"
PLATFORM="armv6"
build_lame
PLATFORM="armv7"
build_lame
PLATFORM="armv7s"
build_lame
PLATFORM="arm64"
build_lame
lipo -create build/* -output build/libmp3lame.a
그래서 오류는 다음과 같습니다 :
configure: error: in `/Users/ivan/Desktop/lame-3.99.5':
configure: error: C preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details
make: *** No targets specified and no makefile found. Stop.
cp: libmp3lame/.libs/libmp3lame.a: No such file or directory
Here 내 config.log 여기 내 빌드 스크립트입니다. | 빌드 대상에서 arm64를 제거하려고했지만 스크립트도 동일한 오류로 실패했습니다. Google은 내가 gcc를 가지고 있지 않다고 말했지만 .. 나는 어떤 제안을 찾고있다!
'/ lib 디렉토리/cpp'하면 그 값은 어디에서 오는가 알고있다 (특히 clang''의 경로 지정) 나에게 이상한 경로를 보인다? 'XcodeDefault.xctoolchain' 아래에'cpp' 바이너리가 있나요? 그것을 'CPP'의 경로로 설정하면 문제가 해결됩니까? –
나는 env CPP =/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cpp를 추가하려고 시도했다. 하지만 여전히 작동하지 않습니다. –
그게 올바른 길입니까? 당신은 그것을'configure' 호출에 추가 했습니까? 오류가 전혀 변경되지 않았습니까? –