Hello, I've been trying to build mono 0.26 on FreeBSD 5.1-R without a success. Following the documentation on how to build mono from sources at http://www.go-mono.com:8080. Issuing a 'make' after ./configure outputs the following:
"Makefile", line 503: Need an operator make: fatal errors encountered -- cannot continue *** Error code 1 When I remove dnl from the beginning of the 503th line the make proceeds, but fails with socket-io.c: In function `ves_icall_System_Net_Sockets_Socket_SetSocketOption_internal': socket-io.c:1513: `SOL_IPV6' undeclared (first use in this function) socket-io.c:1513: (Each undeclared identifier is reported only once socket-io.c:1513: for each function it appears in.) socket-io.c:1532: `SOL_IP' undeclared (first use in this function) Which I belive had been already discussed in the following thread: http://www.mail-archive.com/[EMAIL PROTECTED]/msg03146.html Well following that thread I've applied both patches Gonzalo Paniagua Javier and Paolo Molaro submitted: --- mono/io-layer/threads.c.orig Fri Jul 4 22:45:33 2003 +++ mono/io-layer/threads.c Tue Sep 23 11:02:48 2003 @@ -238,7 +238,7 @@ * I'm leaving it as 2M until I'm told differently.) */ pthread_attr_init(&attr); - pthread_attr_setstacksize(&attr, 1024*1024*2); + pthread_attr_setstacksize(&attr, 1024*1024); ret=_wapi_timed_thread_create(&thread_private_handle->thread, &attr, create, start, thread_exit, param, --- mono/metadata/socket-io.c.orig Tue Jul 29 20:58:31 2003 +++ mono/metadata/socket-io.c Tue Sep 23 10:45:22 2003 @@ -1465,6 +1465,30 @@ int system_level; int system_name; int ret; +#ifdef AF_INET6 + int sol_ip; + int sol_ipv6; + +#ifdef HAVE_SOL_IPV6 + sol_ipv6 = SOL_IPV6; +#else + { + struct protoent *pent; + pent = getprotobyname ("ipv6"); + sol_ipv6 = (pent != NULL) ? pent->p_proto : 41; + } +#endif + +#ifdef HAVE_SOL_IP + sol_ip = SOL_IP; +#else + { + struct protoent *pent; + pent = getprotobyname ("ip"); + sol_ip = (pent != NULL) ? pent->p_proto : 0; + } +#endif +#endif /* AF_INET6 */ MONO_ARCH_SAVE_REGS; @@ -1510,7 +1534,7 @@ MonoObject *address = NULL; #ifdef AF_INET6 - if(system_level == SOL_IPV6) { + if(system_level == sol_ipv6) { struct ipv6_mreq mreq6; /* @@ -1529,7 +1553,7 @@ ret = setsockopt (sock, system_level, system_name, &mreq6, sizeof (mreq6)); - } else if(system_level == SOL_IP) + } else if(system_level == sol_ip) #endif /* AF_INET6 */ { #ifdef HAVE_STRUCT_IP_MREQN The building now succeeds but, the mcs hangs (can be read in the thread). Paolo mentioned that there were some tips for FreeBSD users, for which he hasn't got reply, can someone point me to them, or help me with making mono work? Have a good time, Andrey Nepomnyaschih _______________________________________________ Mono-list maillist - [EMAIL PROTECTED] http://lists.ximian.com/mailman/listinfo/mono-list
