美文网首页
mac系统platinum(Android)编译

mac系统platinum(Android)编译

作者: DON_1007 | 来源:发表于2020-04-05 12:50 被阅读0次

    platinum是一个使用比较广泛的dlna开源库,今天记录下platinum在mac电脑上的编译过程。
    首先在github中搜索platinum
    下载代码 git clone https://github.com/plutinosoft/Platinum
    按照官方提示Android版本的编译步骤为

    > scons target=arm-android-linux build_config=Release
    > cd Source/Platform/Android/module/platinum
    > ndk-build NDK_DEBUG=0
    

    但是在编译过程中可能会碰到以下问题

    1、配置ANDROID_NDK_ROOT

    首先在~/.bash_profile中配置环境变量ANDROID_NDK_ROOT,我这里使用的ndk版本是r13b,例如:

    # Add NDK for platinum
    export ANDROID_NDK_ROOT=/Users/xxx/Library/Android/ndk/android-ndk-r13b
    

    2、 scons: command not found

    执行scons target=arm-android-linux build_config=Release
    可能会出现 scons: command not found
    需要安装 scons,方法brew install scons

    3、arm-linux-androideabi-g++: command not found

    再次执行scons target=arm-android-linux build_config=Release
    提示 arm-linux-androideabi-g++: command not found
    解决办法,参考https://blog.csdn.net/zangcf/article/details/42740261?locationNum=5
    修改Build/Targets/arm-android-linux/Config.scons中的

    ANDROID_CROSS_PREFIX = 'arm-linux-androideabi'
    

    为绝对路径

    ANDROID_CROSS_PREFIX = os.path.join(ANDROID_NDK_ROOT,'toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi')
    

    4、fatal error: Neptune.h: No such file or directory

    再次执行scons target=arm-android-linux build_config=Release
    提示fatal error: Neptune.h: No such file or directory
    ThirdParty/目录下Neptune目录为空,需要单独下载Neptune
    git clone https://github.com/plutinosoft/Neptune.git
    下载成功之后再次执行
    scons target=arm-android-linux build_config=Release
    如果看到
    scons: done building targets.
    代表成功,之后再执行下面两条命令

    cd Source/Platform/Android/module/platinum`
    ndk-build NDK_DEBUG=0
    

    如果一切顺利,会在 Source/Platform/Android/module/platinum/libs下生成libplatinum-jni.so

    5、macOS 10.15可能碰到的问题

    提示谨慎升级macOS 10.15
    如果你已经升级了macOS10.15,编译过程中可能还会遇到以下问题

    1)brew install secons执行异常

    需要升级版本 brew update

    2)xcrun: error: invalid active developer path, missing xcrun

    需要重装command line tools
    xcode-select –install

    3)ndk编译的时候 clang++、clang 无法打开

    需要在terminal执行以下命令

    sudo xattr -r -d com.apple.quarantine /Users/xxx/Library/Android/ndk/android-ndk-r13b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang++
    sudo xattr -r -d com.apple.quarantine /Users/xxx/Library/Android/ndk/android-ndk-r13b/toolchains/llvm/prebuilt/darwin-x86_64/bin/clang
    

    相关文章

      网友评论

          本文标题:mac系统platinum(Android)编译

          本文链接:https://www.haomeiwen.com/subject/mxvwrhtx.html