当前位置: 技术问答>linux和unix
[分享]如何在Solaris下面build Mono
来源: 互联网 发布时间:2016-02-13
本文导语: 原文在 http://www.genunix.org/wiki/index.php/How_to_build_Mono_on_Solaris 贴上来自己参考,我有空试一下,试过了就散分了。 How to build Mono on Solaris From Genunix 1 What is Mono? Mono provides the necessary software to develop and run .NE...
原文在
http://www.genunix.org/wiki/index.php/How_to_build_Mono_on_Solaris
贴上来自己参考,我有空试一下,试过了就散分了。
How to build Mono on Solaris
From Genunix
1 What is Mono?
Mono provides the necessary software to develop and run .NET client and server applications on Linux, Solaris, Mac OS X, Windows, and Unix. Sponsored by Novell, the Mono open source project has an active and enthusiastic contributing community . Its homepage is http://www.mono-project.com/Main_Page.
2 Components for Mono
mono: C# compiler, runtime environment etc.
libgdiplus: GDI+ drawing api implementation for Mono's System.Drawing.
xsp: Standalone web server written in C# that can be used to run your ASP.NET applications.
mod_mono: An Apache 1.3/2.0/2.2 module that provides ASP.NET support for Apache.
gtk-sharp-1.0.10: GTK1 c# binds.
gtk-sharp-2.4.2: GTK2(2.4) c# binds.
gtk-sharp-2.8.2: GTK2(2.8) c# binds.
There are other components, such as development tools. For more information please refer to its homepage.
3 Where to download
You can download Mono and component packages from page http://www.mono-project.com/Downloads.
4 Tools to build Mono
GNU tar to unpack the sources, as Solaris tar has problems unpacking Mono.
GNU build tools, such as gcc, gld, gas etc.
Notes:
GCC installed in the /usr/sfw/ works fine. although gld, gas etc are not included, it seems it's ok.
Because make included in CBE is GNU make, so it should be ok.
5 Build instructions
libgdiplus(1.1.13.6)
libgdiplus is optional, but if you need GDI+ drawing api support for Mono, you should build it.
On Sparc,
configure, gmake, gmake check, gmake install
is ok.
On x86, you need to change the source code according to http://mail-index.netbsd.org/pkgsrc-bugs/2005/10/18/0013.html, because there are some problem when building included cairo.
Mono(1.1.13.8)
If you set your build environment properly, the build process of Mono is straight forward.
On Sparc, just
configure, gmake, gmake check, gmake install
is ok. And when you do "gmake check", all check should passed(My test result:193 test(s) passed. 0 test(s) did not pass.), but the check process would fail after the test if you are not using gas.
On x86, you need add "--with-tls=pthread" when you do configure to avoid error
In file included from /usr/include/link.h:35,
from dyn_load.c:71:
/usr/include/libelf.h:45:2: #error "large files are not supported by libelf"
*** Error code 1
make: Fatal error: Command failed for target `dyn_load.lo'.
and
Undefined first referenced
symbol in file
GC_local_malloc ./.libs/libmonoruntime.a(reflection.o)
GC_local_malloc_atomic ./.libs/libmonoruntime.a(object.o)
GC_local_gcj_fast_malloc ./.libs/libmonoruntime.a(object.o)
GC_local_gcj_malloc ./.libs/libmonoruntime.a(object.o)
ld: fatal: Symbol referencing errors. No output written to pedump
you also need to make some modification of the source code. Here is the patch for mono
When you do "gmake check", it always fails at:
Test run: image=[path_to_mono_source]/mono/mini/exceptions.exe, opts=
I just ignored it.
After you have installed mono, remember to add [dist_dir]/lib/pkgconfig to your $PKG_CONFIG_PATH to make sure all the packages depend on Mono can find it.
6 Applications
7 Problem need to be noticed when build mono with SUN Studio
8 Usefull resources
http://www.genunix.org/wiki/index.php/How_to_build_Mono_on_Solaris
贴上来自己参考,我有空试一下,试过了就散分了。
How to build Mono on Solaris
From Genunix
1 What is Mono?
Mono provides the necessary software to develop and run .NET client and server applications on Linux, Solaris, Mac OS X, Windows, and Unix. Sponsored by Novell, the Mono open source project has an active and enthusiastic contributing community . Its homepage is http://www.mono-project.com/Main_Page.
2 Components for Mono
mono: C# compiler, runtime environment etc.
libgdiplus: GDI+ drawing api implementation for Mono's System.Drawing.
xsp: Standalone web server written in C# that can be used to run your ASP.NET applications.
mod_mono: An Apache 1.3/2.0/2.2 module that provides ASP.NET support for Apache.
gtk-sharp-1.0.10: GTK1 c# binds.
gtk-sharp-2.4.2: GTK2(2.4) c# binds.
gtk-sharp-2.8.2: GTK2(2.8) c# binds.
There are other components, such as development tools. For more information please refer to its homepage.
3 Where to download
You can download Mono and component packages from page http://www.mono-project.com/Downloads.
4 Tools to build Mono
GNU tar to unpack the sources, as Solaris tar has problems unpacking Mono.
GNU build tools, such as gcc, gld, gas etc.
Notes:
GCC installed in the /usr/sfw/ works fine. although gld, gas etc are not included, it seems it's ok.
Because make included in CBE is GNU make, so it should be ok.
5 Build instructions
libgdiplus(1.1.13.6)
libgdiplus is optional, but if you need GDI+ drawing api support for Mono, you should build it.
On Sparc,
configure, gmake, gmake check, gmake install
is ok.
On x86, you need to change the source code according to http://mail-index.netbsd.org/pkgsrc-bugs/2005/10/18/0013.html, because there are some problem when building included cairo.
Mono(1.1.13.8)
If you set your build environment properly, the build process of Mono is straight forward.
On Sparc, just
configure, gmake, gmake check, gmake install
is ok. And when you do "gmake check", all check should passed(My test result:193 test(s) passed. 0 test(s) did not pass.), but the check process would fail after the test if you are not using gas.
On x86, you need add "--with-tls=pthread" when you do configure to avoid error
In file included from /usr/include/link.h:35,
from dyn_load.c:71:
/usr/include/libelf.h:45:2: #error "large files are not supported by libelf"
*** Error code 1
make: Fatal error: Command failed for target `dyn_load.lo'.
and
Undefined first referenced
symbol in file
GC_local_malloc ./.libs/libmonoruntime.a(reflection.o)
GC_local_malloc_atomic ./.libs/libmonoruntime.a(object.o)
GC_local_gcj_fast_malloc ./.libs/libmonoruntime.a(object.o)
GC_local_gcj_malloc ./.libs/libmonoruntime.a(object.o)
ld: fatal: Symbol referencing errors. No output written to pedump
you also need to make some modification of the source code. Here is the patch for mono
When you do "gmake check", it always fails at:
Test run: image=[path_to_mono_source]/mono/mini/exceptions.exe, opts=
I just ignored it.
After you have installed mono, remember to add [dist_dir]/lib/pkgconfig to your $PKG_CONFIG_PATH to make sure all the packages depend on Mono can find it.
6 Applications
7 Problem need to be noticed when build mono with SUN Studio
8 Usefull resources
|
gunzip -c mono.pkg.gz
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。