Bug 314674 (MONO58344) - Solaris build failure
Summary: Solaris build failure
Status: RESOLVED FIXED
Alias: MONO58344
Product: Mono: Runtime
Classification: Mono
Component: misc (show other bugs)
Version: unspecified
Hardware: Other Solaris 8
: P3 - Medium : Enhancement
Target Milestone: ---
Assignee: Mono Bugs
QA Contact: Mono Bugs
URL:
Whiteboard:
Keywords: build
Depends on:
Blocks:
 
Reported: 2004-05-11 22:37 UTC by Robert Johnstone
Modified: 2007-09-15 21:24 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Wiest 2007-09-15 18:37:26 UTC


---- Reported by rjohnsto@sfu.ca 2004-05-11 15:37:01 MST ----

Description of Problem:
  When building mono on Solaris, there are several undefined references. 
Specifically, when running make from the command line in the directory
mono-0.91/mono/interpreter, the build process fails.  A log of the build
process follows.


/bin/ksh ../../libtool --mode=link gcc  -g -O2 -fno-strict-aliasing -g
-Wall -Wunused -Wmissing-prototypes -Wmissing-declarations
-Wstrict-prototypes  -Wmissing-prototypes -Wnested-externs -Wpointer-arith
-Wno-cast-qual -Wcast-align -Wwrite-strings -Wno-char-subscripts   -o mint
 main.o libmint.la -lrt  -lsocket -lnsl -lxnet -lpthread -lm -lrt -lsunmath
gcc -g -O2 -fno-strict-aliasing -g -Wall -Wunused -Wmissing-prototypes
-Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes
-Wnested-externs -Wpointer-arith -Wno-cast-qual -Wcast-align
-Wwrite-strings -Wno-char-subscripts -o .libs/mint main.o 
./.libs/libmint.so -L/ensc/grad1/rjohnsto/lib
/ensc/grad1/rjohnsto/lib/libgthread-2.0.so
/ensc/grad1/rjohnsto/lib/libgmodule-2.0.so
/ensc/grad1/rjohnsto/lib/libglib-2.0.so -lsocket -lnsl -lxnet -lpthread -lm
-lrt -lsunmath -Wl,--rpath -Wl,/ensc/grad1/rjohnsto/lib
./.libs/libmint.so: undefined reference to `listen@SUNW_1.1'
./.libs/libmint.so: undefined reference to `accept@SUNW_1.1'
./.libs/libmint.so: undefined reference to `recv@SUNW_1.1'
./.libs/libmint.so: undefined reference to `recvfrom@SUNW_1.1'
./.libs/libmint.so: undefined reference to `shutdown@SUNW_1.1'
./.libs/libmint.so: undefined reference to `getsockname@SUNW_1.1'
./.libs/libmint.so: undefined reference to `getpeername@SUNW_1.1'
./.libs/libmint.so: undefined reference to `setsockopt@SUNW_1.1'
./.libs/libmint.so: undefined reference to `send@SUNW_1.1'
collect2: ld returned 1 exit status
make: *** [mint] Error 1



---- Additional Comments From tberman@gentoo.org 2004-05-22 17:57:05 MST ----

ugh, this is not a MonoDevelop bug.



---- Additional Comments From vargaz@freemail.hu 2004-05-23 12:10:47 MST ----

Others have reported this on the mailing list. However, I can't
reproduce it.



---- Additional Comments From scott@budomail.com 2004-06-08 19:00:19 MST ----

I can confirm that I'm also seeing this bug. Some more information on my system:

OS:			Solaris 8; patched as per Sun updates.
Processor:		UltraSPARC sun4u series.
Mono Runtime:	0.95 Beta 2
GCC version:	3.0.3

./configure --prefix=/usr/local

-----------------------------------------------------------

Some output from config:

build system type... sparc-sun-solaris2.8
checking dynamic linker characteristics... solaris2.8 ld.so


        GC:          included
        ICU:         yes. Version: 2.8
        NPTL:        yes
        SIGALTSTACK: no
        Engine:      Building and using the JIT
        2.0 Alpha:   no
        JNI support: no
        
-----------------------------------------------------------

Last few lines of output from make:

creating libmint.la
(cd .libs && rm -f libmint.la && ln -s ../libmint.la libmint.la)
source='main.c' object='main.o' libtool=no \
depfile='.deps/main.Po' tmpdepfile='.deps/main.TPo' \
depmode=gcc3 /bin/bash ../../depcomp \
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -I../../libgc/include -I/usr/local/include/glib
-2.0 -I/usr/local/lib/glib-2.0/include   -threads -I/usr/local/include/glib-2.0 -I/usr/
local/lib/glib-2.0/include    -DGC_SOLARIS_THREADS -DGC_SOLARIS_PTHREADS 
-D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ 
-D_XOPEN_SOURCE_EXTENDED=1 -DNO_UNALIGNED_ACCESS  -g -O2 -fno-strict-aliasing 
-g -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes  
-Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wcast-align 
-Wwrite-strings -Wno-char-subscripts -c `test -f 'main.c' || echo './'`main.c
/bin/bash ../../libtool --mode=link gcc  -g -O2 -fno-strict-aliasing -g -Wall -Wunused 
-Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes  -Wmissing-
prototypes -Wnested-externs -Wpointer-arith -Wno-cast-qual -Wcast-align -Wwrite-
strings -Wno-char-subscripts   -o mint  main.o libmint.la -lrt  -lsocket -lnsl -lxnet 
-lpthread -lm -lrt
gcc -g -O2 -fno-strict-aliasing -g -Wall -Wunused -Wmissing-prototypes -Wmissing-
declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wpointer-
arith -Wno-cast-qual -Wcast-align -Wwrite-strings -Wno-char-subscripts -o .libs/mint 
main.o  ./.libs/libmint.so -L/usr/local/lib /usr/local/lib/libgthread-2.0.so /usr/local/lib/
libgmodule-2.0.so /usr/local/lib/libglib-2.0.so -licui18n -licuuc -licudata -lsocket -lnsl 
-lxnet -lpthread -lm -lrt -Wl,--rpath -Wl,/usr/local/lib
./.libs/libmint.so: undefined reference to `listen@SUNW_1.1'
./.libs/libmint.so: undefined reference to `accept@SUNW_1.1'
./.libs/libmint.so: undefined reference to `recv@SUNW_1.1'
./.libs/libmint.so: undefined reference to `recvfrom@SUNW_1.1'
./.libs/libmint.so: undefined reference to `shutdown@SUNW_1.1'
./.libs/libmint.so: undefined reference to `getsockname@SUNW_1.1'
./.libs/libmint.so: undefined reference to `getpeername@SUNW_1.1'
./.libs/libmint.so: undefined reference to `setsockopt@SUNW_1.1'
./.libs/libmint.so: undefined reference to `send@SUNW_1.1'
collect2: ld returned 1 exit status
make[3]: *** [mint] Error 1
make[3]: Leaving directory `/home/scott/mono-0.95/mono/interpreter'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/scott/mono-0.95/mono'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/scott/mono-0.95'
make: *** [all] Error 2

-------------------------------------------------------------

Some relevant links from the mailing list:

http://lists.ximian.com/archives/public/mono-devel-list/2004-May/005642.html
http://lists.ximian.com/archives/public/mono-devel-list/2004-May/005691.html

If anyone needs more information on my system, please ask.

Regards,

Scott



---- Additional Comments From hartwig.thomas@enterag.ch 2004-08-03 11:03:54 MST ----

I managed to circumvent the problem by changing
LDFLAGS =
to
LDFLAGS = -shared
in ../mono/interpreter/Makefile

I am fairly sure this meets the intention of the Makefile.
Of course this fix needs to be integrated properly into the package 
(each ./configure will overwrite it).




---- Additional Comments From devnull@knark.info 2004-11-15 15:53:59 MST ----

I can confirm this in version 1.0.4. Changing the makefile as
suggested did help.
Here is my setup:
gcc --version: gcc (GCC) 3.2.2
ld --version: GNU ld version 2.13.2.1
uname -a: SunOS emeldir 5.8 Generic_108528-18 sun4u sparc
SUNW,Sun-Blade-100
Hope this helps.



---- Additional Comments From miguel@ximian.com 2007-01-01 17:36:49 MST ----

Bug too old, and we now have automated builds on sparc. 

Closing.


Unknown bug field "cf_op_sys_details" encountered while moving bug
   <cf_op_sys_details>SunOS emeldir 5.8 Generic_108528-18 sun4u sparc</cf_op_sys_details>
Unknown bug field "cf_version_details" encountered while moving bug
   <cf_version_details>1.0.4</cf_version_details>