RE: [ROOT] Compile problem about ROOT 3.10.01 on IRIX and FreeBSD machine.

From: Philippe Canal (pcanal@fnal.gov)
Date: Mon Oct 13 2003 - 19:23:43 MEST


Hi,

To solve the problem on IRIX, apply the following patch:

<fcdfsgi2> cvs diff -u unix/src/TUnixSystem.cxx rootx/src/rootx.cxx
Index: unix/src/TUnixSystem.cxx
===================================================================
RCS file: /user/cvs/root/unix/src/TUnixSystem.cxx,v
retrieving revision 1.73
diff -u -r1.73 TUnixSystem.cxx
--- unix/src/TUnixSystem.cxx	7 Oct 2003 14:00:59 -0000	1.73
+++ unix/src/TUnixSystem.cxx	13 Oct 2003 17:17:50 -0000
@@ -2648,7 +2648,7 @@
 #elif defined(R__KCC)
       sigact.sa_handler = (sighandlerFunc_t)sighandler;
 #elif (defined(R__SGI) && !defined(R__KCC)) || defined(R__LYNXOS)
-#  if defined(R__SGI64)
+#  if defined(R__SGI64) || (__GNUG__>=3)
       sigact.sa_handler = sighandler;
 #   else
       sigact.sa_handler = (void (*)(...))sighandler;
Index: rootx/src/rootx.cxx
===================================================================
RCS file: /user/cvs/root/rootx/src/rootx.cxx,v
retrieving revision 1.10
diff -u -r1.10 rootx.cxx
--- rootx/src/rootx.cxx	27 Jul 2003 08:05:07 -0000	1.10
+++ rootx/src/rootx.cxx	13 Oct 2003 17:17:50 -0000
@@ -332,7 +332,7 @@
 #elif defined(__sun) && defined(__SVR4)
    handle.sa_handler = SigUsr1;
 #elif (defined(__sgi) && !defined(__KCC)) || defined(__Lynx__)
-#   if defined(IRIX64)
+#   if defined(IRIX64) || (__GNUG__>=3)
    handle.sa_handler = SigUsr1;
 #   else
    handle.sa_handler = (void (*)(...))SigUsr1;

Cheers,
Philippe
-----Original Message-----
From: owner-roottalk@pcroot.cern.ch
[mailto:owner-roottalk@pcroot.cern.ch]On Behalf Of Harufumi Tsuchiya
Sent: Monday, October 13, 2003 7:33 AM
To: roottalk@pcroot.cern.ch
Subject: [ROOT] Compile problem about ROOT 3.10.01 on IRIX and FreeBSD
machine.


Hello ROOTers,

Now, I am trying to compile ROOT source(v3.10.01) on IRIX and freeebsd
machine.
However, I have encountered the follwing problems.
So, if anyone have idea to avoid such problems, please tell me.

(1) IRIX 65 with gcc 3.0.4

In compiling TUnixSystem.cxx, the following error message appeared and
makeing ROOT stopped.
                               :
g++ -O -fsigned-char -Wall -fPIC -Iinclude  -o unix/src/TUnixSystem.o -c
unix/src/TUnixSystem.cxx
unix/src/TUnixSystem.cxx: In static member function `static void
   TUnixSystem::UnixSignal(ESignals, void (*)(ESignals))':
unix/src/TUnixSystem.cxx:2654: cannot convert `void (*)(...)' to `void
   (*)(int)' in assignment
gmake: *** [unix/src/TUnixSystem.o] Error 1


(2) FreeBSD 5.1-RELEASED with gcc 3.2.3

At first, when compiing TAuthenticate.cxx,
error that no crypt.h file exist appeared. Indeed, crypt.h is in
/usr/include/rpcsvc
instead of /usr/include. Hence, I modiifed line for including crypt.h to
#include <rpcsvc/crypt.h> from #include <crypt.h> in the TAuthenticate.cxx.
After that
I encountered the follwing errors.

g++ -O -pipe -W -Wall -fPIC -I/usr/X11R6/include -Iinclude   -o
net/src/TAuthDetails.o -c net/src/TAuthDetails.cxx
g++ -O -pipe -W -Wall -fPIC -I/usr/X11R6/include -Iinclude   -o
net/src/TAuthenticate.o -c net/src/TAuthenticate.cxx
In file included from net/src/TAuthenticate.cxx:43:
/usr/include/rpcsvc/crypt.h:30: declaration of `des_dir desargs::des_dir'
/usr/include/rpcsvc/crypt.h:20: changes meaning of `des_dir' from `typedef
enum
   des_dir des_dir'
/usr/include/rpcsvc/crypt.h:31: declaration of `des_mode desargs::des_mode'
/usr/include/rpcsvc/crypt.h:26: changes meaning of `des_mode' from `typedef
   enum des_mode des_mode'
gmake: *** [net/src/TAuthenticate.o] Error 1


Best regards,

Harufumi Tsuchiya



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:16 MET