[parsec-users] PARSEC-2.0 compile errors for vips, raytrace and ferret on Solaris/SPARC

Christian Bienia cbienia at CS.Princeton.EDU
Tue Mar 31 21:28:20 EDT 2009


Kshitij,

I haven't seen these errors before, but it might be caused by a really old
version of libc. Ferret, for example, complains about a missing TLS version.
I assume TLS means thread-local storage in this case, a feature that was
introduced quite some time ago.

You might be able to fix these errors simply by recompiling the compiler and
/ or some libraries.

Have you also noticed that we now distribute Solaris binaries for PARSEC 2.0
on the PARSEC web page? If you don't need to modify the source code then you
can simply use those. It should run out of the box.

- Chris


-----Original Message-----
From: parsec-users-bounces at lists.cs.princeton.edu
[mailto:parsec-users-bounces at lists.cs.princeton.edu] On Behalf Of Kshitij
Sudan
Sent: Tuesday, March 31, 2009 5:02 PM
To: PARSEC Users
Subject: [parsec-users] PARSEC-2.0 compile errors for vips, raytrace and
ferret on Solaris/SPARC

hi All,

I am trying to compile PARSEC-2.0 for Solaris 10/SPARC and I'm unable
to compile Ferret, Vips and Raytrace benchmarks. I have attached the
errors that I got while compiling them, and the machine config below.

Please advise if there are workarounds for these errors.

thanks,
-Kshitij

Machine config:
-----------------------
[sudan at grad1: ~]$ uname -a
SunOS grad1.emcb.utah.edu 5.10 Generic_118833-33 sun4u sparc
SUNW,Sun-Blade-1000 Solaris

[sudan at grad1: ~]$ gcc -v
Using built-in specs.
Target: sparc-sun-solaris2.10
Configured with: ../gcc-4.3.2/configure --prefix=/usr/local/gcc-4.3.2
--with-gmp=/usr/local --with-mpfr=/usr/local
Thread model: posix
gcc version 4.3.2 (GCC)

[sudan at grad1: ~]$ psrinfo -v
Status of virtual processor 0 as of: 03/31/2009 14:59:20
  on-line since 03/18/2009 17:02:28.
  The sparcv9 processor operates at 750 MHz,
        and has a sparcv9 floating point processor.
Status of virtual processor 1 as of: 03/31/2009 14:59:20
  on-line since 03/18/2009 17:02:30.
  The sparcv9 processor operates at 750 MHz,
        and has a sparcv9 floating point processor.



Ferret
---------------
  CXX
'/local/space2/parsec/parsec-2.0/pkgs/apps/ferret/obj/sparc-solaris.gcc-pthr
eads.solaris/parsec/obj/cass_add_cfg.o'
==>
'/local/space2/parsec/parsec-2.0/pkgs/apps/ferret/obj/sparc-solaris.gcc-pthr
eads.solaris/parsec/bin/cass_add_cfg'
ld: fatal: relocation error: R_SPARC_TLS_LE_HIX22: file
/local/space2/parsec/parsec-2.0/pkgs/apps/ferret/obj/sparc-solaris.gcc-pthre
ads.solaris/parsec/lib/libcass.a(emd.o):
symbol <unknown>: bad symbol type SECT: symbol type must be TLS
collect2: ld returned 1 exit status
make: ***
[/local/space2/parsec/parsec-2.0/pkgs/apps/ferret/obj/sparc-solaris.gcc-pthr
eads.solaris/parsec/bin/cass_add_cfg]
Error 1
[PARSEC] Error: 'env version=pthreads
CFLAGS=-I/local/space2/parsec/parsec-2.0/pkgs/libs/gsl/inst/sparc-solaris.gc
c-pthreads.solaris/include
-I/local/space2/parsec/parsec-2.0/pkgs/libs/imagick/inst/sparc-solaris.gcc-p
threads.solaris/include
-O3 -funroll-loops -fprefetch-loop-arrays -I/usr/sfw/include
-DPARSEC_VERSION=2.0
LDFLAGS=-L/local/space2/parsec/parsec-2.0/pkgs/libs/gsl/inst/sparc-solaris.g
cc-pthreads.solaris/lib
-L/local/space2/parsec/parsec-2.0/pkgs/libs/imagick/inst/sparc-solaris.gcc-p
threads.solaris/lib
-L/usr/local/gcc-4.3.2/lib64 -L/usr/local/gcc-4.3.2/lib -L/usr/sfw/lib
/usr/local/bin/make' failed.

Raytrace
------------------
[PARSEC] Packages to build:  raytrace

[PARSEC] [========== Building package raytrace ==========]
[PARSEC] [---------- Analyzing package raytrace ----------]
[PARSEC] raytrace depends on: cmake mesa
[PARSEC] [---------- Analyzing package cmake ----------]
[PARSEC] cmake does not depend on any other packages.
[PARSEC] [---------- Building package cmake ----------]
[PARSEC] Removing old build directory.
[PARSEC] Running 'env CXXFLAGS=-O3 -funroll-loops
-fprefetch-loop-arrays -fpermissive -fno-exceptions -I/usr/sfw/include
-DPARSEC_VERSION=2.0 -fexceptions
/local/space2/parsec/parsec-2.0/pkgs/tools/cmake/src/configure
--prefix=/local/space2/parsec/parsec-2.0/pkgs/tools/cmake/inst/sparc-solaris
.gcc-pthreads.solaris':
.
.
.
[ 31%] Building C object Utilities/cmcurl/CMakeFiles/cmcurl.dir/strdup.o
[ 31%] Building C object Utilities/cmcurl/CMakeFiles/cmcurl.dir/strequal.o
[ 31%] Building C object Utilities/cmcurl/CMakeFiles/cmcurl.dir/strerror.o
/local/space2/parsec/parsec-2.0/pkgs/tools/cmake/src/Utilities/cmcurl/strerr
or.c:28:2:
error: #error "you MUST have either POSIX or glibc strerror_r if
strerror_r is found"
/local/space2/parsec/parsec-2.0/pkgs/tools/cmake/src/Utilities/cmcurl/strerr
or.c:
In function 'Curl_strerror':
/local/space2/parsec/parsec-2.0/pkgs/tools/cmake/src/Utilities/cmcurl/strerr
or.c:649:
warning: initialization makes pointer from integer without a cast
make[2]: *** [Utilities/cmcurl/CMakeFiles/cmcurl.dir/strerror.o] Error 1
make[1]: *** [Utilities/cmcurl/CMakeFiles/cmcurl.dir/all] Error 2
make: *** [all] Error 2
[PARSEC] Error: 'env CXXFLAGS=-O3 -funroll-loops
-fprefetch-loop-arrays -fpermissive -fno-exceptions -I/usr/sfw/include
-DPARSEC_VERSION=2.0 -fexceptions /usr/local/bin/make' failed.

Vips
-----------------
 /usr/local/gcc-4.3.2/bin/gcc -DHAVE_CONFIG_H -I.
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib -I..
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src
-DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED
-DGLIB_COMPILATION -D_REENTRANT -D_PTHREADS -O3 -funroll-loops
-fprefetch-loop-arrays -I/usr/sfw/include -DPARSEC_VERSION=2.0 -Wall
-MT gcompletion.lo -MD -MP -MF .deps/gcompletion.Tpo -c
/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gcompletion.c
-o gcompletion.o
if /bin/bash ../libtool --mode=compile /usr/local/gcc-4.3.2/bin/gcc
-DHAVE_CONFIG_H -I.
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib -I..
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src
-DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED
-DGLIB_COMPILATION   -D_REENTRANT -D_PTHREADS  -O3 -funroll-loops
-fprefetch-loop-arrays -I/usr/sfw/include -DPARSEC_VERSION=2.0 -Wall
-MT gconvert.lo -MD -MP -MF ".deps/gconvert.Tpo" \
          -c -o gconvert.lo `test -f
'/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c'
|| echo
'/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/'`/local/space2/par
sec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c;
\
        then mv -f ".deps/gconvert.Tpo" ".deps/gconvert.Plo"; \
        else rm -f ".deps/gconvert.Tpo"; exit 1; \
        fi
 /usr/local/gcc-4.3.2/bin/gcc -DHAVE_CONFIG_H -I.
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib -I..
-I/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src
-DG_LOG_DOMAIN=\"GLib\" -DG_DISABLE_CAST_CHECKS -DG_DISABLE_DEPRECATED
-DGLIB_COMPILATION -D_REENTRANT -D_PTHREADS -O3 -funroll-loops
-fprefetch-loop-arrays -I/usr/sfw/include -DPARSEC_VERSION=2.0 -Wall
-MT gconvert.lo -MD -MP -MF .deps/gconvert.Tpo -c
/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c -o
gconvert.o
/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c:48:2:
error: #error GNU libiconv not in use but included iconv.h is from
libiconv
/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c: In
function 'g_iconv':
/local/space2/parsec/parsec-2.0/pkgs/libs/glib/src/glib/gconvert.c:169:
warning: passing argument 2 of 'libiconv' from incompatible pointer
type
make[4]: *** [gconvert.lo] Error 1
make[4]: Leaving directory
`/local/space2/parsec/parsec-2.0/pkgs/libs/glib/obj/sparc-solaris.gcc-pthrea
ds.solaris/glib'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory
`/local/space2/parsec/parsec-2.0/pkgs/libs/glib/obj/sparc-solaris.gcc-pthrea
ds.solaris/glib'
make[2]: *** [all] Error 2
make[2]: Leaving directory
`/local/space2/parsec/parsec-2.0/pkgs/libs/glib/obj/sparc-solaris.gcc-pthrea
ds.solaris/glib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/local/space2/parsec/parsec-2.0/pkgs/libs/glib/obj/sparc-solaris.gcc-pthrea
ds.solaris'
make: *** [all] Error 2
[PARSEC] Error: 'env /usr/local/bin/make' failed.
_______________________________________________
parsec-users mailing list
parsec-users at lists.cs.princeton.edu
https://lists.cs.princeton.edu/mailman/listinfo/parsec-users



More information about the parsec-users mailing list