Successful C++ SP Builds
- Solaris 2.8 (32-bit Sparc) using SunCC 5.2
- Solaris 2.8 (32-bit Sparc) using gcc3
Build Environment Setup
LD_LIBRARY_PATHto the eventual lib path into which you'll be installing the packages you're building (e.g.
XERCESCROOTto the root of the unpacked Xerces-C tarball
OPENSSLto the location where is installed
CXXto the names of the C and C++ compilers you want to use (gcc/cc, g++/CC)
$ OpenSSL (Sun CC):
./Configure solaris-sparcv9-cc threads shared --prefix=/opt/shibboleth-sp
$ OpenSSL (gcc):
./Configure solaris-sparcv9-gcc threads shared --prefix=/opt/shibboleth-sp
./configure --disable-static --without-ca-bundle --enable-thread --prefix=/opt/shibboleth-sp
./configure --disable-static --disable-doxygen --prefix=/opt/shibboleth-sp
./runConfigure -p solaris -c $CC -x $CXX -r pthread -b 32 -P /opt/shibboleth-sp
./configure --without-xalan --prefix=/opt/shibboleth-sp
./configure --with-curl=/opt/shibboleth-sp --with-log4cpp=/opt/shibboleth-sp --prefix=/opt/shibboleth-sp -C
$ Shibboleth (Sun CC):
./configure --with-saml=/opt/shibboleth-sp --with-log4cpp=/opt/shibboleth-sp --enable-apache-13 --with-apxs=/usr/local/apache/bin/apxs --enable-apache-20 --with-apxs=/usr/local/apache2/bin/apxs --prefix=/opt/shibboleth-sp CFLAGS=-D_sparc_ CXXFLAGS="-D_sparc_ -library=Cstd,Crun" LDFLAGS=-lz -C
$ Shibboleth (gcc):
./configure --with-saml=/opt/shibboleth-sp --with-log4cpp=/opt/shibboleth-sp --enable-apache-13 --with-apxs=/usr/local/apache/bin/apxs --enable-apache-20 --with-apxs=/usr/local/apache2/bin/apxs --prefix=/opt/shibboleth-sp -C
- On all versions of Solaris, the ONC RPC library used by Shibboleth for www/shibd connectivity is not able to support the older system calls used. The Shibboleth-supplied version of
liboncrpc.somust be used instead of the Sun version. This is automatically handled by the
configurescript and is normal.
- Note the additional flags that are required when building Shibboleth with Sun's compiler. These are required to address bugs in the way libtool invokes the compiler and linker.
- When using gcc4, the current version of Xerces supported by Home and Shibboleth does not support gcc4 and has a very small bug. One of the source files will fail because of an extraneous use of the
statickeyword on two lines. Simply remove the keyword from those lines and run
makeagain to complete the build.
- Some of the packages, particularly xml-security-c, do not build or install cleanly on some Solaris servers, depending on various software packages that may or may not be present. You may need to copy the install-sh script from the root folder of the package to various subdirectories, and manually copy the headers and library to the intended destination.
- The xml-security-c configure script uses the wrong optimization flag for Sun's compiler. If not using gcc, you'll need to edit the configure script and change -O2 to -xO2
LD_LIBRARY_PATHto the lib path containing the dependencies and Shibboleth libraries (e.g.
/opt/shibboleth-sp/lib). This is required both in the script that starts the
shibddaemon and when starting Apache (so you might put it in