Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#44921 closed defect (fixed)

libgpg-error upgrade fails during build phase on leopard (10.5.8) on PowerBook G4 (PPC 7450)

Reported by: zzanderr Owned by: Schamschula (Marius Schamschula)
Priority: Normal Milestone:
Component: ports Version: 2.3.1
Keywords: Cc: udbraumann, ctreleaven (Craig Treleaven), mndavidoff (Monte Davidoff), raramayo (Rodolfo Aramayo), vikingjs@…, ryandesign (Ryan Carsten Schmidt)
Port: libgpg-error

Description

This is probably a duplicate as I accidentally forgot to specify the affected port.

libgpg-error/main.log is attached. I will try deactivating the old libgpg-error, reinstalling and then report the results.

Attachments (1)

main.log (30.3 KB) - added by zzanderr 10 years ago.
libgpg-error main.log

Download all attachments as: .zip

Change History (28)

Changed 10 years ago by zzanderr

Attachment: main.log added

libgpg-error main.log

comment:1 Changed 10 years ago by zzanderr

No, it still fails with the old libgpg-error deactivated, and then attempting fresh install after port clean --all libgpg-error

comment:2 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Has duplicate #44920.

comment:3 Changed 10 years ago by udbraumann

Cc: braumann@… added

Cc Me!

comment:4 in reply to:  1 Changed 10 years ago by udbraumann

Also fails on 10.6.8

comment:5 Changed 10 years ago by Schamschula (Marius Schamschula)

I have reported this issue upstream:

https://bugs.g10code.com/gnupg/issue1712

comment:6 Changed 10 years ago by ctreleaven (Craig Treleaven)

Cc: ctreleaven@… added

Cc Me!

comment:7 Changed 10 years ago by mf2k (Frank Schima)

Cc: mschamschula@… removed
Keywords: upgrade build failure removed
Owner: changed from macports-tickets@… to mschamschula@…

comment:8 in reply to:  5 Changed 10 years ago by udbraumann

Replying to mschamschula@…:

I have reported this issue upstream:

https://bugs.g10code.com/gnupg/issue1712

Any personal guess why 10.5. and 10.6 fail, but 10.7 and 10.8 work?

What I have tried on 10.6.8 is to test all available compilers (apple-gcc, gcc, llvm-gcc, clang) in various versions, but none could handle the lines 825 ff. in gpg-error.h

comment:9 Changed 10 years ago by Schamschula (Marius Schamschula)

A quick inspection of main.log seems to indicate that there is an issue with system header files. More specifically "ssize_t" may not have been declared. Adding

#include <stdlib.h>

to gpg-error.h may solve the issue.

Also see:

https://developer.apple.com/library/mac/documentation/Darwin/Conceptual/64bitPorting/transition/transition.html

Version 1, edited 10 years ago by Schamschula (Marius Schamschula) (previous) (next) (diff)

comment:10 Changed 10 years ago by mndavidoff (Monte Davidoff)

Cc: md14-macports@… added

Cc Me!

comment:11 Changed 10 years ago by zzanderr

I just added #include <stdlib.h> to gpg-error.h before configuring, as mschamschula suggested. Still it fails. Could it possibly require both the editing of the header and an alternate compiler?

leopard 10.5.8 PowerBook G4, PPC 7450 XCode 3.14

comment:12 Changed 10 years ago by raramayo (Rodolfo Aramayo)

Cc Me!

comment:13 Changed 10 years ago by Schamschula (Marius Schamschula)

I just did a bit more digging:

Under OS X 10.9 I find that ssize_t is defined in <sys/types.h>. This may not be the case for the older OS versions. I the back of my mind I remember running into the following patch:

http://notmuchmail.org/pipermail/notmuch/2009/000272.html

which defines ssize_t.

comment:14 Changed 10 years ago by larryv (Lawrence Velázquez)

Cc: raramayo@… added

comment:15 Changed 10 years ago by zzanderr

I understand you to be referring to the file
/usr/include/sys/types.h

On my system, this file contains the lines:

#ifndef _SIZE_T
#define _SIZE_T
/* DO NOT REMOVE THIS COMMENT: fixincludes needs to see
 * _GCC_SIZE_T */
typedef __darwin_size_t         size_t;
#endif

#ifndef _SSIZE_T
#define _SSIZE_T
typedef __darwin_ssize_t        ssize_t;
#endif

I am running leopard (10.5.8) on a PowerBook G4 (PPC 7450)

Last edited 10 years ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:16 Changed 10 years ago by zzanderr

Oops. Sorry about the formatting, I tried to use the code block feature...

comment:17 Changed 10 years ago by Schamschula (Marius Schamschula)

Can you try adding

<sys/types.h>

to gpg-error.h rather than

#include <stdlib.h>

?

comment:18 Changed 10 years ago by vikingjs@…

Cc: vikingjs@… added

Cc Me!

comment:19 Changed 10 years ago by zzanderr

Sorry, adding

#include <sys/types.h>

doesn't work.

comment:20 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign@… added

On my Tiger system, the error I got was basically that off_t was not defined. off_t is defined by the POSIX standard to be defined in sys/types.h. sys/types.h is not included by src/gpg-error.h. Adding #include <sys/types.h> to src/gpg-error.h works for me on Tiger. I'll test on a few other systems before committing.

comment:21 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Resolution: fixed
Status: newclosed

Also fixed the build on Snow Leopard so I committed it in r125206.

comment:22 Changed 10 years ago by zzanderr

Oh, so you added

#include <sys/types.h>

to

gpg-error.h.in

I mistakenly added it to

gpg-error.h

I still don't understand all the in's and out's of makefiles, etc...

comment:23 Changed 10 years ago by zzanderr

By the way, it compiled. Thanks to both of you!

comment:24 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)

Usually, if there is a file foo.in, then the file foo will be generated from it by the process of running ./configure or possibly by running make.

comment:25 Changed 10 years ago by zzanderr

One of these days, hopefully soon, I'm going to read the Gnu Make Manual. Thanks again!

comment:26 in reply to:  25 Changed 10 years ago by larryv (Lawrence Velázquez)

Replying to zanderpower@…:

One of these days, hopefully soon, I'm going to read the Gnu Make Manual.

That won’t tell you about .in files and makefile generation (although you should still read it). You want the Autotools manuals:

comment:27 Changed 10 years ago by zzanderr

Great! This will keep me busy for a while :D

Note: See TracTickets for help on using tickets.