Mailing List picongpu-users@hzdr.de Message #122
From: Khikhlukha Danila <Danila.Khikhlukha@eli-beams.eu>
Subject: RE: configure script acts different when restart
Date: Wed, 12 Oct 2016 13:34:55 +0000
To: picongpu-users@hzdr.de <picongpu-users@hzdr.de>

Dear all,

It looks like I have found a solution although it is not very straightforward and looks more like a workaround. I would still ask you to comment on it a bit. Please refer to the script attached to this email. With this script I was able to compile picongpu binary.

1.       To pick the correct version of g++ I had to show cmake the path to compiler explicitly (export CXX and export CC from the script attached.) Not sure why cmake didn’t pick it up from the PATH, although `which g++` works fine.

2.       Somehow the env var export CPPFLAGS="-std=c++11" from Install manual (mandatory section) doesn’t work. Better to say it changes nothing as I still get an error from the boost library. However when I changed it to “export CXXFLAGS” (line 11) the error about __float128 is gone,  which is expected.

3.       If I do configure && make && make install I receive a message “nvcc fatal   : redefinition of argument 'std'”. It seems like during “make install” stage the binary is being recompiled and std flag is being include to the complier’s command line once again. However configure && make install (line 16) works just fine.

With the script attached I was able to compile the picongpu binary from the 0.2.0 branch.

 

Best regards,

Danila.

 

From: Khikhlukha Danila
Sent: Tuesday, October 11, 2016 11:50 AM
To: picongpu-users@hzdr.de
Subject: configure script acts different when restart

 

Dear all,

I’m not sure if it is a bug or I’m just doing it wrong, so I decided to write here. However I can move this letter to the bug tracker.

 

Configure script acts different when restart in the same build directory. I would consider it as a wrong use model unless it wouldn’t actually do the job J

 

Scenario 1.

Trying to build picongpu from the scratch (makeit script and log_makeit). Compilation fails due to the boost error with __float128. Please notice that although I have explicitly loaded gcc 4.9 version, cmake still thinks that gcc 4.8.5 is used (loading this module from bashrc doesn’t change it).

 

Scenario 2.

I “forget” to provide C++11 flag  (makeit_restart and log_makeit_restart). First compilation fails asking for a C+11 flag. Then I immediately correct my mistake and restart configuration and compilation in the same directory.  This works like a charm. From the log it is evident that somehow after restart a different compiler version was picked. (also note that the build type was changed to a  DEBUG version for some reason.)

 

Scenario 3.

If I clean the build directory before the restart (makeit_restart_remove and log_makeit_restart_remove) it will be the same as Sc.1,  same compiler version and the very same boost error.

 

I checked the CMakeCache.txt between Sc1. and Sc2. before the restart and didn’t find any relevant difference. Could you please advise me how can I fix the Sc.1?

 

Best regards,

Danila.

 

P.S. Please note that I don’t have an access to the boost config file (https://svn.boost.org/trac/boost/ticket/11852)

Subscribe (FEED) Subscribe (DIGEST) Subscribe (INDEX) Unsubscribe Mail to Listmaster