Opened 13 years ago
Closed 13 years ago
#32044 closed defect (fixed)
socat not building on Lion
Reported by: | dave@… | Owned by: | md@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.3 |
Keywords: | clang | Cc: | ryandesign (Ryan Carsten Schmidt), hmijail (Horacio Mijail Antón Quiles), drkp (Dan Ports) |
Port: | socat |
Description
See attached log
Attachments (1)
Change History (9)
Changed 13 years ago by dave@…
comment:1 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|---|
Keywords: | clang added |
Owner: | changed from macports-tickets@… to md@… |
comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
There's also a patch in that ticket you could try.
comment:3 Changed 13 years ago by hmijail (Horacio Mijail Antón Quiles)
Found the same problem. Tried changing the Portfile to use the new socat 1.7.2.0, which seems to include Lion-specific bugfixes, but the problem remained. But using the "sudo port clean socat ; sudo port -d install socat configure.compiler=llvm-gcc-4.2" fixed it. The resulting binary seems to behave acceptably in the test.sh testing script included in the socat source tarball.
I have sent this information to the socat developers too.
comment:5 Changed 13 years ago by hmijail (Horacio Mijail Antón Quiles)
The socat developer answered that this is indeed a bug. He doesn't explicitly support any compiler apart from gcc, though there is some compatibility fallback; and this fallback was absent in the file which failed to compile, xioexit.c :
@@ -5,6 +5,7 @@ /* this file contains the source for the extended exit function */ #include "xiosysincludes.h" +#include "compat.h" #include "xio.h"
I just tried it and works with clang.
The socat developer doesn't seem to plan to publish an official bugfix soon. So, now I have a question. How should I make a Portfile? I already did one for socat 1.7.2 + llvm-gcc-4.2.2 (#32698). But maybe it would be better to add this patch and use the standard clang instead?
comment:6 Changed 13 years ago by hmijail (Horacio Mijail Antón Quiles)
Following ryandesign's suggestions, I created a new Portfile at #32968 which does not set the compiler but patches the buggy file.
comment:7 Changed 13 years ago by hmijail (Horacio Mijail Antón Quiles)
(sorry, that should be #32698)
comment:8 Changed 13 years ago by drkp (Dan Ports)
Cc: | dports@… added |
---|---|
Resolution: | → fixed |
Status: | new → closed |
See #32698 and r88706/r88707.
The log is not complete, but I see you're using clang. Perhaps socat doesn't like clang. Have you tried using llvm-gcc-4.2? That may not work either; you may then get the problem in #30317. In that case, try compiling with apple-gcc42. Let us know what works so we can fix the port.