Skip to content
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 990 / Compilation issues with C++11 and libc++ #993

Merged
merged 4 commits into from Aug 3, 2018

Conversation

@heplesser
Copy link
Contributor

@heplesser heplesser commented Aug 2, 2018

Note that the issues fixed here do not occur with gcc and libstdc++, they only occur with LLVM/Clang compilers using libc++ in C++11 mode and with some other compilers that do not use libstdc++.

@heplesser
Copy link
Contributor Author

@heplesser heplesser commented Aug 2, 2018

@ikitayama @carlosengutierrez This PR should solve the operator=() compilation issues with C++11/libc++. Could you check?

@ikitayama
Copy link

@ikitayama ikitayama commented Aug 2, 2018

@heplesser the build's been going smoothly (97% done), as you know the Fujitsu toolchain takes couples of hours to complete build, so I'll let you know when it's done around midnight here.
I'm a SLI person, so Carlos should check his PyNEST build himself.

Copy link
Contributor

@hakonsbm hakonsbm left a comment

Looks good to me, and compiles and runs without problems using both Clang-6.0 and GCC-8 with -std=c++11.

@ikitayama
Copy link

@ikitayama ikitayama commented Aug 2, 2018

confirmation (including make installcheck) will be done sometime tomorrow.

@ikitayama
Copy link

@ikitayama ikitayama commented Aug 3, 2018

@carlosengutierrez are you finished building the 5g branch with FCC natively? Here it's been running for 2 hours, but still going.

@carlosengutierrez
Copy link

@carlosengutierrez carlosengutierrez commented Aug 3, 2018

Hi @ikitayama ,
I am trying to build the branch -->> heplesser:fix-990-c++11-issues (that is the branch to test, right?)
I have to install it by interactive jobs, last night I could reach 97% but connection was broken, now trying again.
Thanks, C.

@ikitayama
Copy link

@ikitayama ikitayama commented Aug 3, 2018

You could use screen so that your build job don't get terminated.

@ikitayama
Copy link

@ikitayama ikitayama commented Aug 3, 2018

@heplesser the cross build with FCC with the -DCMAKE_CXX_FLAGS="-Xg -std=c++11" on the frontend of K computer successfully finished. Took about 3 hours.

@heplesser
Copy link
Contributor Author

@heplesser heplesser commented Aug 3, 2018

@ikitayama Excellent, thank you!

@heplesser
Copy link
Contributor Author

@heplesser heplesser commented Aug 3, 2018

I have added another commit, which automatically includes the -std=c++11 compiler flag to CMAKE_CXX_FLAGS before all other flags are processed. This flag appears to be standard for all compilers I checked (gcc, clang, intel, xlc, pgi, fujitsu). While gcc will compile NEST with c++11 features even without this flag, other compilers need it to accept C++11 features.

@suku248
suku248 approved these changes Aug 3, 2018
Copy link
Contributor

@suku248 suku248 left a comment

Alright then, I guess this is ready to be merged.
Thanks @heplesser for solving this issue and thanks @ikitayama and @carlosengutierrez for testing!

@heplesser heplesser merged commit a2812db into nest:master Aug 3, 2018
1 check passed
1 check passed
continuous-integration/travis-ci/pr The Travis CI build passed
Details
@heplesser heplesser deleted the heplesser:fix-990-c++11-issues branch Aug 3, 2018
@carlosengutierrez
Copy link

@carlosengutierrez carlosengutierrez commented Aug 8, 2018

@heplesser I could compile the updated nest master branch. PYNEST is running.

@heplesser
Copy link
Contributor Author

@heplesser heplesser commented Aug 8, 2018

@carlosengutierrez Excellent, thank you for testing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

5 participants