• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            Khan's Notebook GCC/GNU/Linux Delphi/Window Java/Anywhere

            路漫漫,長修遠(yuǎn),我們不能沒有錢
            隨筆 - 173, 文章 - 0, 評論 - 257, 引用 - 0
            數(shù)據(jù)加載中……

            ffmpeg for ios 交叉編譯 (支持i686 armv7 armv7s) 包含lame支持



            由于項(xiàng)目還需要mp3 音頻編碼,  所以先需要下載lame源碼搭建交叉環(huán)境, 在lame目錄下錄入如下編譯腳本  
            build.sh
             1 #! /bin/sh
             2 
             3 
             4 SDK_VERSION="6.0"
             5 
             6 rm -rf build
             7 mkdir build
             8 
             9 function build_lame()
            10 {
            11     make distclean
            12 
            13     ./configure \
            14         CFLAGS="-isysroot /Applications/Xcode.app/Contents/Developer/Platforms/${SDK}.platform/Developer/SDKs/${SDK}${SDK_VERSION}.sdk" \
            15         CC="/Applications/Xcode.app/Contents/Developer/Platforms/${SDK}.platform/Developer/usr/bin/gcc -arch ${PLATFORM}" \
            16         --prefix=/Users/khan/Downloads/lame-3.99.5 \
            17         --host="arm-apple-darwin9" \
            18         --disable-shared \
            19         --enable-static \
            20         --disable-decoder \
            21         --disable-frontend
            22 
            23     make
            24     cp "libmp3lame/.libs/libmp3lame.a" "build/libmp3lame-${PLATFORM}.a"
            25 }
            26 
            27 PLATFORM="i686"
            28 SDK="iPhoneSimulator"
            29 build_lame
            30 
            31 #armv6和armv7 比較難共存
            32 #PLATFORM="armv6"
            33 #SDK="iPhoneOS"
            34 #build_lame
            35 
            36 PLATFORM="armv7"
            37 SDK="iPhoneOS"
            38 build_lame
            39 
            40 PLATFORM="armv7s"
            41 SDK="iPhoneOS"
            42 build_lame
            43 
            44 lipo -create build/* -output build/libmp3lame.a


            首先去https://github.com/yuvi/gas-preprocessor/
            下載gas-preprocessor.pl, 然后 復(fù)制到 /usr/sbin/目錄下(當(dāng)然, 你可以放在任何目錄下, 只要保證--as='/${path}/gas-preprocessor.pl'路徑正確)

            http://ffmpeg.org/download.html 下載ffmpeg源碼, git或者直接下載

            終端執(zhí)行以下指令
            #armv7s
            ./configure --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-pic --enable-cross-compile --enable-decoder=h264 --enable-libmp3lame \
                        --arch=arm --disable-asm \
                        --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc \
                        --as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' \
                        --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk \
                        --cpu=cortex-a8 \
                        --extra-cflags='-arch armv7s -I/Users/khan/Downloads/lame-3.99.5/include ' \
                        --extra-ldflags='-arch armv7s -L/Users/khan/Downloads/lame-3.99.5/build -lmp3lame  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk' \
                        --prefix=/Users/khan/Downloads/ffmpeg/arm7s.lib
            make
            make install

            make clean
            #armv7
            ./configure --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-pic --enable-cross-compile --enable-decoder=h264 --enable-libmp3lame \
                        --disable-asm  --arch=arm \
                        --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc \
                        --as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc' \
                        --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk \
                        --cpu=cortex-a8 \
                        --extra-cflags='-arch armv7 -I/Users/khan/Downloads/lame-3.99.5/include ' \
                        --extra-ldflags='-arch armv7 -L/Users/khan/Downloads/lame-3.99.5/build -lmp3lame  -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk' \
                        --prefix=/Users/khan/Downloads/ffmpeg/arm7.lib
            make
            make install

            make clean
            #i686
            ./configure --disable-doc --disable-ffmpeg --disable-ffplay --disable-ffserver --enable-pic --enable-cross-compile --enable-decoder=h264 --enable-libmp3lame \
                        --disable-asm --arch=i686 --cpu=i686 --disable-armv5te \
                        --target-os=darwin --cc=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc \
                        --as='gas-preprocessor.pl /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc' \
                        --sysroot=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk \
                        --extra-ldflags=-L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk/usr/lib/system \
                        --extra-cflags='-arch i686 -I/Users/khan/Downloads/lame-3.99.5/include ' \
                        --extra-ldflags='-arch i686 -L/Users/khan/Downloads/lame-3.99.5/build -lmp3lame ' \
                        --prefix=/Users/khan/Downloads/ffmpeg/i686.lib

            make
            make install
            make clean

            --prefix=/Users/khan/Downloads/ffmpeg/i686.lib/里為編譯后的目標(biāo)文件
            然后將各個目錄下的lib lipo一下 就可以同時在模擬器和各種該指令集的真機(jī)上運(yùn)行了

            lipo -create i686.lib/lib/libavcodec.a arm7.lib/lib/libavcodec.a arm7s.lib/lib/libavcodec.a       -output build/libavcodec.a
            lipo -create i686.lib/lib/libavdevice.a arm7.lib/lib/libavdevice.a arm7s.lib/lib/libavdevice.a    -output build/libavdevice.a
            lipo -create i686.lib/lib/libavfilter.a arm7.lib/lib/libavfilter.a arm7s.lib/lib/libavfilter.a           -output build/libavfilter.a
            lipo -create i686.lib/lib/libavformat.a arm7.lib/lib/libavformat.a arm7s.lib/lib/libavformat.a  -output build/libavformat.a
            lipo -create i686.lib/lib/libavutil.a arm7.lib/lib/libavutil.a arm7s.lib/lib/libavutil.a                 -output build/libavutil.a
            lipo -create i686.lib/lib/libswresample.a arm7.lib/lib/libswresample.a arm7s.lib/lib/libswresample.a   -output build/libswresample.a
            lipo -create i686.lib/lib/libswscale.a arm7.lib/lib/libswscale.a arm7s.lib/lib/libswscale.a         -output build/libswscale.a





            posted on 2012-12-13 16:45 Khan 閱讀(5882) 評論(0)  編輯 收藏 引用 所屬分類: GCC/G++

            久久不见久久见免费视频7| 国产成人精品久久免费动漫| 久久久亚洲欧洲日产国码二区| 国产精品久久久久久搜索| 亚洲人AV永久一区二区三区久久| 五月丁香综合激情六月久久| 久久久久亚洲精品中文字幕| 精品国产乱码久久久久久郑州公司 | 久久国产色av免费看| 久久er国产精品免费观看2| 亚洲人成电影网站久久| 国内精品伊人久久久久影院对白| 婷婷伊人久久大香线蕉AV| 亚洲欧美国产精品专区久久| 国产精品久久久久久久午夜片| 久久久久国产精品熟女影院| 无码任你躁久久久久久久| 亚洲一区中文字幕久久| 99re久久精品国产首页2020| 一本色道久久88—综合亚洲精品| 久久影视综合亚洲| 亚洲国产成人久久综合碰碰动漫3d| 久久婷婷五月综合色高清 | 久久久99精品成人片中文字幕| 日韩精品久久无码人妻中文字幕| 一个色综合久久| 日韩久久久久中文字幕人妻| 国产精品久久久久一区二区三区 | 国产精品99久久精品爆乳| 好属妞这里只有精品久久| 久久99精品久久久久久久不卡| 777午夜精品久久av蜜臀| 欧美一区二区久久精品| 一本久道久久综合狠狠躁AV| 三级韩国一区久久二区综合| 人妻少妇精品久久| 香蕉久久影院| 久久青青色综合| 无码人妻少妇久久中文字幕蜜桃| 日本欧美久久久久免费播放网| 人妻精品久久无码区|