Cross compiling Unibone software on Linux

41 views
Skip to first unread message

Frits Jalvingh

unread,
Feb 25, 2025, 2:39:09 PMFeb 25
to UniBone
Before I'm re-inventing an undoubtedly squarish wheel- is there any information anywhere on setting up a cross-compilation environment with Eclipse for the Unibone software?

I now edit files on my desktop and then copy them to the Unibone to see whether they compile but that feels so 1980's..

Regards,
Frits 

Joerg Hoppe

unread,
Feb 26, 2025, 8:56:28 AMFeb 26
to UniBone

Hi Frits, hi all,

instead of documenting the painful process of setting up the cross-compilation environment again,
I just uploaded the Virtual Ubuntu machine I used for UniBone/QBone development.
It has Eclipse cross compilation and remote debugging.

If that's an approach for you, we can go into a question-answer loop and document usage instruction into a readme:


kind regards,
Joerg

Joerg Hoppe

unread,
Feb 26, 2025, 10:36:25 AMFeb 26
to Steven Hirsch, UniBone
> Hi, Joerg.
>
> It would help greatly if you could gzip the virtual disk image. That
> link is quite slow.

Uploading vmubuprog-disk1.vmdk.gz ... 22 GB-> 9GB

Joerg

>
>>
>> If that's an approach for you, we can go into a question-answer loop
>> and document usage instruction into a
>> readme:
>> http://files.retrocmp.com/qunibone-misc/qunibone-toolchain-vm/qunibone-toolchain-vm.readme
>>
>>
>>
>> kind regards,
>> Joerg
>> On Tuesday, 25 February 2025 at 20:39:09 UTC+1 j...@etc.to wrote:
>>       Before I'm re-inventing an undoubtedly squarish wheel- is there
>> any information anywhere on
>>       setting up a cross-compilation environment with Eclipse for the
>> Unibone software?
>> I now edit files on my desktop and then copy them to the Unibone to
>> see whether they compile but that
>> feels so 1980's..
>>
>> Regards,
>> Frits
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "UniBone" group.
>> To unsubscribe from this group and stop receiving emails from it,
>> send an email to
>> unibone+u...@googlegroups.com.
>> To view this discussion visit
>> https://groups.google.com/d/msgid/unibone/e766316c-e25f-4bbf-9fa5-7a3aa8c24575n%40googlegroups.com.
>>
>>
>>

Frits Jalvingh

unread,
Feb 26, 2025, 10:38:11 AMFeb 26
to UniBone
That's perfect! I might also be able to glance what needs to be done from that VM if I really feel like wanting some punishment. Thanks a lot!

Joerg Hoppe

unread,
Feb 26, 2025, 11:24:28 AMFeb 26
to uni...@googlegroups.com


Frits,

That's perfect! I might also be able to glance what needs to be done from that VM if I really feel like wanting some punishment. Thanks a lot!
First to say, the VM *does not* contain the QUniBone Sources and the Eclipse workspace.

I kept this on my physical host-PC, the VM works on a mounted Windows share or a shared VM folder ... whichever is a solution suitable for you.

My mount point for the github-QUniBone root is
/home/joerg/retrocmp/dec/QUniBone in the VM.

Also you don't have the Eclipse-project-workspace at the moment, as it is not part of the github file tree ...
Is it even good practice to see all this workspace\.metadata\.mylyn etc stuff as part of the sources?

kind regards,
Joerg

Frits Jalvingh

unread,
Feb 26, 2025, 5:01:31 PMFeb 26
to UniBone
Hi Joerg,
I could start the VM without issues, but I think a lot of config is missing with not having the configuration you have stored under ~/retrocmp. I see the eclipse.sh file trying to load several settings (~/retrocmp/blinkenbone/crosscompile.env and ~/retrocmp/dec/QUniBone/compile-x64.env). Eclipse Mars is present on the image, but without the workspace I also lack all settings required there..

In the meanwhile I also tried to do something on my local workstation, an Ubuntu 24.04 installation. I have the crosscompiler installed, following these instructions: https://github.com/robamu-org/beaglebone-crosscompiling. I needed to make some fixes to the make files: gnu make 4.x has trouble with indents, so I removed those (I noticed that your image uses Ubuntu 14.04 which uses make 3.81 which does not suffer from that horrible decision).
Next round was to install the PRU compiler from ti (https://www.ti.com/tool/download/PRU-CGT/2.3.3).
Then, after setting a whole lot of environment vars the make command continues for quite a while before dying:
.....
cc -std=c++11 -fmax-errors=3 -I/home/jal/prj/QUniBone/91_3rd_party/am335x_pru_package/include -I. -I/home/jal/prj/QUniBone/10.01_base/2_src/shared -I/home/jal/prj/QUniBone/90_common/src -I/home/jal/prj/QUniBone/10.01_base/2_src/arm -I/home/jal/prj/QUniBone/10.02_devices/2_src -I/home/jal/prj/QUniBone/10.04_device_exerciser/2_src -I/home/jal/prj/QUniBone/10.03_app_demo/4_deploy_u -I/home/jal/prj/QUniBone/10.01_base/4_deploy_u -DUNIBUS -c  -O3 -Wall -Wextra -Wshadow -DDBG -DARM -U__STRICT_ANSI__ application.cpp -o /home/jal/prj/QUniBone/10.03_app_demo/4_deploy_u/application.o
In file included from /usr/include/c++/13/cstdlib:41,
                 from /usr/include/c++/13/stdlib.h:36,
                 from application.cpp:41:
/usr/include/x86_64-linux-gnu/c++/13/bits/c++config.h:666:2: warning: #warning "__STRICT_ANSI__ seems to have been undefined; this is not supported" [-Wcpp]
  666 | #warning "__STRICT_ANSI__ seems to have been undefined; this is not supported"
      |  ^~~~~~~
In file included from /usr/include/c++/13/cstdlib:79:
/usr/include/stdlib.h:32:10: fatal error: stddef.h: No such file or directory
   32 | #include <stddef.h>
      |          ^~~~~~~~~~
compilation terminated.
make: *** [makefile_u:201: /home/jal/prj/QUniBone/10.03_app_demo/4_deploy_u/application.o] Error 1

That's enough for tonight, it's quite hard to follow all of this ;)

Frits Jalvingh

unread,
Feb 26, 2025, 5:36:23 PMFeb 26
to UniBone
Ah, and on the subject of Eclipse files to check in or not.. It has been quite a while since I worked with Eclipse. But it used to be quite good in separating things that could be version controlled and things that you should not add to vc. As far as I remember you should never add .metadata to vc, but you should add .settings and the .project / .cproject files. In our repository at that time I required that anyone checking out the code would be able to immediately open Eclipse on it and start a build, provided the prerequisite tools were installed (only Java at that time, really), because it is not fun to have 20+ developers all mess around trying to find out how to build things..

Steven Hirsch

unread,
Feb 28, 2025, 3:23:34 PMFeb 28
to Joerg Hoppe, UniBone
On Wed, 26 Feb 2025, Joerg Hoppe wrote:

> Find the VM files at http://files.retrocmp.com/qunibone-misc/qunibone-toolchain-vm/

Hi, Joerg.

It would help greatly if you could gzip the virtual disk image. That link
is quite slow.

>
> If that's an approach for you, we can go into a question-answer loop and document usage instruction into a
> readme:
> http://files.retrocmp.com/qunibone-misc/qunibone-toolchain-vm/qunibone-toolchain-vm.readme
>
>
> kind regards,
> Joerg
> On Tuesday, 25 February 2025 at 20:39:09 UTC+1 j...@etc.to wrote:
> Before I'm re-inventing an undoubtedly squarish wheel- is there any information anywhere on
> setting up a cross-compilation environment with Eclipse for the Unibone software?
> I now edit files on my desktop and then copy them to the Unibone to see whether they compile but that
> feels so 1980's..
>
> Regards,
> Frits 
>
Message has been deleted

Frits Jalvingh

unread,
Mar 1, 2025, 4:11:46 PMMar 1
to UniBone
I got cross compilation to work on my Ubuntu 24.04 machine, from the command line. I've written down the steps I took here: https://etc.to/index/pdp-1144/unibone-crosscompile.html
That is, the build works, but my Unibones are on holiday in France while I'm in the Netherlands, so I cannot test the resulting executable ;)

Still fighting, with help from Joerg, to get the VM image to work.

Reply all
Reply to author
Forward
0 new messages