Open jimcarreer opened 7 months ago
I don't have that type of Mac either :(.
I think there has been a warning here for a while and it was promoted to an error later on.
I've found success in working around this by installing llvm@15
with homebrew and then following the instructions to add it to the .zshrc. Then clang --version
should show that it's no longer using Apple clang. Using anything later than llvm@15
brings the issue back. This does mean that it's probably not a MacOS/Apple silicone specific issue but a compiler issue and should be reproducable on other machines.
Since espresso seems to be unmaintained, I think that the fix here involves either fixing the C code yourself or using espresso-logic
(https://github.com/classabbyamp/espresso-logic), which brought the code for espresso up to a more modern standard. I checked and espresso-logic does not have this issue - though it still generates warnings.
I think there has been a warning here for a while and it was promoted to an error later on.
I've found success in working around this by installing
llvm@15
with homebrew and then following the instructions to add it to the .zshrc. Thenclang --version
should show that it's no longer using Apple clang. Using anything later thanllvm@15
brings the issue back. This does mean that it's probably not a MacOS/Apple silicone specific issue but a compiler issue and should be reproducable on other machines.Since espresso seems to be unmaintained, I think that the fix here involves either fixing the C code yourself or using
espresso-logic
(https://github.com/classabbyamp/espresso-logic), which brought the code for espresso up to a more modern standard. I checked and espresso-logic does not have this issue - though it still generates warnings.
Yeah I suspected after looking at when the C code was last updated it might have been more a compiler compat issue vs arch. We weren't really using the functionality supported by pyeda very much to begin with so we were looking at deprecating its use in our code base anyway.
Thanks for the tip though, currently we've only run into this issue locally, but if it is a compiler issue it will eventually hit our docker containers.
Same build error with macOS/x86, FWIW.
I encountered the same problem (Fedora 40, GCC version 14.1.1 20240607).
I fixed it for me by passing -Wno-incompatible-pointer-types
to the compiler in setup.py, thus making GCC ignoring this specific warning/error.
EXT_MODULES = [
Extension("pyeda.boolalg.espresso", **ESPRESSO, extra_compile_args=["-Wno-incompatible-pointer-types"]),
Extension("pyeda.boolalg.exprnode", **EXPRNODE),
Extension("pyeda.boolalg.picosat", **PICOSAT),
]
(I didn't open a PR because it seems kinda quick and dirty and because I'm not at all into developing Python modules.)
Same issue here, on M1.
Since espresso is no longer maintained, I would suggest splitting it off, or at least make it an option. As long as someone maintains pyEDA of course.
I would fix the issue, but then where does the fix go?
I believe the 3rd party espresso code included in this library is no longer compatible with clang / xcode being installed on Macs:
The following error occurs when simply trying to install the package via pip:
Details of the machine this is running on:
Note that I do not know if the machine being Apple Silicon is a contributing factor, this may be broken on x86_64 architectures as well, I just don't have a Mac with that kind of chip to test with.