[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Build problems on Solaris 8

From: J.H.M. Dassen (Ray)
Subject: Re: Build problems on Solaris 8
Date: Fri, 16 Nov 2001 09:33:00 +0100
User-agent: Mutt/1.3.23i

On Tue, Nov 13, 2001 at 06:38:32 -0500, Dooferlad wrote:
> I am having build problems on Solaris 8 / Sparc. I am using gcc 3.0.2,
> all went well up to:
> c++ -DHAVE_CONFIG_H -I. -I. -I. -I./.. -isystem /usr/openwin/include
> -DNDEBUG -O2 -g -W -Wall -trigraphs -c PannedGE.C
> PannedGE.C:145: cannot convert `void (*)(...)' to `void (*)()' in 
>    initialization
>    *** Error code 1

Hmm... this doesn't sound very familiar to me, but it just might be related
to other problems when building with gcc newer than 2.95.

In the Debian GNU/Linux package of DDD, I needed to apply the following
changes in order to get DDD built on architectures that use gcc 3 as their
default gcc version:
  * ddd/logplayer.C: include system header <fstream.h> before local
  * ddd/rxscan.C: disabled declaration of isatty that's broken for g++ 3.0.
  * ddd/strclass.C: fixed type of new_state from int to ios::iostate so it
    works with g++ 3.0.

Can you try if applying the following patch makes a difference?

--- ddd-3.3.1.orig/ddd/logplayer.C
+++ ddd-3.3.1/ddd/logplayer.C
@@ -33,6 +33,8 @@
 #pragma implementation
+#include <fstream.h>
 #include "logplayer.h"
 #include "assert.h"
@@ -43,7 +45,6 @@
 #include "streampos.h"
 #include <iostream.h>
-#include <fstream.h>
 #include <stdlib.h>
 #include <stdio.h>
 #include <unistd.h>
--- ddd-3.3.1.orig/ddd/rxscan.C
+++ ddd-3.3.1/ddd/rxscan.C
@@ -9258,7 +9258,10 @@
+#if 0
+/* b0rked prototype */
 extern int isatty YY_PROTO(( int ));
--- ddd-3.3.1.orig/ddd/strclass.C
+++ ddd-3.3.1/ddd/strclass.C
@@ -1434,7 +1434,7 @@
     ios::iostate new_state = s.rdstate();
-    int new_state = s.rdstate();
+    ios::iostate new_state = s.rdstate();
     if (i == 0)
        new_state |= ios::failbit;

> What do you need to know to take a reasonable guess at what is going
> wrong?

If the patch doesn't make a difference, your best bet is to do a binary
search for the offending line in the initialisation gcc complains about
using #if 0 ... #endif blocks and then report back to this list which line
is problematic.

Linux is many, many years away from being an enterprise-ready operating
system that can compete with, and challenge, the Windows platform. There is
also no vision or driving force around it.
        Doug Miller, Microsoft Windows Server Group, january 2001

reply via email to

[Prev in Thread] Current Thread [Next in Thread]