@newbiSoso said in Can't perform android app release:
Build only results in debug version not the release one
Really? see below:
Starting: "D:\android-ndk-r19c-windows-x86_64\android-ndk-r19c\prebuilt\windows-x86_64\bin\make.exe" -f D:/felgoProjects/build-TabTab_final-Android_for_armeabi_v7a_Clang_Qt_5_13_2_for_Android_ARMv7-Release/Makefile
it looks like qmake from Felgo framework is using Makefile from Release folder...
Nobody is supposed to know what formats 25 and 28 are.... Qt has symbol to represent formats.
But QImage has bits() and you can read them anyway you like - just get larger chunks for each pixel and its component.
@kdbcz said in Qt Android Progress bar:
I already tried stylesheet, but I also did not find nothing about these lines. With the same source on linux no lines, only on android.
My point is that if you force a custom stylesheet, the lines might go away, even if you don't specifically target them.
@LtKoerschgen You are right about all symptoms. I also agree with this:
For me it is really a disadvantage of the notification example to name the C++ class the same way as the Java class. This way it is more confusing to distinguish between the Java class and the C++ class.
Very poor design, especially misleading for someone who doesn't know this API (like me). I was trying to figure out for a while either the naming has anything to do with this.
I will also leave my extended solution in case anyone needs it:
public class NotificationClient
private static final String m_channelId = "channel";
public static void notify(Context context, String title, String body)
if (Build.VERSION.SDK_INT >= 26)
m_builder = new Notification.Builder(context, m_channelId);
m_builder = new Notification.Builder(context);
NotificationManager m_notificationManager = (NotificationManager)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP)
private static void createChannel(Context context)
NotificationChannel channel = new NotificationChannel(
m_channelId, "General", NotificationManager.IMPORTANCE_HIGH);
channel.setDescription("The general channel");
NotificationManager notificationManager = (NotificationManager)
@Robespier said in Offline Compilation:
@JKSH Thanks, but I work on Qt Creator
Qt Creator does not contain the Android tools. Qt Creator simply invokes the Android SDK that is installed on your PC.
I believe you can still use the Android Studio to configure the Android SDK for Qt Creator.
Looks like I've found some info: https://github.com/raspberrypi/tools/issues/81#issuecomment-358281044
He says there was an ABI change in GCC 5, so it looks like compatibility between 4.9.3 and 6.3.0 is not guaranteed.
There's an issue in Raspberry Pi repo: https://github.com/raspberrypi/tools/issues/81. It is still open for now. While RPi foundation haven't provided an answer, a number of people have built their own toolchains, for example here: https://github.com/raspberrypi/tools/issues/81#issuecomment-541411881
I have not tried 5.14 on Android yet, so I might be wrong. But I've seen this error before and it was usually caused wrong NDK API level. Make sure you're using recent enough SDK, NDK and try to bump the NDK platform (Qt Creator, for some reason, default to API level 16 which is too old).
I think I have found the solution)) from this link.
and this link also helped me to understand the error:
There was said:
you should never rely on the garbage collector. It will only work relieably when you use component.createObject(null) and then it will relieably destroy your object at random times, most likely before you want it to be gone, as the reference counting is broken. If it runs to seldomly your application will crash as soon as it runs. If you use component.createObject(someParent) it won't work at all.
Creating a Component Dynamically
To dynamically load a component defined in a QML file, call the Qt.createComponent() function in the Qt object. This function takes the URL of the QML file as its only argument and creates a Component object from this URL.
Once you have a Component, you can call its createObject() method to create an instance of the component. This function can take one or two arguments:
->The first is the parent for the new object. The parent can be a graphical object (i.e. of the Item type) or non-graphical object (i.e. of the QtObject or C++ QObject type). Only graphical objects with graphical parent objects will be rendered to the Qt Quick visual canvas. If you wish to set the parent later you can safely pass null to this function.
->The second is optional and is a map of property-value ...
So, my mistake was at creating the group's ItemObject without parent. So I fixed that line as this:
groups.append(groupItem.createObject(lvGroups)) // create a new group into Group's list (main list)
The source of the problems has not yet been found, but there are no problems when starting the application through the EGLFS, but they are when starting through the X11.
The main problem is that when playing a video, overlapping frames (bands) are visible since vsync is disabled. And the processor is 100 percent loaded.
There are still minor problems. For example, a broken multitouch on the touch panel. I think these problems can be solved, but it will take extra time as usual.
@jsulm thanks for the help/pointers.
Went out of town for thanksgiving. I tried building before I left by modifying a file.
I am using the krogoth meta-qt5 but I am struggling to find where I can set that. I changed the qt5-git.inc file to 5.12 but had issues with qtenginio. Reading closing it says qt_modules so it must be some place else.
Not sure where I can put the hash like you suggested for the commit on the newest (or newer) of qt 5.
hi @rickp and welcome,
I don't think this is an issue that many user's have encountered.
So I would suggest to bring this on the mailing list of Qt.
You may have more luck there.
Did you solve this problem? I have a simmilar issue
:-1: error: dependent '..\App\vcpkg\installed\x86-windows\include\boost\numeric\conversion\detail\preprocessed\numeric_cast_traits_common.hpp' does not exist.
although it does exsist...
Hmmm a bit of googling around finds me a 2015 review of the Dell device https://techreport.com/review/27790/dells-venue-8-7000-tablet-reviewed/ containing:
The other important item of note is the x86 instruction set, which differs from the ARM ISA that dominates the mobile world.
Intel and Google have been collaborating on x86 Android optimizations since 2011, so the ISA shouldn’t pose a problem with modern software. Android’s Dalvik VM can generate the appropriate instructions, and binaries compiled with the Native Developer Kit can target x86 specifically. In cases where ARM-specific code is the only option, binary translation software serves as an interpreter. There’s some unavoidable overhead associated with translating ARM instructions to x86, but Intel contends that the impact is minimal. Any potential ISA issues may ultimately be rendered moot by Lollipop, which features a new runtime environment with a cross-platform compiler.
so it does indeed seem to be code translation. Is this pretty standard for x86 Android devices these days, or an unusual exceptional case?
(A bit more research suggests x86-Android is a complete dead end with no new devices in years... so probably not something it's worth worrying about).