-
-
Notifications
You must be signed in to change notification settings - Fork 419
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix building ponyc on DragonFly BSD #3676
Conversation
* LLVM on DragonFly does not ship with `libatomic`; it has to be installed manually via `pkg ins cxx_atomics`. * Note that ponyc has to be build with gcc as `stdatomic.h` from `cxx_atomics` fails to work with LLVM (in a prior attempt I tried to compile ponyc with LLVM). * Pass `-latomic` to the linker when targeting DragonFly. Also add `-L/usr/local/cxx_atomics` as search path. * Until a new version of `google/benchmark` is released, you'll need [the patch from this PR][1] and apply it to `gbenchmark` to build ponyc. [1]: google/benchmark#1058
Does you gcc comment mean it wouldn't build with clang on dragonfly? Is there clang for dragonfly? |
@SeanTAllen Yes, it does not build with clang. If you try to (by setting env CC=clang10 CXX=clang++10), you'll get tons of these error messages:
This seems to be an issue with clang itself. Does this work on FreeBSD? |
@SeanTAllen It actually compiles with LLVM/clang, but not with the I once got it to compile with LLVM (https://github.com/mneumann/ponyc/tree/dragonfly-fix-compile), but that was rather a hack. I will ask the maintainer of the |
Thanks @mneumann. |
Hi @mneumann, The changelog - fixed label was added to this pull request; all PRs with a changelog label need to have release notes included as part of the PR. If you haven't added release notes already, please do. Release notes are added by creating a uniquely named file in the The basic format of the release notes (using markdown) should be:
Thanks. |
@mneumann if you have time to add release notes to this, that would be great. otherwise i will merge later this week and add release notes myself. |
Release notes added. |
Thanks @mneumann |
LLVM on DragonFly does not ship with
libatomic
; it has to be installedmanually via
pkg ins cxx_atomics
.Note that ponyc has to be build with gcc as
stdatomic.h
fromcxx_atomics
fails to work with LLVM (in a prior attempt I tried tocompile ponyc with LLVM).
Pass
-latomic
to the linker when targeting DragonFly. Also add-L/usr/local/cxx_atomics
as search path.Until a new version of
google/benchmark
is released, you'll needthe patch from this PR and apply it to
gbenchmark
to buildponyc.
Superseeds: #3654 (which on it's own, never worked)