CerberusX for Raspberry pi

popcorn

New member
Joined
Jan 2, 2019
Messages
10
I've managed to build CerberusX for Raspberry pi 3 to target html5.

I'm trying to figure out how to build Ted and Desktop GLFW, has anyone done this before?

Any help is appreciated!
:)
 

MikeHart

Administrator
Joined
Jun 19, 2017
Messages
3,165
Wekcome! Sorry, i have no experience with that. But please keep us posted.
 

MikeHart

Administrator
Joined
Jun 19, 2017
Messages
3,165
You should not need to build GLFW as we use the source code version.
 

popcorn

New member
Joined
Jan 2, 2019
Messages
10
I was getting Qt errors while trying to build Ted, i'll provide more info after work this evening.
 

popcorn

New member
Joined
Jan 2, 2019
Messages
10
HTML5 and GLFW3 targets work well for Raspberry Pi, unfortunately no luck yet building Ted.

Error message building Ted:

Project ERROR: Unknown module(s) in QT: webenginewidgets
make: *** No targets specified and no makefile found. Stop.

I've searched many forums about this issue, alas to no avail, if anyone knows of the correct package to install
it will be a big help :)
 

Attachments

  • pi.png
    pi.png
    2.2 MB · Views: 223

dawlane

Well-known member
CX Code Contributor
Joined
Jun 21, 2017
Messages
852
Project ERROR: Unknown module(s) in QT: webenginewidgets
make: *** No targets specified and no makefile found. Stop.
You will need to build Ted against Qt 5.9.2 (should work with Qt5.6+). And I don't think that there are any ready made Qt binaries out there for the Raspberry pi. But there should be a few tutorials on how to build from source.
 

CopperCircle

New member
3rd Party Module Dev
Joined
Jun 5, 2018
Messages
5
Hi, I am interested in trying to build GLFW3 for the pi, did you build on linux or directly on the pi?
 

popcorn

New member
Joined
Jan 2, 2019
Messages
10
Built directly on a pi 3 using the latest raspbian, works very well. Followed the src/BUILDING. txt instructions. Everything built fine apart from Ted ide due to Qt i believe.

As Dawlane suggested you need to compile Qt 5.9.2 and build Ted against that version of Qt.

I managed to build Ted without issue from monkey source using the older version of Ted from BlitzResearch, but that uses an older version of Qt.

I only use CerberusX from command line at the moment.
 

MikeHart

Administrator
Joined
Jun 19, 2017
Messages
3,165
What you could do is download the 2018-08-10 release and take the ted sources from it. That uses the QT5.5.2 version to compile TED.
 

popcorn

New member
Joined
Jan 2, 2019
Messages
10
Great suggestion, I will give it ago tonight, i didn't even think of trying that lol
 

dawlane

Well-known member
CX Code Contributor
Joined
Jun 21, 2017
Messages
852
Or you can open the Qt project file ted.pro and modify the version check:
Code:
#equals(QT_MAJOR_VERSION, 5):!greaterThan(QT_MINOR_VERSION, 5){
    QT += webkit webkitwidgets
#} else {
#    QT +=  webenginewidgets
#}

I will have to have another look at the Qt project and the sources to make sure that it's backward compatible with earlier versions of Qt.

EDIT:
Replace the ted.pro file in the scr/ted directory and the build instructions in the src directory with the files from here.

If you have installed the libqt5webkit-dev files, the rebuildall.sh file should build everything without errors.
 
Last edited:

popcorn

New member
Joined
Jan 2, 2019
Messages
10
I tried the replacement ted.pro file but I am still receiving webengine errors, so I downloaded the 2018-08-10 release suggested by Mike and all works fine
on the RPi 3. I am sure it's my fault why it's not working for me, alas, such is life lol. For now I'll stick with what is working :) Mojo2 examples work too!

Thanks for everyone's help, it's greatly appreciated!
 

Attachments

  • 2019-01-05-002550_1920x1080_scrot.png
    2019-01-05-002550_1920x1080_scrot.png
    446.4 KB · Views: 212

MikeHart

Administrator
Joined
Jun 19, 2017
Messages
3,165
I tried the replacement ted.pro file but I am still receiving webengine errors, so I downloaded the 2018-08-10 release suggested by Mike and all works fine
on the RPi 3. I am sure it's my fault why it's not working for me, alas, such is life lol. For now I'll stick with what is working :) Mojo2 examples work too!

Thanks for everyone's help, it's greatly appreciated!
Awesome you got it working. Would you be so kind to write down the steps you needed to do to get cx working on the Py?
 
Last edited:

dawlane

Well-known member
CX Code Contributor
Joined
Jun 21, 2017
Messages
852
I tried the replacement ted.pro file but I am still receiving webengine errors
Took me longer to reinstall Raspbian, update and the Qt development tools than to actually fix the issue.

Raspbian stretch repositories highest version of Qt is 5.7.1, but there is no QtWebEngine package (though strangely enough there is a QtWebEngine data package). I guess they didn't include it as it's a resource hog and a pain to compile successfully. So the solution was to make changes to the ted.pro file and put additional compiler define checks where version checking is made in regards to the Qt version being greater that 5.5.

So basically the qmake ted.pro project file checks the version, if it's greater than 5.5. It then checks to see if the webengine module is installed and if it is, set the build options accordingly, else it will fall back to trying to use QtWebKit.

I've got a bit of checking to do with the sources to make sure that I haven't broken anything for the other operating systems. But in true Blue Peter style here's on I made earlier, with updated build instructions. All you have to do is install the dev tools from the repository, read a lengthy novel, go back and use the rebuildall.sh script, go back and cook a four course meal and it should be ready to use.

Edit: It will need a dedicated Raspberry Pi target to get the best out it. The performance with the standard Linux isn't the best, it's either that or I missed something.
 
Last edited:

popcorn

New member
Joined
Jan 2, 2019
Messages
10
Ah! That's fantastic! Thank you Dawlane for taking the time to get it working! You definately deserve a Blue Peter badge ;)

I tried rebuilding it, works flawlessly!

I've tried building engines such as Cafu and Irrlicht and they work pretty well too, so I have another one to add in the form of CerberusX!

I will mention for anyone searching on the forums make sure you select the opengl driver with full KMS on the RPi3, some of the examples won't work properly without it enabled.

Open Terminal window:

sudo raspi-config
7 Advanced options
A7 GL Driver
G1 GL (Full KMS) OpenGL desktop driver with full KMS
 

dawlane

Well-known member
CX Code Contributor
Joined
Jun 21, 2017
Messages
852
I will mention for anyone searching on the forums make sure you select the opengl driver with full KMS on the RPi3, some of the examples won't work properly without it enabled.
Ha that's what I was missing when testing.
 
Top Bottom