[Mono-dev] Mono latest built on OpenSolaris and now moving to solaris

pablosantosluac at terra.es pablosantosluac at terra.es
Fri Dec 26 15:33:53 EST 2008


Hi Andreas,

ulimit?

Well, it basically fixed *everything*. Let me explain:

- I installed a new OpenSolaris box, gcc and everything else.
- The c code compiles perfectly but as soon as it has to run the mono 
binary... it breaks.

It *always* says it can't find the mcs that it's not a valid runtime and 
so on. (and yes, I moved the built in mcs away).

Then you run:

$ ulimit -Hs $((10*1024))

(explained at 
http://www.mail-archive.com/mono-bugs@lists.ximian.com/msg41990.html)

And mcs compiles, and all the libraries, and libgdiplus, and you get 
wonderful things like:

http://codicesoftware.blogspot.com/2008/12/plastic-on-solaris-10.html 
and http://codicesoftware.blogspot.com/2008/12/opensolaris-and-mwf.html

So, the last time I crashed against a wall trying to build mono on 
solaris... I was only one "ulimit" away from the solution :-(

Feliz navidad!

Andreas Färber escribió:
> Hi Pablo,
>
> Am 23.12.2008 um 00:11 schrieb pablosantosluac at terra.es:
>
>> Ok, the problem seems to be:
>>
>> the sem_* family methods are inside libc.so.1 on OpenSolaris and inside
>> librt.so on Solaris 10 (after nm and ldd). So I guess I'll have to build
>> again on Solaris 10... :-(
>
> In theory, if you build on Solaris 10, the binaries "should" run on 
> OpenSolaris (librt as symlink). The opposite direction is not 
> officially supported binary-wise, I believe.
>
> For the record, which problem exactly did ulimit fix for you?
>
> Feliz navidad,
>
> Andreas
>
>> pablosantosluac at terra.es escribió:
>>> Hi there,
>>>
>>> I (finally! :-P) was able to build mono on Solaris... Ok, in 
>>> OpenSolaris.
>>>
>>> The "trick" was to set ulimit with:
>>>
>>> ulimit -Hs $((10*1024))
>>>
>>> It allowed me to compile a release from SVN!
>>>
>>> Now I'm trying something different: I'd like to run on Solaris 10 too.
>>>
>>> I moved the binaries but "obviously" it didn't work so I ran ldd -r to
>>> identify the missing symbols:
>>>
>>> bash-3.00$ ldd -r monobin/bin/mono
>>>         libdl.so.1 =>    /usr/lib/libdl.so.1
>>>         libgthread-2.0.so.0 =>   /usr/lib/libgthread-2.0.so.0
>>>         libthread.so.1 =>        /usr/lib/libthread.so.1
>>>         libglib-2.0.so.0 =>      /usr/lib/libglib-2.0.so.0
>>>         libsocket.so.1 =>        /usr/lib/libsocket.so.1
>>>         libnsl.so.1 =>   /usr/lib/libnsl.so.1
>>>         libxnet.so.1 =>  /usr/lib/libxnet.so.1
>>>         libpthread.so.1 =>       /usr/lib/libpthread.so.1
>>>         libm.so.2 =>     /usr/lib/libm.so.2
>>>         libc.so.1 =>     /usr/lib/libc.so.1
>>>         libmp.so.2 =>    /usr/lib/libmp.so.2
>>>         libmd.so.1 =>    /usr/lib/libmd.so.1
>>>         libscf.so.1 =>   /usr/lib/libscf.so.1
>>>         libdoor.so.1 =>  /usr/lib/libdoor.so.1
>>>         libuutil.so.1 =>         /usr/lib/libuutil.so.1
>>>         libgen.so.1 =>   /usr/lib/libgen.so.1
>>>         symbol not found: g_assertion_message_expr
>>> (monobin/bin/mono)
>>>         symbol not found: g_assertion_message           
>>> (monobin/bin/mono)
>>>         symbol not found: backtrace             (monobin/bin/mono)
>>>         symbol not found: backtrace_symbols             
>>> (monobin/bin/mono)
>>>         symbol not found: g_return_if_fail_warning
>>> (monobin/bin/mono)
>>>         symbol not found: sched_yield           (monobin/bin/mono)
>>>         symbol not found: nanosleep             (monobin/bin/mono)
>>>         symbol not found: posix_fadvise64               
>>> (monobin/bin/mono)
>>>         symbol not found: sem_init              (monobin/bin/mono)
>>>         symbol not found: sem_post              (monobin/bin/mono)
>>>         symbol not found: sem_destroy           (monobin/bin/mono)
>>>         symbol not found: sem_wait              (monobin/bin/mono)
>>>         symbol not found: shm_open              (monobin/bin/mono)
>>>         symbol not found: shm_unlink            (monobin/bin/mono)
>>>         symbol not found: clock_gettime         (monobin/bin/mono)
>>>         symbol not found: clock_getres          (monobin/bin/mono)
>>>
>>>
>>> Any help? Or should I just forget and try to build on Solaris 10 again?
>>>
>>> Thanks,
>>>
>>> pablo
>>> _______________________________________________
>>> Mono-devel-list mailing list
>>> Mono-devel-list at lists.ximian.com
>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>>>
>>>
>> _______________________________________________
>> Mono-devel-list mailing list
>> Mono-devel-list at lists.ximian.com
>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>
>


More information about the Mono-devel-list mailing list