• Dear Cerberus X User!

    As we prepare to transition the forum ownership from Mike to Phil (TripleHead GmbH), we need your explicit consent to transfer your user data in accordance with our amended Terms and Rules in order to be compliant with data protection laws.

    Important: If you accept the amended Terms and Rules, you agree to the transfer of your user data to the future forum owner!

    Please read the new Terms and Rules below, check the box to agree, and click "Accept" to continue enjoying your Cerberus X Forum experience. The deadline for consent is April 5, 2024.

    Do not accept the amended Terms and Rules if you do not wish your personal data to be transferred to the future forum owner!

    Accepting ensures:

    - Continued access to your account with a short break for the actual transfer.

    - Retention of your data under the same terms.

    Without consent:

    - You don't have further access to your forum user account.

    - Your account and personal data will be deleted after April 5, 2024.

    - Public posts remain, but usernames indicating real identity will be anonymized. If you disagree with a fictitious name you have the option to contact us so we can find a name that is acceptable to you.

    We hope to keep you in our community and see you on the forum soon!

    All the best

    Your Cerberus X Team

Cerberus V2020-05-01 Debug works, Release not works.

zuibaf

Member
Joined
Sep 29, 2017
Messages
61
After that, I downloaded this updated transcc, I'm having another problem, the code for the Desktop target, it only works in Debug mode, in Release mode, an error occurs.

I did test the examples "Clock" and others, it is error is: Memory access violation.

"/home/zuibaf/Apps/Cerberus/bin/transcc_linux" -target=Desktop_Game -config=Release -run "/home/zuibaf/Apps/Cerberus/examples/mojo/difference/champagne/champagne.cxs" TRANS cerberus compiler V2020-05-01 Parsing... Semanting... Translating... Building... g++ -O3 -DNDEBUG -Wno-int-to-pointer-cast -Wno-free-nonheap-object -Wno-unused-result -I../glfw3/include -I../openal/include -I../stb -I../tinyfiledialogs -I../glfw3/deps -I../glfw3/deps/vulkan -D_GLFW_HAS_GLXGETPROCADDRESS -pthread -c -o build/Release/main.o ../main.cpp g++ -s -no-pie -o Release/CerberusGame build/Release/context.o build/Release/init.o build/Release/input.o build/Release/monitor.o build/Release/window.o build/Release/glx_context.o build/Release/x11_init.o build/Release/x11_monitor.o build/Release/x11_window.o build/Release/posix_time.o build/Release/posix_thread.o build/Release/linux_joystick.o build/Release/vulkan.o build/Release/egl_context.o build/Release/osmesa_context.o build/Release/xkb_unicode.o build/Release/stb_vorbis.o build/Release/stb_image.o build/Release/tinyfiledialogs.o build/Release/main.o -lGL -lX11 -lXxf86vm -lXi -lXrandr -lXinerama -lXcursor -lopenal -lpthread -ldl Cerberus Runtime Error : Memory access violation (null) STOPPED
 
Without knowing the Linux distribution, there's not much to go on apart from the fact that I builds and fails to run. I take it that you have done a clean install, removed old build file etc?

Edit: If you are having trouble, use this build.
 
Last edited:
Good afternoon!! I download this build and I did the tests but this error persist.
This error persist on target Desktop, mode Release.
On the menu, the template mojo1 and mojo2, I did the tests on mode Release persists the error.
But, in the template cpptool, target Desktop, on mode Release, this error not ocurred.
 
I do not get any errors and without knowing what distribution and version, or the version of the compiler you are using, then there is nothing that can be done.
 
Last edited:
Sorry, I forgot to report this:
Linux Fedora 30, 5.3.7-200.fc30.x86_64
Cerberus V2020-05-01
Trans V202005-01
QT V15.13.0
 
I cannot recreate this issue with Fedora 32. Other distributions other than Ubuntu/Linux Mint are not officially supported.
Make sure that you have these development packages installed.
sudo dnf install gcc-c++ mesa-libGLU-devel libXi-devel libXcursor-devel libXrandr-devel libXinerama-devel openal-soft-devel libXxf86vm-devel

NOTE: The IDE (also known as Ted) will not build correctly with any version of Qt greater than Qt 5.9.9.
You have to download the Qt on-line installer and select the correct version.
 
Last edited:
Ide works correctly in this version 5.13.0. I'll even test and download version 5.12.0 to see if this is it, but I don't think so, otherwise the ide wouldn't work.
I will also return to the previous transcc version, to see the problem is currently related to transcc, when compiling for Release mode.
Because, in the previous version, I always compiled for Debug, I don't remember if I had compiled for Release, if really, there was a problem.
 
I was still doing some tests, still in version qt 15.3.0, here, compiling and trying to execute, and one of these attempts, the executable worked correctly in Release mode. And then I compiled it again, and it didn't work. This is very strange.
I suspected now, of another detail, it may be the space on the disk, my hd is partitioned and the partition "/" has 500 MB of space remaining, the other partition /home/ has 11.2 GB. I will delete some files here and report if this has anything to do with it. I don't know if this really has to do with the problem, so I'm going to do this procedure and see what happens.
 
I don't think that's the problem, but I'll delete some files and see if it really is the problem.
Note: I am saying partition, because when I installed linux, I created separate partitions for some directories, for "/", "/ home /" and even "/ tmp".
At this time, the status of each directory is:
"/" => 389 MB available.
"/home/" => 11GB available.
"/tmp/" => 9.8GB available.
I'm going to delete some unnecessary files from "/" and see what happens, although I don't think this is it, but it's worth a try.
 
Or you have a failing hard drive or memory issue.
 
I have the same Error using Linux Manjaro KDE (latest release). I have to admit, that I am new to linux so no fancy fixing approaches were tried...

On Linux Mint on the same PC everything runs fine even in release mode.

Where can I start looking for the needed packages or other possible fixes?
 
Where can I start looking for the needed packages or other possible fixes?
Use the ldd tool on a working Ceberus X compiled application to get information on the libraries that it links to.
It will tell you if anything is missing. If I remember Manjro is a derivative of Arch Linux, so the package manager pacman will install both the runtimes and the development files.

Edit: Make sure that you have removed all old build files, unless you are building from a direct clean git source tree.
 
Last edited:
Just to get it right: I am executing a compiled cerberus game (release mode) from mint (working app) on my manjaro system to inspect it with ldd?
 
I use ldd on file "CerberusGame" in the folder "Release", results:
Release]$ ldd CerberusGame linux-vdso.so.1 (0x00007ffcccb08000) libGL.so.1 => /lib64/libGL.so.1 (0x00007f90264ce000) libX11.so.6 => /lib64/libX11.so.6 (0x00007f9026389000) libXxf86vm.so.1 => /lib64/libXxf86vm.so.1 (0x00007f9026382000) libXi.so.6 => /lib64/libXi.so.6 (0x00007f9026370000) libXrandr.so.2 => /lib64/libXrandr.so.2 (0x00007f9026363000) libXinerama.so.1 => /lib64/libXinerama.so.1 (0x00007f902635e000) libXcursor.so.1 => /lib64/libXcursor.so.1 (0x00007f902634f000) libopenal.so.1 => /lib64/libopenal.so.1 (0x00007f902626b000) libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f902624a000) libdl.so.2 => /lib64/libdl.so.2 (0x00007f9026244000) libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007f902604b000) libm.so.6 => /lib64/libm.so.6 (0x00007f9025f05000) libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f9025ee9000) libc.so.6 => /lib64/libc.so.6 (0x00007f9025d23000) libGLX.so.0 => /lib64/libGLX.so.0 (0x00007f9025cef000) libXext.so.6 => /lib64/libXext.so.6 (0x00007f9025cda000) libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x00007f9025c1d000) libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f9025bf2000) libXrender.so.1 => /lib64/libXrender.so.1 (0x00007f9025be3000) libXfixes.so.3 => /lib64/libXfixes.so.3 (0x00007f9025bda000) librt.so.1 => /lib64/librt.so.1 (0x00007f9025bd0000) /lib64/ld-linux-x86-64.so.2 (0x00007f90265a5000) libXau.so.6 => /lib64/libXau.so.6 (0x00007f9025bca000)
 
Just to get it right: I am executing a compiled cerberus game (release mode) from mint (working app) on my manjaro system to inspect it with idd?
Yes.
 
I get the following with the working Mint game and the not working Manjaro game:
Code:
ReleaseMint]$ ldd CerberusGame <------------------------------ This is the working app compiled on Mint. (Runs also fine on Manjaro!)
        linux-vdso.so.1 (0x00007fffaa68b000)
        libGL.so.1 => /usr/lib/libGL.so.1 (0x00007f57ae8f7000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00007f57ae7b7000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00007f57ae7aa000)
        libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00007f57ae7a5000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00007f57ae799000)
        libopenal.so.1 => /usr/lib/libopenal.so.1 (0x00007f57ae657000)
        libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007f57ae633000)
        libdl.so.2 => /usr/lib/libdl.so.2 (0x00007f57ae62e000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007f57ae445000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007f57ae2ff000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007f57ae2e5000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007f57ae11f000)
        libGLdispatch.so.0 => /usr/lib/libGLdispatch.so.0 (0x00007f57ae066000)
        libGLX.so.0 => /usr/lib/libGLX.so.0 (0x00007f57ae033000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007f57ae009000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00007f57adff4000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007f57adfe7000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007f57adfde000)
        /lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007f57ae9b8000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x00007f57adfd7000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007f57adfcf000)

ReleaseManjaro]$ ldd CerberusGame  <------------------------------ This is the crashing app compiled on Manjaro.
        linux-vdso.so.1 (0x00007ffcfc396000)
        libGL.so.1 => /usr/lib/libGL.so.1 (0x00007feda8d82000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00007feda8c42000)
        libXxf86vm.so.1 => /usr/lib/libXxf86vm.so.1 (0x00007feda8c3b000)
        libXi.so.6 => /usr/lib/libXi.so.6 (0x00007feda8c28000)
        libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0x00007feda8c1b000)
        libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0x00007feda8c16000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00007feda8c08000)
        libopenal.so.1 => /usr/lib/libopenal.so.1 (0x00007feda8ac6000)
        libpthread.so.0 => /usr/lib/libpthread.so.0 (0x00007feda8aa4000)
        libdl.so.2 => /usr/lib/libdl.so.2 (0x00007feda8a9f000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007feda88b6000)
        libm.so.6 => /usr/lib/libm.so.6 (0x00007feda8770000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007feda8754000)
        libc.so.6 => /usr/lib/libc.so.6 (0x00007feda858e000)
        libGLdispatch.so.0 => /usr/lib/libGLdispatch.so.0 (0x00007feda84d7000)
        libGLX.so.0 => /usr/lib/libGLX.so.0 (0x00007feda84a4000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007feda847a000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00007feda8465000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007feda8456000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007feda844d000)
        /lib64/ld-linux-x86-64.so.2 => /usr/lib64/ld-linux-x86-64.so.2 (0x00007feda8e43000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x00007feda8448000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007feda8440000)
 
Last edited:
On "config release" or on "config debug", this code below NOT OCURRED the error:
Code:
Strict

Function Main:Int()

    Return 0

End

But, the code below, it is ocurred on "config release":

Code:
Strict

Import mojo

Function Main:Int()

    Print "Testing..."
    
    Local objFb := New fb

    Return 0
    
End

Class fb Extends App
    
    Method OnCreate:Int()
        SetUpdateRate 60
        Return 0
    End
    
    Method OnUpdate:Int()       
        Return 0
    End
    
    Method OnRender:Int()
        Cls 255, 255, 255
        DrawText "Testing...", DeviceWidth() / 2, DeviceHeight() / 2
        Return 0
    End
    
End

The Print "testing ..." line is displayed in the output, however, when trying to instantiate New fb the error occurs.
 
@Phil7 Linux Mint: 32 bits or 64 bits?
Linux Manjaro: 32 bits or 64 bits?
Linux Mint: Kde, Cinnamon, Gnome, or Mate???

Here, the interface is Cinnamon, but I have the option to choose Gnome, Mate or Kde, I will test on the other graphical interfaces.
 
It is all 64 bit Linux I think. Any quick hints how to look it up? Edit: Mint is 64 bit for sure
On Mint I have the cinnamon version, but I also tried xfce.
 
Back
Top Bottom