How can I compile lame as static library(.a) for armv6 and armv7 of iPhone?

后端 未结 3 1419
既然无缘
既然无缘 2020-12-04 20:39

LAME(http://lame.sourceforge.net/) is a library written in c language. It can convert PCM sound files to MP3 files. I use it to convert sound files to MP3 files on iPhone. T

3条回答
  •  情深已故
    2020-12-04 21:02

    For Xcode 6.1, iOS SDK 8.1, I use below shell script:

    Support armv7, arm64, i686 and x86_64

    #!/bin/bash
    
    DEVELOPER=`xcode-select -print-path`
    
    SDK_VERSION="8.1"
    
    LAMEDIR="/Users/zuyuanzhou/Downloads/lame-3.99.5"
    
    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 " \
    CPP="${DEVELOPER}/Toolchains/XcodeDefault.xctoolchain/usr/bin/cpp" \
    --prefix="$LAMEDIR" \
    --host="$HOST" \
    --disable-shared \
    --enable-static \
    --disable-decoder \
    --disable-frontend
    
    make -j4
    cp "libmp3lame/.libs/libmp3lame.a" "build/libmp3lame-${PLATFORM}.a"
    }
    
    
    PLATFORM="i686"
    SDK="iPhoneSimulator"
    HOST="i686-apple-darwin14.1.0"
    build_lame
    
    PLATFORM="x86_64"
    build_lame
    
    PLATFORM="armv7"
    SDK="iPhoneOS"
    HOST="arm-apple-darwin9"
    build_lame
    
    PLATFORM="arm64"
    build_lame
    
    lipo -create build/* -output build/libmp3lame.a
    

提交回复
热议问题