For reasons, I tried compiling a Ubuntu cog/spur/x64 vm yesterday. It hasn't been very successful thus far.
First problem was that it simply wouldn't compile *anything* according to the config log. The system has the usual gcc stuff, so I was a bit surprised. It appeared to want 'clang' which I've never needed to take note of before; so I installed it - what could go wrong, eh? Is this an expected thing? Is it just another infuriating bit of Ubuntuism?
After that it did a build but we seem to be suffering two somewhat familiar problems;
- our old friend
"/usr/include/glib-2.0/glib/gtypes.h:32:10: fatal error: 'glibconfig.h' file not found"
appeared and again it is the architecture specific path in platforms/unix/plugins/UnicodePlugin/acinclude.m4 not being there. I have now tried manually adding the extra include path "/usr/lib/x86_64-linux-gnu/glib2.0/include" to the acinclude.m4 and even the Makefile.inc and it *still* doesn't appear in the cmdline used to make the plugin test - so no plugin is made. I'd swear that was enough when building it for AARM64 a few months ago? Damned autoconf...
- the rtprio stuff, yet again. One can add the squeak.conf file do the reboot and ... no change. If I actually run the vm with sudo there are no complaints but that isn't really very practical. Annoyingly this seems to be sometihng that is not 'reliable' - a colleague with the same version of Ubuntu installed simply changed the permissions to 755 (which I've tried too) and it was fine.
Re: Building Ubuntu x64 vm; did I drop a clang-er?
> On 2021-04-02, at 12:15 AM, [hidden email] <[hidden email]> wrote:
> The message that the OpenSmalltalk VM emits when it cannot pthread_setsched(),
> has multiple solutions depending on the setup.
That's what I was afraid of; yet more complication in making a system decently portable.
> According to https://packages.ubuntu.com/groovy/util-linux > the package util-linux for ubuntu has a command /usr/bin/prlimit
> A method which you could try:
> prlimit --rtprio=99 --pid=<pid of shell in which you will run squeak>
OK, so my Ubuntu does have that command installed, so a good start, thanks.
I have no idea how one might find that pid and use it within any of the shell scripts etc we have. Fire up the Bash Signal! (Obviously this is the unix equivalent of the Windows(™) Bat Signal, which gets Batman to help with your .bat files)