Re: [Pharo-dev] Solaris VM ?

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
14 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Nicolas Cellier
 
Great. This shall typically be posted on vm-dev.


2014-05-29 2:52 GMT+02:00 aglynn42 <[hidden email]>:
<quote author="Andreas Wacknitz"> This pdf has a lot of info on porting linux code to solaris 11. http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCkQFjAA&url=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fserver-storage%2Fsolaris11%2Fdocumentation%2Fo12-026-linux2solaris-guide-1686620.pdf&ei=q4SGU5KHK6nD8QHX24H4Dg&usg=AFQjCNHjKsI52DYdYccKsfs1VtGsr0pxTg&sig2=J9FawEr7fd8uKiyiDZrrNQ&bvm=bv.67720277,d.b2U __________________________________________________________________ Hi Jannik, PharoVM is based on Cog. My old VM’s were traditional SqueakVM’s. I am not aware of precompiled Solaris VM’s based on Cog or PharoVM, so you have to build them by yourself. This should be possible; you only need some supporting libraries (e.g. GMP (earlier named GNUmp) and MPFR)) and probably CMake. When I did compile it for myself I used Solaris 10 (both, x86 and SPARC). Which variant do your customers have? Nowadays there are Solaris 10, Solaris 11, and a bunch of OpenSolaris derivates. There are some differences in the tool chains and libraries (versions). If you are not familiar with Solaris or UNIX you should be aware that UNIX in Squeak’s view is (most probably only) Linux. And this is problematic because you will most probably find some areas where there are differences between a „real“ UNIX (like Solaris) and Linux. Good luck, Andreas

View this message in context: Re: Solaris VM ?
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.

tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

tty
 
Hi Nicolas.

Thanks for forwarding this. I will try to revisit this when I am done with the CMake deliverables for Squeak.

tty

---- On Wed, 28 May 2014 21:59:46 -0700 Nicolas Cellier <[hidden email]> wrote ----

Great. This shall typically be posted on vm-dev.


2014-05-29 2:52 GMT+02:00 aglynn42 <[hidden email]>:
<quote author="Andreas Wacknitz"> This pdf has a lot of info on porting linux code to solaris 11. http://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCkQFjAA&url=http%3A%2F%2Fwww.oracle.com%2Ftechnetwork%2Fserver-storage%2Fsolaris11%2Fdocumentation%2Fo12-026-linux2solaris-guide-1686620.pdf&ei=q4SGU5KHK6nD8QHX24H4Dg&usg=AFQjCNHjKsI52DYdYccKsfs1VtGsr0pxTg&sig2=J9FawEr7fd8uKiyiDZrrNQ&bvm=bv.67720277,d.b2U __________________________________________________________________ Hi Jannik, PharoVM is based on Cog. My old VM’s were traditional SqueakVM’s. I am not aware of precompiled Solaris VM’s based on Cog or PharoVM, so you have to build them by yourself. This should be possible; you only need some supporting libraries (e.g. GMP (earlier named GNUmp) and MPFR)) and probably CMake. When I did compile it for myself I used Solaris 10 (both, x86 and SPARC). Which variant do your customers have? Nowadays there are Solaris 10, Solaris 11, and a bunch of OpenSolaris derivates. There are some differences in the tool chains and libraries (versions). If you are not familiar with Solaris or UNIX you should be aware that UNIX in Squeak’s view is (most probably only) Linux. And this is problematic because you will most probably find some areas where there are differences between a „real“ UNIX (like Solaris) and Linux. Good luck, Andreas

View this message in context: Re: Solaris VM ?
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Ian Piumarta
In reply to this post by Nicolas Cellier


On May 29, 2014, at 13:59 , Nicolas Cellier wrote:

> 2014-05-29 2:52 GMT+02:00 aglynn42 <[hidden email]>:
> If you are not familiar with Solaris or UNIX you should be aware that UNIX in Squeak’s view is (most probably only) Linux.

?


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz


Am 30.05.2014 um 05:11 schrieb Ian Piumarta <[hidden email]>:

>
>
> On May 29, 2014, at 13:59 , Nicolas Cellier wrote:
>
>> 2014-05-29 2:52 GMT+02:00 aglynn42 <[hidden email]>:
>> If you are not familiar with Solaris or UNIX you should be aware that UNIX in Squeak’s view is (most probably only) Linux.
>
> ?
>
>
What I meant was: The pre-configured „UNIX-"VMs for either CogVM or PharoVM are just Linux (and because Linux is just a kernel
these don’t necessarily work for all Linux distributions), not real UNICES.

To my knowledge this is also true for VMMaker (at least for the Pharo variant). There are some relicts from FreeBSD but that’s only loosely coupled
and not working without additional coding (again Pharo variant). I haven’t seen any other classes supporting Solaris or any BSD variants despite FreeBSD.
I created a Solaris specific support class (in a git clone of PharoVM) but it’s hard to make use of it without further refactoring: there is an inheritance chain of
configuration classes and no easy way to inject a new class. At least I didn’t see an easy way...

Regards,
Andreas

 
tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

tty
 
Hi Andreas.


What I meant was: The pre-configured „UNIX-"VMs for either CogVM or PharoVM are just Linux (and because Linux is just a kernel 
these don’t necessarily work for all Linux distributions), not real UNICES.

To my knowledge this is also true for VMMaker (at least for the Pharo variant). There are some relicts from FreeBSD but that’s only loosely coupled
and not working without additional coding (again Pharo variant). I haven’t seen any other classes supporting Solaris or any BSD variants despite FreeBSD.
I created a Solaris specific support class (in a git clone of PharoVM) but it’s hard to make use of it without further refactoring: there is an inheritance chain of
configuration classes and no easy way to inject a new class. At least I didn’t see an easy way...
Thanks.


I have a tri-boot system--SlackwareLinux 64, Slackware Linux 64 with 32 bit compatibility libs, and OpenIndiana (an OpenSunOS variant).

Its a chicken-egg problem where I lay the egg on Linux and see if it will hatch on OpenIndiana. I.e. I generate the CMake config on linux and run on SunOS.

I can hand-edit the SunOS config until I get it correct and then modify the CMakeVMMaker SunOSConfig to generate the correct CMake files.

Like you say, SunOS is NOT linux and it is very unfamiliar in a lot of respects.

Still, it will be cool to have it running sometime--just for the cool factor.




Cheers.

tty



Regards,
Andreas


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz
 
Hi tty,

I am waiting eagerly for your results. My PharoVM for OpenIndiana is not yet working perfectly.
I have some minor problems with sound (just the first tone and then silence) and X11 copy and paste (not working).
For me it’s also just a nice little experiment as I try to keep OpenIndiana on my Sun Ultra 24 as a Workstation OS
after Oracle more or less abandoned Solaris for Workstation use.

Regards,
Andreas

Am 30.05.2014 um 20:49 schrieb gettimothy <[hidden email]>:

Hi Andreas.


What I meant was: The pre-configured „UNIX-"VMs for either CogVM or PharoVM are just Linux (and because Linux is just a kernel 
these don’t necessarily work for all Linux distributions), not real UNICES.

To my knowledge this is also true for VMMaker (at least for the Pharo variant). There are some relicts from FreeBSD but that’s only loosely coupled
and not working without additional coding (again Pharo variant). I haven’t seen any other classes supporting Solaris or any BSD variants despite FreeBSD.
I created a Solaris specific support class (in a git clone of PharoVM) but it’s hard to make use of it without further refactoring: there is an inheritance chain of
configuration classes and no easy way to inject a new class. At least I didn’t see an easy way...
Thanks.


I have a tri-boot system--SlackwareLinux 64, Slackware Linux 64 with 32 bit compatibility libs, and OpenIndiana (an OpenSunOS variant).

Its a chicken-egg problem where I lay the egg on Linux and see if it will hatch on OpenIndiana. I.e. I generate the CMake config on linux and run on SunOS.

I can hand-edit the SunOS config until I get it correct and then modify the CMakeVMMaker SunOSConfig to generate the correct CMake files.

Like you say, SunOS is NOT linux and it is very unfamiliar in a lot of respects.

Still, it will be cool to have it running sometime--just for the cool factor.




Cheers.

tty



Regards,
Andreas



Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

timrowledge


On 30-05-2014, at 11:58 AM, Andreas Wacknitz <[hidden email]> wrote:

> Hi tty,
>
> I am waiting eagerly for your results. My PharoVM for OpenIndiana is not yet working perfectly.
> I have some minor problems with sound (just the first tone and then silence)

You may possibly suffering from a similar problem to the Pi - I was using the interrupt based ticker heartbeat and that was mangled by the badly written sound library. Changing to the thread based ticker solved that particular issue.


tim
--
tim Rowledge; [hidden email]; http://www.rowledge.org/tim
I haven't lost my mind; it's backed up on tape somewhere.


tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

tty
 
>>On 30-05-2014, at 11:58 AM, Andreas Wacknitz <[hidden email]> wrote:

>> Hi tty, 
>> I am waiting eagerly for your results. My PharoVM for OpenIndiana is not yet working perfectly. 
>> I have some minor problems with sound (just the first tone and then silence) 

>You may possibly suffering from a similar problem to the Pi - I was using the interrupt based ticker heartbeat and that was mangled by the badly written sound library. Changing to the thread based ticker solved that particular issue. 
>
>tim


And, correct me if I am wrong, doing that only requires removing the i-timer-heartbeat directive  -DITIMER_HEARTBEAT=1  from your CFLAGS string and recompiling.


cheers.

tty








Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz
In reply to this post by timrowledge

Hi Tim,

Thanks for your suggestion but I am already using the threaded heartbeat.
I will investigate further when time allows for.

Regards,
Andreas

Am 30.05.2014 um 21:27 schrieb tim Rowledge <[hidden email]>:

>
>
> On 30-05-2014, at 11:58 AM, Andreas Wacknitz <[hidden email]> wrote:
>
>> Hi tty,
>>
>> I am waiting eagerly for your results. My PharoVM for OpenIndiana is not yet working perfectly.
>> I have some minor problems with sound (just the first tone and then silence)
>
> You may possibly suffering from a similar problem to the Pi - I was using the interrupt based ticker heartbeat and that was mangled by the badly written sound library. Changing to the thread based ticker solved that particular issue.
>
>
> tim
> --
> tim Rowledge; [hidden email]; http://www.rowledge.org/tim
> I haven't lost my mind; it's backed up on tape somewhere.
>
>

Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz
In reply to this post by tty
 

Am 30.05.2014 um 21:35 schrieb gettimothy <[hidden email]>:

>>On 30-05-2014, at 11:58 AM, Andreas Wacknitz <[hidden email]> wrote:

>> Hi tty, 
>> I am waiting eagerly for your results. My PharoVM for OpenIndiana is not yet working perfectly. 
>> I have some minor problems with sound (just the first tone and then silence) 

>You may possibly suffering from a similar problem to the Pi - I was using the interrupt based ticker heartbeat and that was mangled by the badly written sound library. Changing to the thread based ticker solved that particular issue. 
>
>tim


And, correct me if I am wrong, doing that only requires removing the i-timer-heartbeat directive  -DITIMER_HEARTBEAT=1  from your CFLAGS string and recompiling.
Yes, that’s correct. And if you want to run it under Solaris 11 / OpenSolaris you will need to give the users the privilege to control the process priorities, e.g.:
usermod -K defaultpriv=basic,proc_priocntl andreas

Regards,
Andreas

tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

tty
In reply to this post by Andreas Wacknitz
 
Hi Andreas.

Could you please submit a list of what internal and external plugins you compiled the VM with?

Also, could you please send the register size of the platforms you have built on and if any 32 bit compatibility libs where needed.

thx.

tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz
 
Hi tty,

This is what the system reporter spills out:

Loaded VM Modules
-----------------
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
FT2Plugin Freetype-Plugin-IgorStasenko.64 (e)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)

VM Built-in Modules
-------------------
ADPCMCodecPlugin VMMaker-oscog-StefanMarr.313 (i)
AsynchFilePlugin VMMaker-oscog-StefanMarr.313 (i)
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BMPReadWriterPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
CroquetPlugin VMMaker-oscog-StefanMarr.313 (i)
DSAPrims VMMaker-oscog-StefanMarr.313 (i)
DropPlugin VMMaker-oscog-StefanMarr.313 (i)
FFTPlugin VMMaker-oscog-StefanMarr.313 (i)
FileCopyPlugin VMMaker-oscog-StefanMarr.313 (i)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
FloatArrayPlugin VMMaker-oscog-StefanMarr.313 (i)
FloatMathPlugin VMMaker-oscog-StefanMarr.313 (i)
IA32ABI VMMaker-oscog-StefanMarr.313 (i)
JoystickTabletPlugin VMMaker-oscog-StefanMarr.313 (i)
Klatt VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MIDIPlugin VMMaker-oscog-StefanMarr.313 (i)
Matrix2x3Plugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
Mpeg3Plugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
SerialPlugin VMMaker-oscog-StefanMarr.313 (i)
SocketPlugin VMMaker-oscog-StefanMarr.313 (i)
SoundCodecPrims VMMaker-oscog-StefanMarr.313 (i)
SoundPlugin VMMaker-oscog-StefanMarr.313 (i)
StarSqueakPlugin VMMaker-oscog-StefanMarr.313 (i)
SurfacePlugin May  3 2014 (i)
UnixOSProcessPlugin VMConstruction-Plugins-OSProcessPlugin.oscog-EstebanLorenzano.43 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)


Remember, I built the pharo-vm as of beginning of April, not the cogvm.
I used OpenIndiana Hipster (an up-to-date rolling release of OpenIndiana, version 151a8 or 151a9 should do, too).
From that I used gcc-4.7.3. I have appended my notes that I have send to Esteban and Stephane.


I only created 32 Bit binaries; Solaris (10, 11, OpenSolaris and its derivates) has a different philosophy than Linux
when it comes to 32 versus 64 Bit: In Solaris the kernel is always 64 Bit while most of the binaries are 32 Bit (because typically
there is no need for 64 Bit binaries for ls, sh and so on). Only where needed 64 Bit binaries will be supplied.
Especially for SPARC there are good reasons for this: while x64 might have an increased speed compared to i386 because
of the increased amount of registers, this is not true for SPARC. Thus with 64 Bit you have to pay a lot (memory consumption and speed penalties)
and often will not have positive effects. BTW this is also true for the address space of virtual machines. It’s a nice idea to be able to have billions of objects
versus only some millions. But this also comes with big penalties...
 
In Solaris libraries come typically in 32 and 64 Bit (eg. there is /usr/lib and /usr/lib/amd64. Additionally there are symlinks:
/usr/lib/32 -> /usr/lib and /usr/lib/64 -> /usr/lib/amd64). The use of it is steered by compiler and linker flags.
For OpenIndiana I only used what comes with the distribution. I only had to install the „build-essential“ and SUNWaudh packages.

If you to build on Solaris 10 you will need to add a newer gcc and some support libraries like libffi, gmp and mpfr. You can find these on
OpenCSW.


Regards,
Andreas


Am 07.06.2014 um 23:38 schrieb gettimothy <[hidden email]>:

Hi Andreas.

Could you please submit a list of what internal and external plugins you compiled the VM with?

Also, could you please send the register size of the platforms you have built on and if any 32 bit compatibility libs where needed.

thx.

tty


PharoVM for Solaris.txt (2K) Download Attachment
tty
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

tty
 
Andreas.

Thank you, you have saved me a lot of time with your reply.

Much appreciated.

tty

---- On Sun, 08 Jun 2014 10:30:20 -0700 Andreas Wacknitz<[hidden email]> wrote ----

Hi tty,

This is what the system reporter spills out:

Loaded VM Modules
-----------------
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
FT2Plugin Freetype-Plugin-IgorStasenko.64 (e)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)

VM Built-in Modules
-------------------
ADPCMCodecPlugin VMMaker-oscog-StefanMarr.313 (i)
AsynchFilePlugin VMMaker-oscog-StefanMarr.313 (i)
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BMPReadWriterPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
CroquetPlugin VMMaker-oscog-StefanMarr.313 (i)
DSAPrims VMMaker-oscog-StefanMarr.313 (i)
DropPlugin VMMaker-oscog-StefanMarr.313 (i)
FFTPlugin VMMaker-oscog-StefanMarr.313 (i)
FileCopyPlugin VMMaker-oscog-StefanMarr.313 (i)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
FloatArrayPlugin VMMaker-oscog-StefanMarr.313 (i)
FloatMathPlugin VMMaker-oscog-StefanMarr.313 (i)
IA32ABI VMMaker-oscog-StefanMarr.313 (i)
JoystickTabletPlugin VMMaker-oscog-StefanMarr.313 (i)
Klatt VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MIDIPlugin VMMaker-oscog-StefanMarr.313 (i)
Matrix2x3Plugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
Mpeg3Plugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
SerialPlugin VMMaker-oscog-StefanMarr.313 (i)
SocketPlugin VMMaker-oscog-StefanMarr.313 (i)
SoundCodecPrims VMMaker-oscog-StefanMarr.313 (i)
SoundPlugin VMMaker-oscog-StefanMarr.313 (i)
StarSqueakPlugin VMMaker-oscog-StefanMarr.313 (i)
SurfacePlugin May  3 2014 (i)
UnixOSProcessPlugin VMConstruction-Plugins-OSProcessPlugin.oscog-EstebanLorenzano.43 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)


Remember, I built the pharo-vm as of beginning of April, not the cogvm.
I used OpenIndiana Hipster (an up-to-date rolling release of OpenIndiana, version 151a8 or 151a9 should do, too).
From that I used gcc-4.7.3. I have appended my notes that I have send to Esteban and Stephane.

I only created 32 Bit binaries; Solaris (10, 11, OpenSolaris and its derivates) has a different philosophy than Linux
when it comes to 32 versus 64 Bit: In Solaris the kernel is always 64 Bit while most of the binaries are 32 Bit (because typically
there is no need for 64 Bit binaries for ls, sh and so on). Only where needed 64 Bit binaries will be supplied.
Especially for SPARC there are good reasons for this: while x64 might have an increased speed compared to i386 because
of the increased amount of registers, this is not true for SPARC. Thus with 64 Bit you have to pay a lot (memory consumption and speed penalties)
and often will not have positive effects. BTW this is also true for the address space of virtual machines. It’s a nice idea to be able to have billions of objects
versus only some millions. But this also comes with big penalties...
 
In Solaris libraries come typically in 32 and 64 Bit (eg. there is /usr/lib and /usr/lib/amd64. Additionally there are symlinks:
/usr/lib/32 -> /usr/lib and /usr/lib/64 -> /usr/lib/amd64). The use of it is steered by compiler and linker flags.
For OpenIndiana I only used what comes with the distribution. I only had to install the „build-essential“ and SUNWaudh packages.

If you to build on Solaris 10 you will need to add a newer gcc and some support libraries like libffi, gmp and mpfr. You can find these on
OpenCSW.


Regards,
Andreas


Am 07.06.2014 um 23:38 schrieb gettimothy <[hidden email]>:

Hi Andreas.

Could you please submit a list of what internal and external plugins you compiled the VM with?

Also, could you please send the register size of the platforms you have built on and if any 32 bit compatibility libs where needed.

thx.

tty


Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-dev] Solaris VM ?

Andreas Wacknitz
 
You are welcome.

I hope to make use of your work :)

Regards,
Andreas

Am 08.06.2014 um 19:32 schrieb gettimothy <[hidden email]>:

Andreas.

Thank you, you have saved me a lot of time with your reply.

Much appreciated.

tty

---- On Sun, 08 Jun 2014 10:30:20 -0700 Andreas Wacknitz<[hidden email]> wrote ----

Hi tty,

This is what the system reporter spills out:

Loaded VM Modules
-----------------
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
FT2Plugin Freetype-Plugin-IgorStasenko.64 (e)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)

VM Built-in Modules
-------------------
ADPCMCodecPlugin VMMaker-oscog-StefanMarr.313 (i)
AsynchFilePlugin VMMaker-oscog-StefanMarr.313 (i)
B2DPlugin VMMaker-oscog-StefanMarr.313 (i)
BMPReadWriterPlugin VMMaker-oscog-StefanMarr.313 (i)
BitBltPlugin VMMaker-oscog-StefanMarr.313 (i)
CroquetPlugin VMMaker-oscog-StefanMarr.313 (i)
DSAPrims VMMaker-oscog-StefanMarr.313 (i)
DropPlugin VMMaker-oscog-StefanMarr.313 (i)
FFTPlugin VMMaker-oscog-StefanMarr.313 (i)
FileCopyPlugin VMMaker-oscog-StefanMarr.313 (i)
FilePlugin VMMaker-oscog-StefanMarr.313 (i)
FloatArrayPlugin VMMaker-oscog-StefanMarr.313 (i)
FloatMathPlugin VMMaker-oscog-StefanMarr.313 (i)
IA32ABI VMMaker-oscog-StefanMarr.313 (i)
JoystickTabletPlugin VMMaker-oscog-StefanMarr.313 (i)
Klatt VMMaker-oscog-StefanMarr.313 (i)
LargeIntegers v1.5 VMMaker-oscog-StefanMarr.313 (i)
LocalePlugin VMMaker-oscog-StefanMarr.313 (i)
MIDIPlugin VMMaker-oscog-StefanMarr.313 (i)
Matrix2x3Plugin VMMaker-oscog-StefanMarr.313 (i)
MiscPrimitivePlugin VMMaker-oscog-StefanMarr.313 (i)
Mpeg3Plugin VMMaker-oscog-StefanMarr.313 (i)
NativeBoostPlugin NativeBoost-CogPlugin-GuillermoPolito.19 (i)
SecurityPlugin VMMaker-oscog-StefanMarr.313 (i)
SerialPlugin VMMaker-oscog-StefanMarr.313 (i)
SocketPlugin VMMaker-oscog-StefanMarr.313 (i)
SoundCodecPrims VMMaker-oscog-StefanMarr.313 (i)
SoundPlugin VMMaker-oscog-StefanMarr.313 (i)
StarSqueakPlugin VMMaker-oscog-StefanMarr.313 (i)
SurfacePlugin May  3 2014 (i)
UnixOSProcessPlugin VMConstruction-Plugins-OSProcessPlugin.oscog-EstebanLorenzano.43 (i)
ZipPlugin VMMaker-oscog-StefanMarr.313 (i)


Remember, I built the pharo-vm as of beginning of April, not the cogvm.
I used OpenIndiana Hipster (an up-to-date rolling release of OpenIndiana, version 151a8 or 151a9 should do, too).
From that I used gcc-4.7.3. I have appended my notes that I have send to Esteban and Stephane.

I only created 32 Bit binaries; Solaris (10, 11, OpenSolaris and its derivates) has a different philosophy than Linux
when it comes to 32 versus 64 Bit: In Solaris the kernel is always 64 Bit while most of the binaries are 32 Bit (because typically
there is no need for 64 Bit binaries for ls, sh and so on). Only where needed 64 Bit binaries will be supplied.
Especially for SPARC there are good reasons for this: while x64 might have an increased speed compared to i386 because
of the increased amount of registers, this is not true for SPARC. Thus with 64 Bit you have to pay a lot (memory consumption and speed penalties)
and often will not have positive effects. BTW this is also true for the address space of virtual machines. It’s a nice idea to be able to have billions of objects
versus only some millions. But this also comes with big penalties...
 
In Solaris libraries come typically in 32 and 64 Bit (eg. there is /usr/lib and /usr/lib/amd64. Additionally there are symlinks:
/usr/lib/32 -> /usr/lib and /usr/lib/64 -> /usr/lib/amd64). The use of it is steered by compiler and linker flags.
For OpenIndiana I only used what comes with the distribution. I only had to install the „build-essential“ and SUNWaudh packages.

If you to build on Solaris 10 you will need to add a newer gcc and some support libraries like libffi, gmp and mpfr. You can find these on
OpenCSW.


Regards,
Andreas


Am 07.06.2014 um 23:38 schrieb gettimothy <[hidden email]>:

Hi Andreas.

Could you please submit a list of what internal and external plugins you compiled the VM with?

Also, could you please send the register size of the platforms you have built on and if any 32 bit compatibility libs where needed.

thx.

tty