I have been facing some issues with the compilation of the latest ‘master’ commits of the ‘desktop’ and ‘client-building’ repos (https://github.com/nextcloud/desktop + https://github.com/nextcloud/client-building). After cloning the first repo on Ubuntu 20.04 and following the instructions related to its prerequisites (https://github.com/nextcloud/desktop/wiki/System-requirements-for-compiling-the-desktop-client), I am not able to generate a build with executables to run the nextcloud client. In addition to the obligatory packages mentioned there, I had to install three extra ones, otherwise CMake errors happen when running the main CMakeLists.txt file:
RUN sudo apt install --yes qt5-default openssl libssl-dev libzip-dev qtdeclarative5-dev qtwebengine5-dev qt5keychain-dev qttools5-dev sqlite3 libsqlite3-dev libqt5svg5-dev zlib1g-dev **qtquickcontrols2-5-dev extra-cmake-modules qtbase5-private-dev**
After installing these packages, plus g++, CMake, git, and all other minor packages needed, I am able to run the main cmake build command (mentioned in repo page). If I don’t install these additional packages, I get many different qt5 related errors.
My main issue is that after generating the makefile and running it, the build process seems to generate only
nextcloudcmd.so files in the associated ‘bin’ folders, but no executables. I get no errors during these processes, so I am not sure if this is intended or not. Since the screenshot available on the repo page show a GUI, I suppose that something else should be installed there. I am also not able to run any ‘nextcloud’ related commands on the terminal, indicating that executables were not correctly generated.
I tried to circumvent these problems by following the instructions contained in the second repo, related to the windows client build steps. However, when reaching the step where the execution of
./build.bat is required, I get the same errors that I get if I do not install the extra packages mentioned earlier.
AFAIK, I should not be required to follow any steps different from the ones mentioned on the repo pages. Does anyone know what could be happening here? Is the ‘desktop’ repo not supposed to generate an executable file?
If anyone has any interest, I am using the following Dockerfile to build the ubuntu installation environment:
FROM ubuntu:latest AS nextcloud-ubuntu RUN apt update --yes && apt upgrade --yes && apt install sudo --yes && apt install locales --yes ENV DEBIAN_FRONTEND=noninteractive RUN apt install --yes tzdata keyboard-configuration RUN sudo apt install --yes cmake git g++ RUN git clone https://github.com/nextcloud/desktop.git RUN cd desktop && mkdir build && cd build # three extra modules (qtquickcontrols2-5-dev extra-cmake-modules qtbase5-private-dev) RUN sudo apt install --yes qt5-default openssl libssl-dev libzip-dev qtdeclarative5-dev qtwebengine5-dev qt5keychain-dev qttools5-dev sqlite3 libsqlite3-dev libqt5svg5-dev zlib1g-dev qtquickcontrols2-5-dev extra-cmake-modules qtbase5-private-dev RUN cmake .. -DCMAKE_INSTALL_PREFIX=~/.local/ -DCMAKE_BUILD_TYPE=Debug -DNO_SHIBBOLETH=1 RUN sudo make install