Cześć!
Próbuję zbudować projekt mojej aplikacji na Androida - na Windows wszystko śmiga.
Projekt zawiera pliki typu resource (.qrc etc.).
Projekt buduję za pomocą CMakeList'a i chciałbym żeby tak pozostało - planuję zrobić dla większości platform aplikacje, zatem musi się budować automatycznie.
Kompilacja przebiegła pomyślnie, problem jest tylko z linkowaniem, jeden z błędów (wszystkie tyczą się tego samego):
C:\myGame\src\shaders/carMaterial.cpp:28: error: undefined reference to 'CarMaterial::qInitResources_materials()'
W CMakeList jest dodane:
(...)
QT5_ADD_RESOURCES("./resources/qml.qrc")
SET(ALL_SOURCES
${__main_HDRSRC}
(...)
${__resources_HDRSRC}
)
IF(ANDROID)
ADD_LIBRARY(myGame SHARED ${ALL_SOURCES})
ELSE()
ADD_EXECUTABLE(myGame WIN32 ${ALL_SOURCES})
ENDIF()
(...)
Projekt na Androida buduję za pomocą toolchain z repozytorium znajdującym się pod adresem:
https://github.com/LaurentGomila/qt-android-cmake
A tworzę projekt za pomocą polecenia:
cmake -DCMAKE_CXX_COMPILE_FEATURES=cxx_constexpr -DCMAKE_CXX_FLAGS="-std=gnu++14" -D ANDROID_NATIVE_API_LEVEL=android-9 -D CMAKE_TOOLCHAIN_FILE=../../qt-android-cmake/toolchain/android.toolchain.cmake -D CMAKE_MAKE_PROGRAM="%ANDROID_NDK%/prebuilt/windows-x86_64/bin/make.exe" -D QTDIR="%QTDIR%" -G "MinGW Makefiles" ..
Jakiś pomysł jak to naprawić?