Closed modemlamer closed 2 years ago
Hi there @modemlamer
The current build steps can be found in the Wiki here : https://github.com/viktorgino/headunit-desktop/wiki/Building-Headunit-Desktop
You can get a fully working image using these steps. The steps for building qtpim are currently not there but you will be able to build it without.
Please reopen this issue if the build steps are not working.
apt-get install qt5-default qml-module-qtquick2 qtdeclarative5-dev qtmultimedia5-dev libqt5multimedia5-plugins qml-module-qtquick* qml-module-qtmultimedia qml-module-qt-labs-settings qml-module-qt-labs-folderlistmodel libqt5xmlpatterns5-dev libqt5bluetooth5 qtconnectivity5-dev qml-module-qtbluetooth libqt5charts5 qml-module-qtcharts
apt-get install build-essential protobuf-compiler libusb-1.0-0-dev libssl-dev openssl libglib2.0-dev libboost-dev libudev-dev libtag1-dev libprotobuf-dev libgstreamer1.0-dev gstreamer1.0-plugins-base-apps gstreamer1.0-plugins-bad gstreamer1.0-libav gstreamer1.0-alsa libgstreamer-plugins-base1.0-dev gstreamer1.0-pulseaudio libfaad-dev libfftw3-dev librtlsdr-dev libusb-1.0-0-dev mesa-common-dev libglu1-mesa-dev zlib1g-dev portaudio19-dev libsndfile1-dev libsamplerate0-dev ofono ofono-dev ofono-phonesim pulseaudio bluez bluez-obexd pulseaudio-module-bluetooth qtconnectivity5-dev qml-module-qtbluetooth libkf5bluezqt-dev qml-module-org-kde-bluezqt qtbase5-private-dev libcanberra-dev libgconf2-dev libpulse-dev libmp3lame-dev libsoapysdr-dev libmpg123-dev
protoc --proto_path=modules/android-auto/headunit/hu/ --cpp_out=modules/android-auto/h
This step isn't working because there isnt any code on your harddisk without git clone --your url here--
so i did that
git clone https://github.com/viktorgino/headunit-desktop.git
but
ls headunit-desktop/modules/android-auto/headunit/
this folder is empty so i did
git clone --recursive --depth 1 https://github.com/viktorgino/headunit-desktop.git && cd headunit-desktop
wich i found here:
than
protoc
is OK and i finally can build that with this compilererror
/usr/include/x86_64-linux-gnu/qt5/QtCharts/chartsnamespace.h:36:1: error: ‘QtCharts’ is not a namespace-name QT_CHARTS_USE_NAMESPACE ^ /usr/include/x86_64-linux-gnu/qt5/QtCharts/chartsnamespace.h:36:1: error: expected namespace-name before ‘;’ token QT_CHARTS_USE_NAMESPACE ^ In file included from ../../../modules/welle-io/welleio.h:11:0, from ../../../modules/welle-io/welleio.cpp:1: ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:61:45: error: ‘QAbstractSeries’ has not been declared Q_INVOKABLE void registerSpectrumSeries(QAbstractSeries series); ^
~~~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:63:51: error: ‘QAbstractSeries’ has not been declared Q_INVOKABLE void registerImpulseResonseSeries(QAbstractSeries series); ^~~~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:65:47: error: ‘QAbstractSeries’ has not been declared Q_INVOKABLE void registerNullSymbolSeries(QAbstractSeries series); ^~~~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:67:50: error: ‘QAbstractSeries’ has not been declared Q_INVOKABLE void registerConstellationSeries(QAbstractSeries series); ^~~~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:95:5: error: ‘QXYSeries’ does not name a type QXYSeries spectrumSeries; ^~~~~ g++ -c -pipe -O2 -std=gnu++11 -Wall -W -D_REENTRANT -fPIC -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG -DQT_PLUGIN -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I../../../modules/usbconnectionlistener -I. -I../../../includes -isystem /usr/include/libusb-1.0 -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtQuick -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtQml -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I. -isystem /usr/include/libdrm -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o moc_usbconnectionlistener.o moc_usbconnectionlistener.cpp ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:98:5: error: ‘QXYSeries’ does not name a type QXYSeries impulseResponseSeries; ^~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:101:5: error: ‘QXYSeries’ does not name a type QXYSeries nullSymbolSeries; ^~~~~ ../../../modules/welle-io/welle.io/src/welle-gui/gui_helper.h:104:5: error: ‘QXYSeries’ does not name a type QXYSeries constellationSeries; ^~~~~ In file included from ../../../modules/welle-io/welleio.h:13:0, from ../../../modules/welle-io/welleio.cpp:1: ../../../modules/welle-io/welle.io/src/welle-gui/waterfallitem.h:40:5: error: ‘QLineSeries’ does not name a type; did you mean ‘QLineEdit’? QLineSeries dataSeries; ^~~QLineEdit ../../../modules/welle-io/welle.io/src/welle-gui/waterfallitem.h:51:5: error: ‘QLineSeries’ does not name a type; did you mean ‘QLineEdit’? QLineSeries* getDataSeries(); ^~~QLineEdit
and now I'm stuck the resulting binary does not run
./headunit-app QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root' Failed to create qtquick2videosink. Make sure it is installed correctly
(headunit-app:706): GLib-GObject-CRITICAL **: 18:09:42.719: g_object_set: assertion 'G_IS_OBJECT (object)' failed
(headunit-app:706): GLib-GObject-CRITICAL **: 18:09:42.719: g_object_set: assertion 'G_IS_OBJECT (object)' failed
(headunit-app:706): GLib-GObject-CRITICAL **: 18:09:42.719: g_object_set: assertion 'G_IS_OBJECT (object)' failed
(headunit-app:706): GStreamer-CRITICAL **: 18:09:42.719: gst_bin_add: assertion 'GST_IS_ELEMENT (element)' failed
(headunit-app:706): GStreamer-CRITICAL **: 18:09:42.719: gst_element_link_pads_full: assertion 'GST_IS_ELEMENT (dest)' failed Starting headunit E: ../../../modules/android-auto/headunit/hu/hu_aap.cpp:83: ihu_tra_start : Unknown transport type Stopping headunit Plugin Manager: Plugin loaded : "libandroid-auto-plugin.so" Plugin Manager: Plugin loaded : "libmedia-player-plugin.so" Settings Loader: "" : Error loading settings JSON, root type should be of "items" type Plugin Manager: Plugin loaded : "libodb-car-plugin.so" Plugin Manager: Plugin loaded : "libphone-bluetooth-plugin.so" Plugin Manager: Plugin loaded : "libusbconnectionlistener-plugin.so" Plugin Manager: Plugin loaded : "libvolume-control-plugin.so" Settings Loader: "" : Error loading settings JSON, root type should be of "items" type Loading qml plugin: "libvolume-control-qml.so" Module 'org.viktorgino.headunit.volume' does not contain a module identifier directive - it cannot be protected from external registrations. Theme Manager: Error loading plugin : "themes/default-theme/libdefault-theme.so" "Die dynamische Bibliothek konnte nicht gefunden werden." telephony: [BluezQt] bluez manager started telephony: [BluezQt] Agent registered telephony: [BluezQt] Agent set as default telephony: [BluezQt] obex service started telephony: [BluezQt] obex manager started
One week is gone since your last email. I still can't find any clue through this.
i still need some help over here wink u told me uploading a new image, but i cant find one..
@modemlamer I was stuck yesterday on the exact position you originally reported.
I'll try your edits, but out of curiousity did you go to the other sections to build those libraries then come back and make the headunit-desktop?
That is how I was doing it since the note when installing the libraries mentioned doing so.
Hi @modemlamer and @robert5974 sorry for the delay again, been busy with some other projects. Last month I sorted out packaging for HUD, which was the milestone before publishing a new image. I will need to push new packages to the apt repository before I can upload the image, but it's coming. This will make updating to new versions a lot easier. Once the image is online I'll setup automated building of the apt packages, so updates to this repo will be immediately available. Sorry again for taking so long, but I have to work on other stuff too.
@viktorgino thank you!
@viktorgino any updates here?
plaese, update build https://github.com/viktorgino/headunit-desktop/wiki/Building-Headunit-Desktop
there is no headunit/hu/ and so on.
protoc --proto_path=headunit/hu/ --cpp_out=headunit/hu/generated.x64/ headunit/hu/hu.proto
@viktorgino the build instruction are not working...
protoc --proto_path=headunit/hu/ --cpp_out=headunit/hu/generated.x64/ headunit/hu/hu.proto headunit/hu/: warning: directory does not exist. headunit/hu/hu.proto: No such file or directory
maybe you can provide a Docker container with all dependencies so that everyone can build it ?
is there any working build guide/script out there today??
i tried many ways nothing ended with a running binary than i mixed them fixing here an there compiler errors but nothing worked really
i need some help
the only thing which is working is the complete but outdated image from the website
but the image from 2018-08 is more a showreel than a full working system
greetings from germany