摇篮,包括实验 [英] Gradle-experimental includes

查看:186
本文介绍了摇篮,包括实验的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

什么是的build.gradle相当于:

  LOCAL_C_INCLUDES:= \\
    $(LOCAL_PATH)/包括/ \\
    $(LOCAL_PATH)/ lib中/ \\
    $(LOCAL_PATH)/ libcharset \\
    $(LOCAL_PATH)/ libcharset /包括/ \\

这会在Android.mk被发现。

我已经试过各种形式 jni.source.srcDirs

该文档定义了:

 模型{
    安卓{
        compileSdkVersion = 22
        buildToolsVersion =22.0.1
    }
    android.ndk {
        MODULENAME =本土
    }
    android.sources {
        主要{
            JNI {
                资源 {
                    SRCDIRSRC
                }
            }
        }
    }
}

但是相当于没有找到,包括:

  android.sources {
    主要{
        JNI {
            资源 {
                srcDirs + ='/ src目录/主/ JNI / libiconv的
                srcDirs + =/ src目录/主/ JNI / libiconv的/包括
                srcDirs + =/ src目录/主/ JNI / libiconv的/ lib目录
                srcDirs + =/ src目录/主/ JNI / libiconv的/ libcharset
                srcDirs + =/ src目录/主/ JNI / libiconv的/ libcharset /包括
            }
        }
    }
}

  android.sources {
    主要{
        JNI {
            资源 {
                srcDirs =/ src目录/主/ JNI / libiconv的
                           / src目录/主/ JNI / libiconv的/有,
                           / src目录/主/ JNI / libiconv的/ lib目录,
                           / src目录/主/ JNI / libiconv的/ libcharset
                           / src目录/主/ JNI / libiconv的/ libcharset /包括]
            }
        }
    }
}


解决方案

srcDirs只用于指定源。在DSL尚不支持的方式来指定包括直接,但您可以使用CPPFLAGS此:

  android.ndk {
    // ...
    CPPFLAGS + =-I $ {文件(钢骨混凝土/主/ JNI / libiconv的/包括)}的toString()
    // ...
}

What is the build.gradle equivalent of:

LOCAL_C_INCLUDES := \
    $(LOCAL_PATH)/include/ \
    $(LOCAL_PATH)/lib/ \
    $(LOCAL_PATH)/libcharset \
    $(LOCAL_PATH)/libcharset/include/ \

that would be found in Android.mk.

I've tried various forms of jni.source.srcDirs

The documentation defines:

model {
    android {
        compileSdkVersion = 22
        buildToolsVersion = "22.0.1"
    }
    android.ndk {
        moduleName = "native"
    }
    android.sources {
        main {
            jni {
                source {
                    srcDir 'src'
                }
            }
        }
    }
}

However the equivalent does not find the includes:

android.sources {
    main {
        jni {
            source {
                srcDirs += '/src/main/jni/libiconv'
                srcDirs += "/src/main/jni/libiconv/include"
                srcDirs += "/src/main/jni/libiconv/lib"
                srcDirs += "/src/main/jni/libiconv/libcharset"
                srcDirs += "/src/main/jni/libiconv/libcharset/include"
            }
        }
    }
}

OR:

android.sources {
    main {
        jni {
            source {
                srcDirs = ["/src/main/jni/libiconv",
                           "/src/main/jni/libiconv/include",
                           "/src/main/jni/libiconv/lib",
                           "/src/main/jni/libiconv/libcharset",
                           "/src/main/jni/libiconv/libcharset/include" ]
            }
        }
    }
}

解决方案

srcDirs is used to specify sources only. The DSL doesn't support yet a way to specify includes directly, but you can use cppFlags for this:

android.ndk {
    //...
    cppFlags  += "-I${file("src/main/jni/libiconv/include")}".toString()
    //...
}

这篇关于摇篮,包括实验的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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