Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build error with the last pull from the repository on Raspberry Pi? #787

Closed
alexrojo77 opened this issue Apr 23, 2022 · 44 comments
Closed
Assignees
Labels
bug Something isn't working raspbeery wontfix This will not be worked on

Comments

@alexrojo77
Copy link

noob here so please be gentle. trying to compile the latest version of qdomyos-zwift to run on a raspberry pi 3b as a bridge for my bike. error popped up part way through then stopped on an Error 1.

here's a copy/paste of what i see in the terminal:

In file included from dirconmanager.h:14, from virtualbike.h:29, from virtualbike.cpp:1: dirconprocessor.h: In copy constructor ‘DirconProcessorCharacteristic::DirconProcessorCharacteristic(const DirconProcessorCharacteristic&)’: dirconprocessor.h:21:5: warning: base class ‘class QObject’ should be explicitly initialized in the copy constructor [-Wextra] DirconProcessorCharacteristic(const DirconProcessorCharacteristic &cp) { this->operator=(cp); } ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ virtualbike.cpp: In member function ‘void virtualbike::characteristicChanged(const QLowEnergyCharacteristic&, const QByteArray&)’: virtualbike.cpp:708:30: error: ‘const class QByteArray’ has no member named ‘compare’ !newValue.compare(QByteArray::fromHex("0112b472461cf0be92403ceacea488764a2804e2"))) { ^~~~~~~ virtualbike.cpp: In member function ‘void virtualbike::bikeProvider()’: virtualbike.cpp:968:14: warning: unused variable ‘normalizeSpeed’ [-Wunused-variable] uint16_t normalizeSpeed = (uint16_t)qRound(Bike->currentSpeed().value() * 100); ^~~~~~~~~~~~~~ make: *** [Makefile:9491: virtualbike.o] Error 1
i'm attaching a screen shot as well.

i'm trying to do this on a raspberry pi 3b rev1.2
qmake version 3.1
qt version 5.11.3

if i'm missing a detail or you want to ask a followup/question, please do. thank you.

Additional context
Add any other context about the problem here.
2022-04-23_qdomyos-zwift_error

@alexrojo77 alexrojo77 added the bug Something isn't working label Apr 23, 2022
@cagnulein
Copy link
Owner

hi @alexrojo77
the problem is about the Qt version is too old. QZ requires 5.15.2
Can you update it?

@alexrojo77
Copy link
Author

i took a quick look this morning and i saw a bunch of sites talking about compiling the binaries in order to get the latest 5.15.2 version. grr...i'll have to dig around some more and see if i can figure out how to do this. perhaps you can comment as to whether this sounds about right? thanks for your reply.

@cagnulein
Copy link
Owner

@alexrojo77 i believe raspberry pi os 64 bit (the latest one) don't require to build from source

@cagnulein
Copy link
Owner

@OswaldKolle1977 did you need to build it from source?

@OswaldKolle1977
Copy link

@cagnulein No - it worked out of the box (with one typo)

$ sudo apt update && sudo apt upgrade # this is very important on raspberry pi: you need the bluetooth firmware updated!
$ sudo sudo apt install git qt5quickcontrols2-5-dev libqt5bluetooth5 libqt5widgets5 libqt5positioning5 libqt5xml5 qtconnectivity5-dev qtpositioning5-dev libqt5charts5-dev libqt5charts5 qt5-assistant libqt5networkauth5-dev libqt5websockets5-dev
Typo: qt5quickcontrols2-5-dev << This one has to be changed to qtquickcontrols2-5-dev
$ git clone https://github.com/cagnulein/qdomyos-zwift.git
$ cd qdomyos-zwift
$ git submodule update --init src/smtpclient/
$ git submodule update --init src/qmdnsengine/
$ cd src
$ qmake
$ make -j4
$ sudo ./qdomyos-zwift

This worked with the current 32 Bit Version of Raspberry OS -- Not sure about the 64 Bit Version - my compilation there is several weeks old (but it worked, too)

@cagnulein
Copy link
Owner

thanks for the feedback @OswaldKolle1977

@alexrojo77
Copy link
Author

when i have a chance and some time i'll have to re-image my sd card to the before state and give it another try. either that or load on the latest version of raspberry pi. i'm sort of hesitant in doing the latter as i also use this as a pi hole which would probably mean having to reinstall and configure things. anyways much thanks for the comments/help.

@cagnulein
Copy link
Owner

@alexrojo77 ok let us know ;) you can just do a full apt update apt upgrade without losing anything

@alexrojo77
Copy link
Author

thanks. maybe i'll give the full apt update a try first after restoring the sd card back to the before state. this might be the easier path as i read that building the latest qt from the source will require quite a bit of time.

@stale
Copy link

stale bot commented May 12, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label May 12, 2022
@cagnulein
Copy link
Owner

@alexrojo77 any news?

@shoulih
Copy link

shoulih commented May 15, 2022

@cagnulein No - it worked out of the box (with one typo)

$ sudo apt update && sudo apt upgrade # this is very important on raspberry pi: you need the bluetooth firmware updated!
$ sudo sudo apt install git qt5quickcontrols2-5-dev libqt5bluetooth5 libqt5widgets5 libqt5positioning5 libqt5xml5 qtconnectivity5-dev qtpositioning5-dev libqt5charts5-dev libqt5charts5 qt5-assistant libqt5networkauth5-dev libqt5websockets5-dev
Typo: qt5quickcontrols2-5-dev << This one has to be changed to qtquickcontrols2-5-dev
$ git clone https://github.com/cagnulein/qdomyos-zwift.git
$ cd qdomyos-zwift
$ git submodule update --init src/smtpclient/
$ git submodule update --init src/qmdnsengine/
$ cd src
$ qmake
$ make -j4
$ sudo ./qdomyos-zwift

This worked with the current 32 Bit Version of Raspberry OS -- Not sure about the 64 Bit Version - my compilation there is several weeks old (but it worked, too)

I am able to compile the latest code on Pi3 B with 32 Bit Version of Raspberry OS, but not able to launch it from CI and got the following instead:
pi@raspberrypi: /qdomyos-zwift/src $ sudo ./qdomyos-zwift
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
OK, you are root.
pi@raspberrypi: /qdomyos-zwift/src $

Did I miss a step?

@stale stale bot removed the wontfix This will not be worked on label May 15, 2022
@cagnulein
Copy link
Owner

You need also the qml modules, do

apt install qml

Let me know

@shoulih
Copy link

shoulih commented May 15, 2022

You need also the qml modules, do

apt install qml

Let me know

did it, but the same result:

sudo apt install qml

pi@raspberrypi: /qdomyos-zwift/src $ sudo ./qdomyos-zwift
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
OK, you are root.
pi@raspberrypi: /qdomyos-zwift/src $

@cagnulein
Copy link
Owner

Nope sorry GitHub format qml in a strange way because I added the *

sudo apt install starqmlstar

Replace star with *

@shoulih
Copy link

shoulih commented May 15, 2022

image

@cagnulein
Copy link
Owner

Try
sudo apt install qml-modulesstar
Replace start with *

@shoulih
Copy link

shoulih commented May 15, 2022

still no go :-)

image

@cagnulein
Copy link
Owner

Sorry without the s, qml-modulestar

@shoulih
Copy link

shoulih commented May 15, 2022

The third time is a charm :-); up and running and really appreciated your help!

image

@cagnulein
Copy link
Owner

Great can you do a PR with the fix for the installation? Thanks

@cagnulein
Copy link
Owner

Also if you have some issues check this #769

@shoulih
Copy link

shoulih commented May 15, 2022

sure, will do.

@shoulih
Copy link

shoulih commented May 15, 2022

BTW, the newly built QZ connects my Proform CTC from off state without any issue, but when I exit QZ and restart QZ for applying some setting changes while the Proform is on, Bluetooth status remains "connecting" for some reason, which seems to prevent data from displaying on my p3:

image

@cagnulein
Copy link
Owner

it's the #769 issue
switch to the raspberry branch

@shoulih
Copy link

shoulih commented May 16, 2022

I cloned the whole repository to my pi and what is the easy way to switch to the raspberry branch?

Thanks1

@cagnulein
Copy link
Owner

git checkout raspberry

@shoulih
Copy link

shoulih commented May 17, 2022

thanks Robert, raspberry branch resolved the data missing issue when reconnecting while the bike is still on.
One minor issue: connection status UI text still is still showing "Connecting...", but actually the QZ is connected to the bike's BT already.

image

@cagnulein
Copy link
Owner

yes, thanks for the feedback:)

@shoulih
Copy link

shoulih commented May 19, 2022

I have a requirement to run QZ on Debian Buster Image on Pi3 along with Parsec, which is only compatible with Debian Buster.
On the Pi3 with Debian Buster, when run the QZ complied on Debian Bullseye I got the following error:
execution_error

When I tried to compile the raspberry branch on Pi3 with Debian Buster, I got the following error:

build_error

Just wondering if there is any workaround?

@cagnulein
Copy link
Owner

@shoulih i guess you're not using qt 5.15 isn't it?

@shoulih
Copy link

shoulih commented May 20, 2022

image

@cagnulein
Copy link
Owner

@shoulih you need qt 5.15 for qz

@shoulih
Copy link

shoulih commented May 20, 2022

@cagnulein do we know how to upgrade qt 5.11 to qt 5.15 on Debian Buster Pi3?

@cagnulein
Copy link
Owner

i guess you need to upgrade to debian 11

@shoulih
Copy link

shoulih commented May 20, 2022

unfortunately, I don't have this option as Parsec is only compatible with debian 10.

@cagnulein
Copy link
Owner

so you have to compile it from source. it will take a while

@shoulih
Copy link

shoulih commented May 20, 2022

yes, looks like that is the last option :-)

@cagnulein
Copy link
Owner

maybe you can also download the deb files from debian 11 handling all the dependencies

@cagnulein
Copy link
Owner

did you manage it @shoulih ?

@shoulih
Copy link

shoulih commented May 27, 2022

no, I didn't try that yet. But I managed to make Parsec run on debian 11 intead :-)
I was able to run both QZ and Parsec connecting to an Azure Cloud Windows VM with RGT on Pi 3 B at the same time.
However, after a while RGT started losing the Bluetooth connection to QZ. Not sure if it is related to the BT on Pi 3 B or not.

@stale
Copy link

stale bot commented Jun 11, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Jun 11, 2022
@cagnulein
Copy link
Owner

Any news @shoulih ?

@stale stale bot removed the wontfix This will not be worked on label Jun 11, 2022
@stale
Copy link

stale bot commented Jun 26, 2022

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Jun 26, 2022
@stale stale bot closed this as completed Jul 3, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working raspbeery wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

4 participants