如何在Solaris下面build Mono(How to build Mono on Solaris)

转载 2007年10月12日 12:01:00

前几天看到一片好的文章,拿来分享一下 

  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

在Windows上编译mono

There are two ways of building Mono on Windows, both do require a Cygwin setup which provides some t...
  • x_studying
  • x_studying
  • 2016年05月01日 23:52
  • 1486

solaris挂载iso镜像\制作\复制

挂载 bash-3.00# lofiadm -a /export/home/root/software/iso/slax-6.0.0pre3.iso /dev/lofi/1 bash-3.00#...
  • zhaojian1988
  • zhaojian1988
  • 2013年04月16日 15:36
  • 1230

Solaris下如何修改文件创建时间及查询

Solaris下如何修改文件创建时间及查询 实验演示: 1、核对时间 [root@S1011:/]# date Tue Jul 15 21:37:01 CDT 2014 --若时间不正确请先按...
  • huangyanlong
  • huangyanlong
  • 2014年07月15日 23:10
  • 2113

Solaris管理本地磁盘

Solaris管理本地磁盘  http://blog.csdn.net/a3z2008/article/details/7220916 源文档 http://blogold.chinaunix.n...
  • orion61
  • orion61
  • 2013年01月14日 11:20
  • 3105

【好东西一定要转】关于Solaris安全配置的转贴和讨论

转1 Sun系统的基本安全配置V1.0(by GaoXiao) 1)防止堆栈溢出(*) 2)关闭不用的服务,关闭一些无用的端口(*) 3)给系统打补丁(*) 4)消除系统中的弱智用户,定期修改...
  • shenghuiping2001
  • shenghuiping2001
  • 2013年11月15日 20:12
  • 2872

Solaris 用户账号 管理

分类: useradd 功能说明:建立用户帐号。 语  法:useradd [-mMnr][-c ][-d ][-e ][-f ][-g ][-G ][-s ][-u ][用户帐号] 或 ...
  • shenghuiping2001
  • shenghuiping2001
  • 2013年11月15日 20:13
  • 1797

Solaris 10 常用命令

Solaris 10 常用命令   1.如何查看当前在线用户?  可以使用who和finger显示当前正在在线的用户。  bash-3.00# who  root       pts...
  • li19236
  • li19236
  • 2014年12月08日 18:27
  • 3162

Solaris10 网络安装 操作系统

Solaris网络安装 通过本地网络安装solaris 10 U11(sparc)  安装环境:       服务器端:VMWare 安装solaris 10U11                 ...
  • cooljsz
  • cooljsz
  • 2015年12月30日 08:35
  • 547

Solaris MDB常用命令

1. 获取进程树 > ::ptree fffffffffc04b6b0 sched ffffc10011da9fc0 postwaittq ffffc10011da1fc...
  • agony000
  • agony000
  • 2013年11月25日 13:12
  • 1439

Solaris 10 实用命令小结

Solaris 实用的启动service 的命令。
  • shenghuiping2001
  • shenghuiping2001
  • 2017年02月28日 14:00
  • 406
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在Solaris下面build Mono(How to build Mono on Solaris)
举报原因:
原因补充:

(最多只允许输入30个字)