Opened 3 months ago

Last modified 3 weeks ago

#61483 accepted defect

neon @0.30.2: configure failure due to implicit declaration of functions

Reported by: AP1010 Owned by: ryandesign (Ryan Schmidt)
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: catalina bigsur Cc: jungx098, ShadSterling (Shad Sterling), jboydon (John Boydon), michaellass (Michael Lass)
Port: neon

Description

configure stage fails with:

...
checking for library containing socket... not found
configure: error: could not find library containing socket
...

Attachments (2)

main.log (98.0 KB) - added by AP1010 3 months ago.
config.log (81.9 KB) - added by AP1010 3 months ago.

Download all attachments as: .zip

Change History (18)

comment:1 Changed 3 months ago by mf2k (Frank Schima)

Keywords: socket removed

comment:2 Changed 3 months ago by ryandesign (Ryan Schmidt)

Could be the ubiquitous implicit declaration of function error. Please attach the config.log.

Changed 3 months ago by AP1010

Attachment: main.log added

comment:3 Changed 3 months ago by AP1010

Logs added

Last edited 3 months ago by AP1010 (previous) (diff)

Changed 3 months ago by AP1010

Attachment: config.log added

comment:4 Changed 3 months ago by AP1010

Indeed, it does seem to be the "implicit declaration invalid in C99 issue". The port builds with configure.compiler=macports-clang-9.0

comment:5 in reply to:  4 Changed 3 months ago by Tatsh (Andrew Udvare)

Replying to AP1010:

Indeed, it does seem to be the "implicit declaration invalid in C99 issue". The port builds with configure.compiler=macports-clang-9.0

Also works with macports-clang-11.

comment:6 Changed 2 months ago by jungx098

Cc: jungx098 added

comment:7 Changed 8 weeks ago by ShadSterling (Shad Sterling)

Cc: ShadSterling added

comment:8 Changed 8 weeks ago by jungx098

The root cause is that clang 12 enables -Werror by default. Not sure if Apple will roll back this feature.

One workaround is to add -Wno-error=all to CFLAGS.

I made a quick patch: https://github.com/macports/macports-ports/compare/master...jungx098:neon

comment:9 in reply to:  8 Changed 7 weeks ago by kencu (Ken)

Replying to jungx098:

The root cause is that clang 12 enables -Werror by default. Not sure if Apple will roll back this feature.

I don't think it's a blanket -Werror, but they do generate an error on implicit function definitions, by default, as of Xcode12.

One workaround is to add -Wno-error=all to CFLAGS.

Turning off the error can be done more specifically for that error as well, or you can build with a non-Apple clang compiler like macports-clang-10, however apparently if you fix the build that way, it remains broken on all the new Apple Silicon machines, that require a proper header and a proper function definition for every function.

So MacPorts is not accepting the fix of turning off the error or building with a non-Apple clang compiler as a fix for this issue, as we'll all just have to come right back to this same issue again in a few months and fix it properly anyway.

As a fix for your own personal system, no problem of course -- it's your system, you can do anything you want with it!

comment:10 Changed 7 weeks ago by kencu (Ken)

comment:11 in reply to:  10 Changed 7 weeks ago by jungx098

Replying to kencu:

See this message for many gory details <https://lists.macports.org/pipermail/macports-dev/2020-November/042648.html>

Thanks for the details. It feels like non-trivial.

comment:12 Changed 5 weeks ago by mf2k (Frank Schima)

Cc: jboydon added

Has duplicate #62076.

comment:13 Changed 5 weeks ago by jboydon (John Boydon)

I am struggling with neon installation. Can someone tell me the proper way to specify CFLAGS=-Wno-error=all in the command line?

I have tried with the following without success:

sudo port -v install configure.cflags="-Wno-error=all"
sudo port -v install configure.cflags-append="-Wno-error=all"

Thanks

john

comment:14 Changed 5 weeks ago by sdguip

Compiled with success:

sudo port install neon configure.cflags=-Wno-error=all

comment:15 Changed 5 weeks ago by michaellass (Michael Lass)

Cc: michaellass added

comment:16 Changed 3 weeks ago by ryandesign (Ryan Schmidt)

Keywords: catalina bigsur added
Owner: set to ryandesign
Status: newaccepted
Summary: neon @0.30.2 does not build on Big Sur (11.0.1)neon @0.30.2: configure failure due to implicit declaration of functions

After an unsuccessful initial attempt to fix it myself, I've reported the problem to the developers.

Note: See TracTickets for help on using tickets.