-
Notifications
You must be signed in to change notification settings - Fork 371
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 #74 osx clang problems #732
Conversation
…avoid warnings when building static libraries.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
Tested locally in XCode clang version 3.6.2 & Apple LLVM version 8.0.0 (clang-800.0.42.1), all tests seem to pass now.
Working on macOS 10.12.5 (16F73) I test some compilers for the default configurations. Seems good so far - all are building and tests are passing. There are some compiler warnings, though:
and
Apple-clang:» clang --version
Apple LLVM version 8.1.0 (clang-802.0.42)
Target: x86_64-apple-darwin16.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin Configuration:
Builds and all tests are passing. 👍. GCC» gcc-7 --version
gcc-7 (Homebrew GCC 7.1.0) 7.1.0 Configuration:
Builds and all tests are passing. 👍 Homebrew Clang» /usr/local/opt/llvm/bin/clang --version
clang version 4.0.0 (tags/RELEASE_400/final)
Target: x86_64-apple-darwin16.6.0
Thread model: posix
InstalledDir: /usr/local/opt/llvm/bin Configuration
Builds and all tests are passing. 👍 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nicely done! 👍
@tammoippen The compiler warnings are addressed by #729 --- feel free to approve :)! |
This PR fixes problems that made NEST fails when built with Clang under OSX. I have tested with everything (except MPI) enabled under OSX 10.12.5 with Clang 4.0.0 from brew as described here (but with Python).
Problems where of several kinds:
Name
objects in nestkernel and topology prevented linking; the duplicates are removed fromtopology_names.*
.ctermid()
system function call fromsli/processes.cc
was called with an incorrectly sized output buffer.recording_device.*
were not set up properly.lockPTRDatum
types are required to make these Datum types visible to PyNEST; clang and gcc seem to have different rules on symbol visibility.I have tested with clang and gcc 7.1.0.