Android Studio, başlık dosyamı modülümün ana kaynak klasöründen farklı bir konumda bulunduğunda bulamıyor. Bu kırmızıyla vurgulanan "SDL_config.h" ifadeleri #include tarafından fark edilir (diğer #include ifadeleri iyidir).Bir C/C++ ayarı, Gradle Experimental Plugin ile nasıl bir yol oluşturur?
aşağıda CPPFLAGS değerlerini değiştirerek denedim ama bu CPPFLAGS hatta hiç derleyiciye geçirilen olduğunu şüphe etmeye başlıyorum.
kimse bu şekilde onların ana kaynak klasörü dışında klasörlerden dosyaları dahil başardı mı? Ben CPPFLAGS, ya da belki modulename hatta kaynakları belirttiğiniz şekilde bir sorun
var mı?
Ben SDL2 kaynağı geçmesi ve bağıl #include yollara #include tabloların tamamını değiştirmek ama gerçekten SDL2 kaynağını değiştirmek istemiyoruz başladı. Bir şekilde dahil edilen yolların bir listesini belirtmeliyim.
apply plugin: 'com.android.model.application'
model {
...
android.ndk {
moduleName = 'main'
//W:\hello-sdl-android\android-project\app\src\main\jni\SDL2\include
cppFlags += "-I${file("src/main/jni/SDL2/include")}".toString()
cppFlags += "-I${file("src/main/jni/SDL2/src")}".toString()
}
android.sources {
main.jni {
source {
srcDirs += ['src/main/jni/src']
srcDirs += ['src/main/jni/SDL2/src']
}
}
}
...
}
GÜNCELLEME: İşte benim mevcut proje düzenine daha fazla bilgi verilmiştir:
app/src/main/jni app/src/main/jni/src/main.cpp < - Bu derleme uygulaması/src/main/jni/SDL2 < - Bütün SDL2 kaynağı burada app altında/src/main/jni/GLM < - Bu düzen örnek projesini kullanarak doğrudan bir sonucudur
burada altındaki tüm GLM kaynağı olan Burada sağlandı: https://gitlab.com/scannerdarkly/hello-sdl-androidBu proje, komut satırından ndk-build kullanılarak oluşturulacak - Android Studio'da geliştirerek bir adım daha ileriye taşımak istedim. Projem, bir GLES2 cihazında bir üçgen çizmeye çalışacak. ..
cFlags += "-I" + file("src/main/jni/SDL2/include").absolutePath
ve bu işler:
http://www.mediafire.com/download/92577p7vf123l72/hello-sdl-android.zip
Teşekkür - I will Bunu birkaç saat içinde deneyin ve yardımcı olup olmadığını size bildirin. Cevabın diğer cevabı ise sileceğim. – SparkyNZ
Bu hala benim için çalışmıyor. Aslına bakarsanız, #include "SDL_config.h" dosyasını main.cpp dosyasına yerleştirmeyi denedim ve iyi görünüyor. Benim bir problemim olduğu SDL2 kaynağını derlerken.Yani ek bir "moduleName" veya bir "sub" modül adı belki de ihtiyacım var? "ModuleName" in aslında ne ifade ettiği konusunda kafam karıştı - kesinlikle bir yürütülebilir dosya veya kütüphane anlamına gelir - bireysel bir .cpp dosyası değil. Kısa bir süre içinde indirme linki vereceğim. Bunu işe almak başkalarına fayda sağlayacaktır. – SparkyNZ
Bir şey daha - SDL kaynak dosyaları C dosyalarıdır .. Main.cpp bir C++ dosyasıdır. Belki benim sorunum "cppFlags" ek olarak "cFlags" ilan etmek kadar basit? – SparkyNZ