Subject: Re: strange compiler error for security/putty on Darwin
To: Georg Schwarz <georg.schwarz@freenet.de>
From: Mark E. Perkins <perkinsm@bway.net>
List: pkgsrc-users
Date: 10/29/2006 06:11:14
On 2006/10/29 03:49, Georg Schwarz wrote:
> Compiling security/putty on MacOS 10.4.8 (PPC) I end up like this:
> 

<snip>

> 
> I'm using the following cc:
> 
> powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. build
> 5363)
> 
> 
> What's the situation like on other platforms?

Dunno about other platforms, but on Darwin this appears to be (at least
partly) a gcc4 problem (I also have 4.0.1).  Switching to gcc3.3 gets past the
error you saw, but eventually ends up with the error shown at the end of this
message.

Looking in work/putty-0.58/macosx/osx.h (which is for an Aqua-based build), I
see that OMIT_UTMP is defined.  So the following patch to Makefile, along with
using gcc3.3, builds successfully (and runs at least as far as presenting
putty's opening screen, which is as far as I tried....).


--- Makefile.orig       2006-09-09 06:36:03.000000000 -0400
+++ Makefile    2006-10-29 05:45:01.000000000 -0500
@@ -25,7 +25,7 @@
 CFLAGS+=       -DIPV6
 .endif

-.if !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly"
+.if !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly" || ${OPSYS} == "Darwin"
 CFLAGS+=       -DOMIT_UTMP
 .endif


Cheers,
Mark


usr/include -Wall -Werror -I.././ -I../charset/ -I../windows/ -I../unix/
-I../mac/ -I../macosx/ `gtk-config --cflags` -c ../unix/uxpty.c
../unix/uxpty.c: In function `setup_utmp':
../unix/uxpty.c:192: structure has no member named `ut_type'
../unix/uxpty.c:192: `USER_PROCESS' undeclared (first use in this function)
../unix/uxpty.c:192: (Each undeclared identifier is reported only once
../unix/uxpty.c:192: for each function it appears in.)
../unix/uxpty.c:193: structure has no member named `ut_pid'
../unix/uxpty.c:195: structure has no member named `ut_id'
../unix/uxpty.c:195: structure has no member named `ut_id'
../unix/uxpty.c:195: structure has no member named `ut_id'
../unix/uxpty.c:196: structure has no member named `ut_user'
../unix/uxpty.c:196: structure has no member named `ut_user'
../unix/uxpty.c:196: structure has no member named `ut_user'
cc1obj: warnings being treated as errors
../unix/uxpty.c:204: warning: implicit declaration of function `utmpname'
../unix/uxpty.c:205: warning: implicit declaration of function `setutent'
../unix/uxpty.c:206: warning: implicit declaration of function `pututline'
../unix/uxpty.c:207: warning: implicit declaration of function `endutent'
../unix/uxpty.c: In function `cleanup_utmp':
../unix/uxpty.c:239: structure has no member named `ut_type'
../unix/uxpty.c:239: `DEAD_PROCESS' undeclared (first use in this function)
../unix/uxpty.c:240: structure has no member named `ut_user'
../unix/uxpty.c:240: structure has no member named `ut_user'
../unix/uxpty.c:240: structure has no member named `ut_user'
gnumake: *** [uxpty.o] Error 1
*** Error code 2