GithubHelp home page GithubHelp logo

a12e / docker-qt Goto Github PK

View Code? Open in Web Editor NEW

This project forked from rabits/dockerfiles

22.0 22.0 13.0 85 KB

Docker build images for Android and Linux Qt

Home Page: https://hub.docker.com/r/a12e/docker-qt/

License: MIT License

Dockerfile 100.00%
android builder builder-image ci ci-cd docker linux linuxdeployqt openssl qt qt5 qt6 sdl2

docker-qt's People

Contributors

a12e avatar aleixpol avatar lnjx avatar rabits avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

docker-qt's Issues

docker-qt:5.12-android_armv7 not install

Hi,
on my android real device I have allowed untrusted source, when I try install the apk: App not installed, how debug this? Where found help?
Cheers,
Here the apk generated:
dist-release-unsigned.apk.gz

Command used:
docker run -it --rm a12e/docker-qt:5.12-android_armv7 git clone --recursive https://github.com/alphaonex86/Ultracopier.git ~/src mkdir ~/build && cd ~/build qmake -r ~/src ANDROID_EXTRA_LIBS+=$ANDROID_DEV/lib/libcrypto.so ANDROID_EXTRA_LIBS+=$ANDROID_DEV/lib/libssl.so make -j5 make install INSTALL_ROOT=/home/user/build/dist/ androiddeployqt --input android-libultracopier.so-deployment-settings.json --output dist/ --android-platform 24 --deployment bundled --gradle --release

Link error with Qt 5.12 for Android x86

/opt/android-sdk/ndk-r18b/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/ld: error: cannot find -lgcc
/opt/android-sdk/ndk-r18b/toolchains/x86-4.9/prebuilt/linux-x86_64/i686-linux-android/bin/ld: error: cannot find -lgcc
main-little.o:main-little.cpp:function main: error: undefined reference to '_Unwind_Resume'
main-little.o:main-little.cpp:function connectEngine(): error: undefined reference to '_Unwind_Resume'
main-little.o:main-little.cpp:function connectInterfaceAndSync(): error: undefined reference to '_Unwind_Resume'
main-little.o:main-little.cpp:function periodicSynchronization(): error: undefined reference to '__udivdi3'
main-little.o:main-little.cpp:function _Z17qRegisterMetaTypeIN11Ultracopier8CopyModeEEiPKcPT_N9QtPrivate21MetaTypeDefinedHelperIS4_Xaasr12QMetaTypeId2IS4_EE7Definedntsr12QMetaTypeId2IS4_EE9IsBuiltInEE11DefinedTypeE: error: undefined reference to '_Unwind_Resume'
interface.o:interface.cpp:function Themes::updateTitle(): error: undefined reference to '__udivdi3'
interface.o:interface.cpp:function Themes::updateTitle(): error: undefined reference to '__udivdi3'
interface.o:interface.cpp:function Themes::updateTitle(): error: undefined reference to '__udivdi3'
interface.o:interface.cpp:function Themes::actionInProgess(Ultracopier::EngineActionInProgress const&): error: undefined reference to '__divdi3'
interface.o:interface.cpp:function Themes::actionInProgess(Ultracopier::EngineActionInProgress const&): error: undefined reference to '__divdi3'
cpp11addition.o:cpp11addition.cpp:function msFrom1970(): error: undefined reference to '__divdi3'
cpp11addition.o:cpp11addition.cpp:function sFrom1970(): error: undefined reference to '__divdi3'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
Makefile:444: recipe for target 'libultracopier.so' failed

Qt Charts is missing when building for 5.14

Hi,

It seems that qt charts lib are missing from the docker - docker-qt:5.14-gcc_64
My .pro file contain the following plugins QT += widgets charts

After the qmake I'm getting this error.
Error output: Project ERROR: Unknown module(s) in QT: charts

docker-qt:5.12-gcc_64: linuxdeployqt: fuse: device not found, try 'modprobe fuse' first

Hello! First of all thank you so much for docker images! Perfect job.

I try to build my project based on a12e/docker-qt:5.12-gcc_64 image with the following Dockerfile:

#
# base image ubuntu 16.4 LTS contains Qt 5.12 LTS, linuxdeployqt, gcc 5.4 
# user: user
#
FROM a12e/docker-qt:5.12-gcc_64

#
# install cmake 3.16.2
#
RUN wget https://github.com/Kitware/CMake/releases/download/v3.16.2/cmake-3.16.2-Linux-x86_64.sh \
    && sudo sh cmake-3.16.2-Linux-x86_64.sh --skip-license --prefix=/usr

#
# install gcc 7.1
#
RUN \
    sudo apt-get update \
    && sudo apt-get install software-properties-common -y \
    && sudo add-apt-repository ppa:jonathonf/gcc-7.1 \
    && sudo apt-get update \
    && sudo apt-get install gcc-7 g++-7 -y \
    && (sudo update-alternatives --remove-all gcc || true) \
    && sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70 --slave /usr/bin/g++ g++ /usr/bin/g++-7 \
    && gcc -v \
    && g++ -v
 
# prepare work directory

#
# copy source with the docker current user permission
#
COPY --chown=user:user src/desktop src

#
# build
#
RUN cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr src \
    && make \
    && make DESTDIR=distr install 

#
# package
#
RUN linuxdeployqt distr/usr/bin/admin -qmldir=src/admin -verbose=3

My docker version:

docker --version
Docker version 19.03.5, build 633a0ea838

When I run docker build . I get on the last step:

Step 6/6 : RUN linuxdeployqt distr/usr/bin/admin -qmldir=src/admin -verbose=3
---> Running in e2116a9c72e7
fuse: device not found, try 'modprobe fuse' first
open dir error: No such file or directory
The command '/bin/sh -c linuxdeployqt distr/usr/bin/admin -qmldir=src/admin -verbose=3' returned a non-zero code: 127

Thank you so much for any hints!

Work around the requirement of Qt account to install Qt

Unfortunately, The Qt Company unilaterally decided to prevent open-source users like us to use the installer without Qt credentials. This means that you cannot install Qt without a Qt account, and thus that we cannot build Docker images without a Qt account anymore.

I am currently thinking about a solution or workaround to this issue. Feel free to make any suggestion.

We need to fix this in order to build new Docker images, such as for Qt 5.14. (#4)

Unoptimized APK at play store

With your android exemple I'm blocked with play store at:
Unoptimized APK
Warning:

This APK results in unused code and resources being sent to users. Your app could be smaller if you used the Android App Bundle. By not optimizing your app for device configurations, your app is larger to download and install on users' devices than it needs to be. Larger apps see lower install success rates and take up storage on users' devices.

Resolution:

Use the Android App Bundle to automatically optimize for device configurations, or manage it yourself with multiple APKs.

Install libopus, libogg, libzstd

Hi,
I don't found your email to contact you directly, mine: [email protected]
I fail to compile libopus, libogg, libzstd under your container, I thinks due to my lack of knowledges.
Can you provide way to do that's?
Cheers,

Build folder is empty on 6.5 for android

Hi, I am trying to build my app with Your docker. Container is building and running fine, but when I try building for android (aab and apk) the build folder is empty and there are no files build other than CMakeCache and CMakeFiles. I am using docker 6.5 with app working on qt 6.5. Do I need to set CMakeLists.txt differently when I build on docker? Here are mine: https://github.com/percit/Training-App-Qt/blob/master/CMakeLists.txt main cmake and src cmake: https://github.com/percit/Training-App-Qt/blob/master/src/CMakeLists.txt . Thanks in advance
2024-05-26_15-49

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.