The latest github sources of the "opensmalltalk" vm can also be compiled on
Solaris 11.
bash-4.4$ git remote -v
origin http://github.com/OpenSmalltalk/opensmalltalk-vm (fetch)
I've made some modifications in a branch "solaris" and those modifications
although in the end not so difficult, they are less trivial than the
modification that was required to get the "classic vm" compile.
In fact the internals of the "opensmalltalk" vm seem to rely on "assembly
language", but this may also be the case with the "classic vm" (I haven't
look into it, and I'm a beginner with squeak vm).
Anyway the result of the compile for the 32-bit "squeak cog spur" vm is now:
bash-4.4$ find ./squeak.cog.spur-sunos32x86/
./squeak.cog.spur-sunos32x86/
./squeak.cog.spur-sunos32x86/bin
./squeak.cog.spur-sunos32x86/bin/squeak
./squeak.cog.spur-sunos32x86/lib
./squeak.cog.spur-sunos32x86/lib/squeak
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-display-null.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/XDisplayControlPlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/squeak
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-OSS.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UUIDPlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-pulse.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/SqueakFFIPrims.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/B3DAcceleratorPlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UnixOSProcessPlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-OSS.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/XDisplayControlPlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/ImmX11Plugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UnicodePlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/LocalePlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/Squeak3D.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UnixOSProcessPlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/FileAttributesPlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-null.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/FileAttributesPlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/ImmX11Plugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/SqueakFFIPrims.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UnicodePlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-pulse.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-display-X11.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-Sun.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-Sun.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/B3DAcceleratorPlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-sound-null.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/SqueakSSL.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/Squeak3D.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/LocalePlugin.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-display-null.so
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/UUIDPlugin.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/SqueakSSL.a
./squeak.cog.spur-sunos32x86/lib/squeak/5.0-202003240214-solaris/vm-display-X11.so
./squeak.cog.spur-sunos32x86/squeak
with those binaries I'm able to open a 5.2 or 5.3 Squeak image on Solaris.
--
Sent from: http://forum.world.st/Squeak-VM-f104410.html
I'm giving it a try to compile OpenSmalltalk with the Sun C compiler on
Solaris.
In the OpenSmalltalk sources, under platforms/unix/config/configure
in the configure script there is some code to select "maximum warnings" for
the C compiler
when configuring with the Sun C compiler that part of the configure script
does not work.
It selects "-warn all" when automatic configuration is used, but the cc
compiler later on complains because this option does not exist, it is in
fact interpreted as a way to pass '-r' and '-n' via '-wa' to the linker.
As a solution or workaround if you like, what works is : ./configure
*ac_cv_cflags_warn_all="-pedantic"*
So the following configure line works
$ ../../../platforms/unix/config/configure --without-npsqueak
--with-vmversion=5.0 --with-src=spursrc TARGET_ARCH=-m32
*ac_cv_cflags_warn_all="-pedantic"* CFLAGS=-g -O2 -DNDEBUG -DDEBUGVM=0
-DCOGMTVM=0
and the compilation starts.
--
Sent from: http://forum.world.st/Squeak-VM-f104410.html
Some type declarations were not changed from int to sqInt, so now there are some inconsistencies, which are detected when compiling the 64-bit VM with LTO enabled.
The following functions are affected:
- primInIOProcessEventsFlagAddress
- ioGatherEntropy
- GetAttributeString
- primitivePluginBrowserReady
- primitivePluginDestroyRequest
- primitivePluginRequestFileHandle
- primitivePluginRequestState
- primitivePluginRequestURL
- primitivePluginRequestURLStream
- primitivePluginPostURL
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/OpenSmalltalk/opensmalltalk-vm/issues/465
Branch: refs/heads/Cog
Home: https://github.com/OpenSmalltalk/opensmalltalk-vm
Commit: 0222b96ffc697f25aadba4fca0672ccb78a7cb94
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/0222b96ffc697f25aa…
Author: Nicolas Cellier <nicolas.cellier.aka.nice(a)gmail.com>
Date: 2020-03-26 (Thu, 26 Mar 2020)
Changed paths:
M platforms/minheadless/unix/sqUnixSpurMemory.c
M platforms/minheadless/windows/sqWin32Alloc.c
M platforms/minheadless/windows/sqWin32SpurAlloc.c
Log Message:
-----------
Fix minheadless crash at startup
The changes to `sqMakeMemoryExecutableFromToCodeToDataDelta` performed in
https://github.com/OpenSmalltalk/opensmalltalk-vm/commit/051a0fe56561b586c8…
Notably:
> Don't attempt to take the address of 0 in the DUAL_MAPPED_CODE_ZONE regime.
The minheadless being now mostly unmaintained, and having large duplication of platforms code base, it can only rot...