<div>
                    <div>Hello,</div><div><br></div><div><div>I'm experiencing difficulties getting Mono to compile on a 64-bit SmartOS (Solaris) machine, and I hope that somebody can help me.</div><div><br></div><div>For the uninitiated, SmartOS is Joyent's KVM-integrated distribution of IllumOS which was previously OpenSolaris:</div><div><br></div><div>$ uname -a</div><div>SunOS 5.11 joyent_20120424T232010Z i86pc i386 i86pc Solaris</div><div><br></div><div><br></div></div><div>Here are my environment variables and configuration parameters:</div><div><br></div><div><br></div><div>*** LIBGC (Boehm) ***</div><div><br></div><div><br></div><div>PREFIX=/opt/mono-gc</div><div><br></div><div>./configure --prefix=$PREFIX --libdir=$PREFIX/lib/amd64 \</div><div>CC=x86_64-sun-solaris2.11-gcc \</div><div>CXX=x86_64-sun-solaris2.11-g++ \</div><div>CPPFLAGS=-m64 \</div><div>CFLAGS=-m64 \</div><div>CXXFLAGS=-m64 \</div><div>LDFLAGS=-m64</div><div><br></div><div><br></div><div><br></div><div>*** MONO ***</div><div><br></div><div><br></div><div>ulimit -Hs 10240</div><div>PREFIX=/opt/mono</div><div><br></div><div>./configure --prefix=$PREFIX --bindir=$PREFIX/bin/amd64 \</div><div>--libdir=$PREFIX/lib/amd64 \</div><div>--with-gc=boehm --with-sigaltstack=no \</div><div>--disable-dtrace --disable-mcs-build \</div><div>CPPFLAGS="-m64 -I/opt/mono-gc/include" \</div><div>CFLAGS="-I/opt/mono/include" \</div><div>AS='as -64' \</div><div>CC=x86_64-sun-solaris2.11-gcc \</div><div>CXX=x86_64-sun-solaris2.11-g++ \</div><div>GREP=ggrep \</div><div>SED=gsed \</div><div>LDFLAGS="-m64 -L/opt/mono-gc/lib/amd64 -R/opt/mono/lib/amd64" \</div><div>PKG_CONFIG_PATH="/usr/lib/amd64/pkgconfig:$PKG_CONFIG_PATH"</div><div><br></div><div><br></div><div><br></div><div>The configuration phase runs well and the build appears to reach a fairly advanced stage, but it fails at this point:</div><div><br></div><div><br></div><div><br></div><div>tramp-amd64.c: In function 'mono_arch_create_monitor_exit_trampoline':</div><div>tramp-amd64.c:1094:4: warning: comparison between 'enum <anonymous>' and 'enum <anonymous>' [-Wenum-compare]</div><div>-e CC   libmono_static_la-mini-posix.lo</div><div>../../libtool[41]: -64: not found [No such file or directory]</div><div>mini-posix.c: In function 'mono_runtime_syscall_fork':</div><div>mini-posix.c:634:2: warning: 'return' with no value, in function returning non-void [-Wreturn-type]</div><div>-e LD   libmono-static.la</div><div>../../libtool[41]: -64: not found [No such file or directory]</div><div>-e CC   mono-main.o</div><div>-e LD   mono</div><div>../../libtool[41]: -64: not found [No such file or directory]</div><div>Undefined                       first referenced</div><div> symbol                             in file</div><div>signbit                             ./.libs/libmono-static.a(libmono_static_la-mini-amd64.o)</div><div>ld: fatal: symbol referencing errors. No output written to mono</div><div>collect2: error: ld returned 1 exit status</div><div>make[4]: *** [mono] Error 1</div><div>make[4]: Leaving directory `/home/admin/mono-2.10.8/mono/mini'</div><div>make[3]: *** [all] Error 2</div><div>make[3]: Leaving directory `/home/admin/mono-2.10.8/mono/mini'</div><div>make[2]: *** [all-recursive] Error 1</div><div>make[2]: Leaving directory `/home/admin/mono-2.10.8/mono'</div><div>make[1]: *** [all-recursive] Error 1</div><div>make[1]: Leaving directory `/home/admin/mono-2.10.8'</div><div>make: *** [all] Error 2</div><div><br></div><div><br></div><div>Does anybody recognise this failure?</div><div><br></div><div>I've also tried building Mono 2.11.3 (alpha), but the result is much much worse, and the build barely gets started before failing.</div><div><br></div><div>I've Googled extensively and there are no more clues left on the internet! I'd really appreciate some help from anybody that has successfully built recent releases of Mono on SmartOS, IllumOS or OpenSolaris.</div>
                </div>
                <div><div><br></div><div><br></div><div>Kind regards,</div><div><br></div><div>Scott</div></div>