ROOT on SGI with gcc

From: Pasha Murat (murat@cdfsga.fnal.gov)
Date: Mon Feb 08 1999 - 04:58:02 MET


Martin Weber writes:
 > I am trying to compile ROOT on an SGI/IRIX6.4 with the gcc/g++ compiler. 
 > But so far I have not succeeded. It would be a great help for me if you
 > could provide me with your Makefile and other related files that you have
 > changed for use with IRIX.

Hi Martin,
	in order to build ROOT on SGI IRIX 6.2 with EGCS (o32 mode) I had to 
add a makefile for SGI/EGCS and also to modify Makelib and Make-macros. 
As Make-macros is pretty long I include only hints:
- I didn't use libNew.so - the problem with its SGI/EGCS flavour seems to persist
- if you're using EGCS, you may want to link CINT_fakestrm.o and not 
  CINT_libstrm.o into CINT library.
- i had to add $CILIBS when linking libCint.so:

$(CINTLIB):     $(CINTO)
		@$(MAKELIB) $(PLATFORM) $(LD) "$(LDFLAGS)" \
		   "$(SOFLAGS)" libCint.$(SOEXT) $@ "$(CINTO) $(CILIBS)"

However I wouldn't be surprized if on IRIX6.4 you dont' need it.

								-pasha	

------------------------ Makefile.mips-sgi-irix6.2-egcs
# Makefile of ROOT for SGI-IRIX with egcs

PLATFORM      = sgi

CXX           = gcc
CC            = cc
CXXFLAGS      = -fsigned-chars -Wall -fPIC -fno-exceptions  \
                -I$(OPENGL)/include 
CFLAGS        = 
CINTCXXFLAGS  = -fsigned-chars -Wall -fPIC -fno-exceptions -DG__REGEXP1 \
                -DG__UNIX -DG__SIGNEDCHAR -DG__SHAREDLIB -DG__OSFDLL -DG__DECCXX \
		-DG__ROOT -DG__REDIRECTIO
CINTCFLAGS    = -signed -DG__REGEXP1 -DG__SIGNEDCHAR -DG__UNIX -DG__SHAREDLIB \
                -DG__OSFDLL -DG__DECCXX -DG__ROOT -DG__REDIRECTIO
OPT           = -g
NOOPT         = 
LD            = gcc
LDFLAGS       = $(OPT)  -Wl,-u,__builtin_new -Wl,-u,__builtin_delete \
                -Wl,-u,__nw__FUiPv
SOFLAGS       = -shared  
SOEXT         = so
SYSLIBS       = -lstdc++ -lm
SYSXLIBS      = -L/usr/X11R6/lib -lX11 -lm
XLIBS         = $(ROOTSYS)/lib/libXpm.a -L/usr/X11R6/lib -lX11
CILIBS        = -lstdc++ -lgen -lm -lbsd


##### MACROS and TARGETS #####

include Make-macros


##### DEPENDENCIES #####

include Make-depend
---------------------------------------------- Makelib
#! /bin/sh

# Script to generate a shared library.
# Called by $ROOTSYS/src/Make-macros, the makefile backend.

PLATFORM=$1
LD=$2
LDFLAGS=$3
SOFLAGS=$4
SONAME=$5
LIB=$6
OBJS=$7

rm -f $LIB

echo platform = $PLATFORM

if [ $PLATFORM = aix ]; then
   echo this is aix
elif [ $PLATFORM = alpha ]; then
   echo this is alpha
elif [ $PLATFORM = hpux ]; then
   echo $LD $SOFLAGS $LDFLAGS -o $LIB $OBJS
   $LD $SOFLAGS $LDFLAGS -o $LIB $OBJS
elif [ $LD = KCC ]; then
   echo $LD $LDFLAGS -o $LIB $OBJS
   $LD $LDFLAGS -o $LIB $OBJS
elif [ $PLATFORM = sgi ]; then
  echo $LD $SOFLAGS $LDFLAGS -o $LIB $OBJS
  $LD $SOFLAGS $LDFLAGS -o $LIB $OBJS
else
   echo $LD $SOFLAGS$SONAME $LDFLAGS -o $LIB $OBJS
   $LD $SOFLAGS$SONAME $LDFLAGS -o $LIB $OBJS
fi

chmod 555 $LIB

echo "$LIB done"

exit 0
--------------------------------------------------------------------------------



This archive was generated by hypermail 2b29 : Tue Jan 04 2000 - 00:43:29 MET