如何指定Android NDK CMake构建目录

时间:2017-08-30 07:07:44

标签: android cmake android-ndk android-gradle

我正在通过Android Studio构建一些C ++库,我不想用那些.externalNativeBuild文件夹污染我的源代码树。

是否可以为Java二进制文件指定它们应该像buildDir那样着陆的位置?

我尝试使用-B这样的参数:

   externalNativeBuild
    {
        cmake
        {
            arguments '-DANDROID_PLATFORM=android-14',
                    '-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=gnustl_static',
                    '-BC:/Dev/AndroidCMake'
        }
    }

它在某种程度上起作用,因为创建了指定的文件夹并包含一些构建的副产品。但是,构建已损坏,仍会创建.externalNativeBuild文件夹。它也包含一些文件。所以看起来该文件夹是在工具链的其他地方指定的。

以下是我遇到的错误:

Error:Expected json generation to create 'C:\Dev\Android\TestApp\app\.externalNativeBuild\cmake\debug\armeabi-v7a\android_gradle_build.json' but it didn't

该json文件落在指定的-B文件夹中,但工具链仍然期望在其他文件夹中。

1 个答案:

答案 0 :(得分:0)

我偶然回答了自己的问题。 显然你需要使用那个buildStagingDirectory属性。 我还没有测试它,但我相信它会做到这一点。