Androidスタジオでリンカエラーが発生すると、-vを使用して呼び出しを表示するように勧められますが、 「冗長出力」(according to llvm clang command guide)を取得しますか?clangの-vを使用して未定義の参照エラーを詳細に出力する方法(Android-Studio)
はすでに試した:私が気づい限り出力に何も変更されていない
externalNativeBuild {
cmake {
cppFlags "-frtti -fexceptions -v"
}
}
と
--stacktrace --debug
に
Settings > Compiler > Command-line Options
どのように出力を表示していますが、私が探しているものではありません!
あらかじめご協力いただきありがとうございます。
EDIT
私は明らかにCFLAGSを使用していたCファイルをコンパイルしておりますので。
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.3"
defaultConfig {
applicationId "<my_id>"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
externalNativeBuild {
cmake {
cFlags "-v"
}
}
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
externalNativeBuild {
cmake {
path "CMakeLists.txt"
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.1'
testCompile 'junit:junit:4.12'
}
EDIT 2
私は、彼らが持っていたしません気づいていないいくつかのC-クラスで、次のプリプロセッサコマンドを追加:(@AlexコーンにTHX)は、次のように今のGradleファイルが見えますそれ、私が行方不明参照についての私のリンカエラーを取り除くことができました:
#ifdef __cplusplus
extern "C"
{
#endif
// your includes and your code here
#ifdef __cplusplus
}
#endif
あなたは 'cppFlags" -frtti、-fexceptions、-v "'を試しましたか? –
ちょうど成功なしに試みました。 cppFlags "-frtti -fexceptions"が自動生成され、-vが追加されました.btw –
これは変です。実際には、私のためにカンマで区切られたリストと引用符付きの文字列の両方がスペースで動作します。 'app/.externalNativeBuild/cmake/debug/armeabi-v7a/android_gradle_build.json'ファイルをチェックしてください。しかし、私は仮説を持っています。多分あなたはCファイルをコンパイルしていますか? –