Opened 11 years ago
Closed 11 years ago
#40434 closed defect (fixed)
qpopper @4.0.9_0: Build failure: error: conflicting types for 'getline'
Reported by: | maurice@… | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.2.0 |
Keywords: | haspatch lion mountainlion | Cc: | ryandesign (Ryan Carsten Schmidt) |
Port: | qpopper |
Description (last modified by ryandesign (Ryan Carsten Schmidt))
---> Building qpopper Error: org.macports.build for port qpopper returned: command execution failed Please see the log file for port qpopper for details: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_mail_qpopper/qpopper/main.log
:info:build popper.c:153:25: error: conflicting types for 'getline' :info:build char * getline(); :info:build ^ :info:build /usr/include/stdio.h:449:9: note: previous declaration is here :info:build ssize_t getline(char ** __restrict, size_t * __restrict, FILE * __restrict) __OSX_AVAILABLE_STARTING(__MAC_10_7, __IPHONE_4_3); :info:build ^ :info:build popper.c:428:2: error: conflicting types for 'getline' :info:build *getline ( char *str, int size, POP *pPOP ) :info:build ^ :info:build /usr/include/stdio.h:449:9: note: previous declaration is here
Problem appears to be that qpopper redefines getline and clang does not permit this. The fix appears to be cd
Attachments (1)
Change History (5)
Changed 11 years ago by maurice@…
Attachment: | patch-popper.c added |
---|
comment:1 Changed 11 years ago by maurice@…
Apologies for the worst bug report I have ever submitted ... the problem is that qpopper redefines cline and clang does not allow this. The solution is to add:
#define getline localgetline
in the popper/popper.c file.
A patch file is included to do this patch, but it will also need to be added to the patchfiles line in the Portfile
comment:2 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Description: | modified (diff) |
---|---|
Keywords: | haspatch lion mountainlion added; qpopper removed |
Port: | qpopper added |
Summary: | qpopper @4.0.9_0 - Compile error - Build failure → qpopper @4.0.9_0: Build failure: error: conflicting types for 'getline' |
comment:3 follow-up: 4 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|
Replying to maurice@…:
Problem appears to be that qpopper redefines getline and clang does not permit this.
It's not a compiler issue; it's an OS issue. OS X 10.7 Lion for the first time includes a function called "getline", but qpopper defines its own function of that name, and it happens to be different from the one in Lion, hence the error message. The fix we usually employ in other ports is to rename the project's getline function. In this case, qpopper is outdated, so I'll check if updating to the latest version would help.
comment:4 Changed 11 years ago by ryandesign (Ryan Carsten Schmidt)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Replying to ryandesign@…:
qpopper is outdated, so I'll check if updating to the latest version would help.
Yes it does. This specific problem was fixed in qpopper 4.1.b18. Updated the port to 4.1.0 in r111330.
Patch file to be added to ports/mail/qpopper/files