Ahmad138 / SatRot

A modular Satellite/Celestrial body rotator and tracker to communicate with satellites or simply increasing the efficiency of solar panels
MIT License
7 stars 3 forks source link

Depencies for raspberry buster missing #71

Closed pedda4711 closed 4 years ago

pedda4711 commented 4 years ago

Is it possible to install it on raspberry buster?

greetings, Peter

Ahmad138 commented 4 years ago

Hi Peter, The main GUI was tested and developed on Ubuntu bionic and the second app (RotatorDriver-GUI) on raspberry pi os. But you can try it out and let me know if you run into any problems

pedda4711 commented 4 years ago

Ok. I will do it. Did you think about to port it to preempt_rt?

Ahmad138 commented 4 years ago

No actually, the project is not yet complete as it was halted due to covid-19. It will be fun to do though

pedda4711 commented 4 years ago

SatRot-Gui: I've installed apt-get install libqt5webkit5-dev but cd GUI-Main/ && ( test -e Makefile || /usr/lib/qt5/bin/qmake -o Makefile /usr/src/SatRot/Software/SatRot-GUI/GUI-Main/GUI-Main.pro ) && make -f Makefile Project ERROR: Unknown module(s) in QT: webenginewidgets

I stop here to build it in raspbian and i'll will check it out on Fedora 31

Ahmad138 commented 4 years ago

yes, you need to install webenginewidgets on your distro and configure it well. For some reason, qt5 has discontinued webenginewidgets and you need to install it separately.

pedda4711 commented 4 years ago

RotorDriver-Gui on Raspi: stepperdriver.cpp:(.text+0x224): undefined reference to wiringPiSetup' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.cpp:(.text+0x230): undefined reference topinMode' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.cpp:(.text+0x23c): undefined reference to pinMode' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.cpp:(.text+0x248): undefined reference topinMode' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.cpp:(.text+0x254): undefined reference to pinMode' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.cpp:(.text+0x260): undefined reference topinMode' /usr/bin/arm-linux-gnueabihf-ld: stepperdriver.o:stepperdriver.cpp:(.text+0x26c): more undefined references to pinMode' follow /usr/bin/arm-linux-gnueabihf-ld: blink.o: in functionblink::blink()': blink.cpp:(.text+0x8): undefined reference to wiringPiSetup' /usr/bin/arm-linux-gnueabihf-ld: blink.cpp:(.text+0x14): undefined reference topinMode' /usr/bin/arm-linux-gnueabihf-ld: blink.o: in function blink::ledOn()': blink.cpp:(.text+0x28): undefined reference todigitalWrite' /usr/bin/arm-linux-gnueabihf-ld: blink.o: in function blink::ledOff()': blink.cpp:(.text+0x34): undefined reference todigitalWrite' collect2: error: ld returned 1 exit status

Ahmad138 commented 4 years ago

RotorDriver-Gui should be compiled on raspberry pi only and should have the wiringpi installed on it

pedda4711 commented 4 years ago

wiringpi is installed ... version 2.50

sorry, german language root@raspberrypi:/home/pi# apt-get install wiringpi Paketlisten werden gelesen... Fertig Abhängigkeitsbaum wird aufgebaut. Statusinformationen werden eingelesen.... Fertig wiringpi ist schon die neueste Version (2.50).

pedda4711 commented 4 years ago

also on my Fedora 31 webenginewidgets is impossible tomorrow i'll install ubuntu bionic as virtualhost

Ahmad138 commented 4 years ago

alright, let me know when you have tried it. good luck

pedda4711 commented 4 years ago

Tx. Webenginewidgetes now possible on F31 after "dnf install qt5-qtweb* -y " But now I have a new problem with cpp:

/usr/lib64/qt5/bin/moc -DQT_DEPRECATED_WARNINGS -DQT_NO_DEBUG -DQT_WEBENGINEWIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_WEBENGINECORE_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_WEBCHANNEL_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB --include /data00/pub/arduino/Satsteuerung/SatRot/Software/SatRot-GUI/build/GUI-Main/moc_predefs.h -I/usr/lib64/qt5/mkspecs/linux-g++ -I/data00/pub/arduino/Satsteuerung/SatRot/Software/SatRot-GUI/GUI-Main -I/usr/include/qt5 -I/usr/include/qt5/QtWebEngineWidgets -I/usr/include/qt5/QtPrintSupport -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtWebEngineCore -I/usr/include/qt5/QtQuick -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtWebChannel -I/usr/include/qt5/QtQml -I/usr/include/qt5/QtNetwork -I/usr/include/qt5/QtPositioning -I/usr/include/qt5/QtCore -I. -I/usr/include/c++/9 -I/usr/include/x86_64-linux-gnu/c++/9 -I/usr/include/c++/9/backward -I/usr/lib/gcc/x86_64-linux-gnu/9/include -I/usr/local/include -I/usr/lib/gcc/x86_64-linux-gnu/9/include-fixed -I/usr/include/x86_64-linux-gnu -I/usr/include ../../GUI-Main/includes/api.h -o moc_api.cpp usr/include/c++/9/bits/stl_relops.:67: Parse error at "std"

Seems to be a problem with another missing library. Now i download ubuntu bionic ;-)

pedda4711 commented 4 years ago

Now installed fresh ubuntu bionic lts 18.04, but SatRot-Gui does not compile missing library?

SatRotGui-compile-errorUbuntu.txt

Ahmad138 commented 4 years ago

Hi, from what I am seeing in your error log file, you need to make sure the compiler uses c++14 as the code was based on the c++14 version of c++

pedda4711 commented 4 years ago

no. The answer is: export QT_SELECT=opt-qt514
before qmake ..

my qmake is a link to qtchooser in ubuntu bionic 18.04 after that SatRot-Gui build :)

pedda4711 commented 4 years ago

Next Question: Where did GUI-Main get my nearly correct location (15km deviation) ? Via IP Locator? Looks like a little bit like gpredict satrot-location

pedda4711 commented 4 years ago

In documentation you wrote: after make install in SatRot-Gui change directory to GUI-Main. You can startup from there, but GUI-Main is installed in /opt/GUI-Main/bin/ Wy don't you install in /usr/local/bin/ This is a default path in almost every Linux distro, so user can start it with simply execute GUI-Main everywhere

Ahmad138 commented 4 years ago

no. The answer is: export QT_SELECT=opt-qt514 before qmake ..

my qmake is a link to qtchooser in ubuntu bionic 18.04 after that SatRot-Gui build :)

That's great then

Ahmad138 commented 4 years ago

Next Question: Where did GUI-Main get my nearly correct location (15km deviation) ? Via IP Locator? Looks like a little bit like gpredict satrot-location

Yh, it uses an ip locator at the moment but a gps implementation would be better. you can try that out and make a pull request. It will be great if others contribute to the project actually

Ahmad138 commented 4 years ago

In documentation you wrote: after make install in SatRot-Gui change directory to GUI-Main. You can startup from there, but GUI-Main is installed in /opt/GUI-Main/bin/ Wy don't you install in /usr/local/bin/ This is a default path in almost every Linux distro, so user can start it with simply execute GUI-Main everywhere

You can choose whichever location you like, but as the project is still under construction, it is preferable to avoid doing it in /usr/local/bin/

pedda4711 commented 4 years ago

Very nice project. I'm Ham radio operator :) and interested in astronomy. An i have the equipment to check out the functions. Now I'll get the raspbian part to run. Two tb6600 waiting to rumble

Ahmad138 commented 4 years ago

Very nice project. I'm Ham radio operator :) and interested in astronomy. An i have the equipment to check out the functions. Now I'll get the raspbian part to run. Two tb6600 waiting to rumble

Thank you, that's great to always meet fellow enthusiasts in astronomy. we can continue to build and develop the project.

pedda4711 commented 4 years ago

:) Build on Raspbian buster with g++-8 and qt5 (12 i think) successfully

update-alternatives --remove-all update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90

and editing the Makefile an set the correct wiringPi options in RotorDriver-GUI/RotorDriver/RotorDriver.pro:

# So wiringPi include files can be found during compile #INCLUDEPATH += /usr/local/include #INCLUDEPATH += /usr/include # To link the wiringPi library when making the executable #LIBS += -L/usr/lib -lwiringPi LIBS += -lwiringPi

now setup the electronic an i hope i can drive my monster : https://www.youtube.com/watch?v=7QvVP6yK2bk

pedda4711 commented 4 years ago

connected-rotator

Ahmad138 commented 4 years ago

:) Build on Raspbian buster with g++-8 and qt5 (12 i think) successfully

update-alternatives --remove-all update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90

and editing the Makefile an set the correct wiringPi options in RotorDriver-GUI/RotorDriver/RotorDriver.pro:

# So wiringPi include files can be found during compile #INCLUDEPATH += /usr/local/include #INCLUDEPATH += /usr/include # To link the wiringPi library when making the executable #LIBS += -L/usr/lib -lwiringPi LIBS += -lwiringPi

now setup the electronic an i hope i can drive my monster : https://www.youtube.com/watch?v=7QvVP6yK2bk

Your monster machine looks like a beast, I love it. well done!!!