Skip to content

Failure to Compile on Arch Linux #15

@georgewsinger

Description

@georgewsinger

Problem: I am running Arch Linux and cannot get motorcar to compile.

What I've attempted: I have followed the build instructions (using the build.sh) to no avail. In addition, I attempted to compile everything myself from scratch (as per the README); that didn't work either.

Error messages: I have come across the 3 following issues (which are probably all related):

  1. Using ./build.sh, I cannot get the simple-compositor to compile. Instead, I get a bunch of undefined references to qt5 objects (even though, as far as I know, I have successfully built qt5). Here is the top of the error output:

    g++  main.cpp  -std=c++11  -I../../../../src/compositor -I../../../../src/protocol -I../../../../src/device -L../../../../lib -lmotorcar-compositor  -o simple-compositor 
    ../../../../lib/libmotorcar-compositor.so: undefined reference to `QGuiApplication::primaryScreen()@Qt_5'
    ../../../../lib/libmotorcar-compositor.so: undefined reference to `QSurfaceFormat::setDepthBufferSize(int)@Qt_5'
    
  2. I can get the motorcar-demo-client to compile without error; however, when I run run-motorcar-demo-client.sh, I get the following:

    motorcar-demo-client: simple-egl.cpp:1593: int main(int, char**): Assertion `display.display' failed.
    ./run-motorcar-demo-client.sh: line 1: 15560 Aborted                 (core dumped) /home/user/motorcar/src/examples/clients/simple-egl/motorcar-demo-client
    
  3. Finally, when I attempt to compile motorcar from scratch, I think that qtwayland is failing to install. In particular, during the build steps outlined in the README, the qtwayland directory seems to be empty! See below for what I mean (these instructions are copied from the motorcar README):

    $ git clone git://code.qt.io/qt/qt5.git qt5
    $ cd qt5
    $ git checkout 5.5
    $ ./init-repository --no-webkit  --module-subset=qtbase,qtjsbackend,qtdeclarative,qtwayland
    $ cd qtbase
    $ git checkout 5.5
    $ cd ../qtwayland # here, the qtwayland directory is empty
    $ git checkout 5.5 # after running this command, the qtwayland directory remains empty
    $ cd ../
    $ ./configure -prefix /opt/qt5  -debug -confirm-license -opensource -egl -opengl -no-xcb-xlib
    $ cd qtwayland # this directory is still empty!
    $ git clean -fdx
    $ ../qtbase/bin/qmake CONFIG+=wayland-compositor # this doesn't work
    $ cd ../
    $ make
    $ make install
    

As a workaround, I tried to git clone the current qtwayland repo (from the qt website) into qt5/qtwayland and follow the instructions as above. This didn't work.

What do?

PS -- I read Forrest's masters thesis. Am looking forward to tinkering on motorcar if I can get it to build.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions