我如何告诉Android Studio在CMake中使用GCC 4.9? [英] How do I tell Android Studio to use GCC 4.9 with CMake?

查看:1420
本文介绍了我如何告诉Android Studio在CMake中使用GCC 4.9?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Android Studio 2.2中使用了NDK r12。我需要CMake来使用GCC 4.9而不是Clang来构建我们的代码库,但是即使我提供了以下内容,它仍然使用clang:

  android {
compileSdkVersion 17
buildToolsVersion25.0.0

defaultConfig {
minSdkVersion 15
targetSdkVersion 17

externalNativeBuild {
cmake {
arguments'-DBUILD_TESTING = OFF -DANDROID_TOOLCHAIN = gcc-4.9'
cppFlags-std = c ++ 14 -fexceptions -frtti
}



$ / code $ / pre

我试过 -DANDROID_TOOLCHAIN = gcc ,但这也不起作用。我怎样才能让CMake使用GCC ARM工具链?

解析方法

拆分参数将字符串转换为每个参数的一个字符串:

  arguments'-DBUILD_TESTING = OFF',' -  DANDROID_TOOLCHAIN = gcc'

我不知道是否可以明确指定GCC的版本4.9(gcc-4.9没有工作)。然而,由于GCC 4.8在NDK r11中被删除,所以这是多余的,因此GCC 4.9现在是NDK中包含的唯一GCC版本,因此 ANDROID_TOOLCHAIN = gcc 隐含地表示GCC 4.9。

I'm using NDK r12 with Android Studio 2.2. I need CMake to use GCC 4.9 instead of Clang to build our code base, however even if I provide the following it still uses clang:

android {
    compileSdkVersion 17
    buildToolsVersion "25.0.0"

    defaultConfig {
        minSdkVersion 15
        targetSdkVersion 17

        externalNativeBuild {
            cmake {
                arguments '-DBUILD_TESTING=OFF -DANDROID_TOOLCHAIN=gcc-4.9'
                cppFlags "-std=c++14 -fexceptions -frtti"
            }
        }
    }
}

I've tried -DANDROID_TOOLCHAIN=gcc as well but this doesn't work either. How can I get CMake to use GCC ARM toolchain?

解决方案

Split your arguments string into one string per argument:

arguments '-DBUILD_TESTING=OFF','-DANDROID_TOOLCHAIN=gcc'

I don't know if it's possible to explicitly specify version 4.9 of GCC ("gcc-4.9" didn't work). However, that's redundant anyway since GCC 4.8 was removed in NDK r11, so GCC 4.9 is now the only version of GCC included in the NDK, and ANDROID_TOOLCHAIN=gcc therefore implicitly means GCC 4.9.

这篇关于我如何告诉Android Studio在CMake中使用GCC 4.9?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆