Category Archives: Operating Systems

Built my QT app for Android with API level 30 (Android 11)

New Android App Bundle and target API level requirements in 2021:

Starting August 2021, new apps will be required to target API level 30 (Android 11) and use the Android App Bundle publishing format. Starting November 2021, all app updates will be required to target API level 30 (Android 11). Apps with a download size of more than 150 MB are now supported by Play Asset Delivery and Play Feature Delivery.

I updated the manifest manually as follows:

<?xml version="1.0"?>
<manifest package="net.geographx.LinesGame" xmlns:android="http://schemas.android.com/apk/res/android" android:versionName="2.5.30" android:versionCode="161" android:installLocation="auto">
    <uses-sdk android:minSdkVersion="21" android:targetSdkVersion="30"/>
(more…)

My QT Android app periodically crashes at android::RefBase::incStrong(void const*)

The call stack is:

  #00  pc 00000000000097a8  /system/lib/libutils.so (android::RefBase::incStrong(void const*) const+4)
  #00  pc 0000000000022145  /vendor/lib/libIMGegl.so
  #00  pc 000000000000ab79  /vendor/lib/libIMGegl.so (KEGLGetDrawableParameters+252)
  #00  pc 0000000000041c53  /vendor/lib/egl/libGLESv2_mtk.so
  #00  pc 000000000001663d  /vendor/lib/egl/libGLESv2_mtk.so
  #00  pc 0000000000016b01  /vendor/lib/egl/libGLESv2_mtk.so (glClear+440)
  #00  pc 000000000008acaf  /data/app/net.geographx.LinesGame-9_pUex92-tGEqE4iIbRCCw==/lib/arm/libLinesGameQt_armeabi-v7a.so (LinesGame::Squircle::beforeRendering()+270)
  #00  pc 000000000017d5b9  /data/app/net.geographx.LinesGame-9_pUex92-tGEqE4iIbRCCw==/lib/arm/libQt5Core_armeabi-v7a.so
  #00  pc 0000000000176f4d  /data/app/net.geographx.LinesGame-9_pUex92-tGEqE4iIbRCCw==/lib/arm/libQt5Quick_armeabi-v7a.so (QQuickWindowPrivate::renderSceneGraph(QSize const&, QSize const&)+172)

It is a QT bug that is not fixed yet.

Also my app crashes at the destructor of std::thread and this also a QT bug that is not fixed yet.

Building QT 6.1.0 for Android on Windows

Theoretically it can be:

git clone --recursive https://code.qt.io/qt/qt5.git --branch v6.1.0

or alternatively:

git clone https://code.qt.io/qt/qt5.git --branch v6.1.0
./init-repository --branch --module-subset=essential,qtandroidextras,qtsvg,qtquickcontrols2,qtgraphicaleffects,qtwebsockets,qtmultimedia

or

./init-repository --module-subset=all
(more…)

QT 5.15.2 app crashes on Android 5.1

My QT 5.15.2 app crashes on Android 5.1 with the following call stack:

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Build fingerprint: 'Android/sdk_google_phone_x86_64/generic_x86_64:5.1.1/LMY48X/6402608:userdebug/test-keys'
Revision: '0'
ABI: 'x86_64'
pid: 3954, tid: 3998, name: qtMainLoopThrea  >>> net.geographx.LinesGame <<<
signal 6 (SIGABRT), code -6 (SI_TKILL), fault addr --------
Abort message: 'art/runtime/mirror/art_method.cc:356] Check failed: !IsFastNative() int java.lang.Character.digitImpl!(int, int)'
    rax 0000000000000000  rbx 0000000000000f9e  rcx ffffffffffffffff  rdx 0000000000000006
    rsi 0000000000000f9e  rdi 0000000000000f72
    r8  0000000000000022  r9  0000000000000002  r10 0000000000000008  r11 0000000000000206
    r12 000000000000000b  r13 0000000000000006  r14 00007f747b51a000  r15 0000000000000051
    cs  0000000000000033  ss  000000000000002b
    rip 00007f7488099e37  rbp 00007f7467007b70  rsp 00007f74670063e8  eflags 0000000000000206
(more…)

Mining Chia cryptocurrency on Windows 10

I bought a 6TB HDD for 19 990 rubles (in Russia) and started to mine Chia cryptocurrency on my Windows 10 machine using existing 500GB SSD as a temporary space. Now it is building the plots:

(more…)

Error reading file: No space left on device

I had a large SQLite file C:\Users\D-Ef\AppData\Local\TradeClient\realtime.db that I was unable to copy to another disk. I tried:

split -n 10 -d -u realtime.db /mnt/d/db/rt
dd bs=65536 if=realtime.db of=/mnt/d/db/rt

in WSL, but got ‘error reading ‘realtime.db’: No space left on device’ with all the commands.

Finally I reduced page file size restarted my machine and copied the file in a usual way.

(more…)

Resizing a partition on HiveOS

There was some strange partition /dev/sda2 of 6.5G size on my HiveOS:

root@rig0:/# cat /proc/partitions
major minor  #blocks  name                                                                                                                                                                                         

8        0  117219767 sda                                                                                                                                                                                       
8        1      20480 sda1                                                                                                                                                                                      
8        2    7323648 sda2             

root@rig0:/# df -h                                                                                                                                                                                                 
Filesystem      Size  Used Avail Use% Mounted on                                                                                                                                                                   
udev            1.9G     0  1.9G   0% /dev                                                                                                                                                                         
tmpfs           383M   44M  340M  12% /run                                                                                                                                                                         
/dev/sda2       6.8G  6.5G     0 100% /                                                                                                                                                                            
tmpfs           1.9G     0  1.9G   0% /dev/shm                                                                                                                                                                     
tmpfs           5.0M     0  5.0M   0% /run/lock                                                                                                                                                                    
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup                                                                                                                                                               
tmpfs           100M   16K  100M   1% /tmp                                                                                                                                                                         
tmpfs           1.9G     0  1.9G   0% /var/tmp                                                                                                                                                                     
tmpfs           1.9G   30M  1.9G   2% /var/log                                                                                                                                                                     
tmpfs           1.9G     0  1.9G   0% /var/log/journal                                                                                                                                                             
tmpfs           1.9G     0  1.9G   0% /var/log/apt                                                                                                                                                                 
/dev/sda1        20M  5.7M   15M  29% /hive-config
(more…)

Installing Jabber Messaging Service on Ubuntu 16.04

sudo apt install ejabberd
ufw allow to any port 5280 proto tcp
ufw allow to any port 5222 proto tcp
ufw allow to any port 5269 proto tcp
ufw allow to any port 7777 proto tcp
sudo nano /etc/ejabberd/ejabberd.yml
##
## hosts: Domains served by ejabberd.
## You can define one or several, for example:
## hosts:
##   - "example.net"
##   - "example.com"
##   - "example.org"
##
hosts:
  - "developernote.com"

...

###.   ====================
###'   ACCESS CONTROL LISTS
acl:
  ##
  ## The 'admin' ACL grants administrative privileges to XMPP accounts.
  ## You can put here as many accounts as you want.
  ##
  admin:
     user:
         - "admin": "developernote.com"
(more…)

A proper Ubuntu 18.04 installation for running Ethereum node

Create a Hyper-V machine with a disk that is large enough:

And install Ubuntu 18.04.

(more…)

Publishing QT application in Apple App Store

I succeeded with building my app for iOS and my first step in publishing the app in App Store was opening generated .xcodeproj file in XCode, but XCode froze displaying rotating progress indicator and wait cursor.

(more…)