Re: What is *.cpp.d, and why is it breaking my compilations?

2016-10-19 Thread Jeffrey Kinross

.d files are generated dependency files.

http://scottmcpeak.com/autodepend/autodepend.html

https://www.gnu.org/software/make/manual/html_node/Automatic-Prerequisites.html

Your Ninja build is probably not generating these, (config issue?).

Jeff



On 10/18/2016 11:58 AM, Jarle Aase wrote:

Just a few observations:

 1) Both ninja and Unix Makefiles works if I use cmake on the 
command-line


 2) Kdevelop successfully compiles the project if I use Unix Makefiles 
for cmake in stead of Ninja.


So the problem seems related with Ninja. However, it would still be 
interesting to understand why it is failing.



Alll the best,

Jarle


Den 18. okt. 2016 19:44, skrev Jarle Aase:

Hi fellow developers,

After upgrading Debian Testing a few weeks ago, some of my pet 
projects could no longer build. They are all C++ projects, using 
CMake. I use Kdevelop as my IDE. I waited a while and upgraded again 
today, hoping that the problem would be gone. Unfortunately it was not.


For example (from: https://github.com/jgaa/restc-cpp):

~$ src/restc-cpp/dbuild> /usr/bin/ninja
[6/15] Building CXX object 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o

FAILED: src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o
/usr/bin/c++   -D__USE_FILE_OFFSET64=1 -D__USE_LARGEFILE64=1 
-I../include -I../externals/rapidjson/include -g -DDEBUG=1 -D_DEBUG=1 
-o0 -g-Wall -fPIC -std=c++14 -pthread -MD -MT 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -MF 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o.d -o 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -c 
../src/ConnectionPoolImpl.cpp
cc1plus: fatal error: 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.d: No such file 
or directory

compilation terminated.

This project used to compile fine with Debian Stable, Debian Testing, 
Ubuntu LTS, Suse and even Microsoft Windows.


If someone here has already stumbled into this problem and know how 
to fix it, please tell me how. I'm eager to move my projects forward :)


All the best,

Jarle







Re: What is *.cpp.d, and why is it breaking my compilations?

2016-10-19 Thread Johann Klammer
On 10/18/2016 06:50 PM, Jarle Aase wrote:
> Hi fellow developers,
> 
> After upgrading Debian Testing a few weeks ago, some of my pet
> projects could no longer build. They are all C++ projects, using
> CMake. I use Kdevelop as my IDE. I waited a while and upgraded again
> today, hoping that the problem would be gone. Unfortunately it was
> not.
> 
> For example (from: https://github.com/jgaa/restc-cpp):
> 
> ~$ src/restc-cpp/dbuild> /usr/bin/ninja [6/15] Building CXX object
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o FAILED:
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o /usr/bin/c++
> -D__USE_FILE_OFFSET64=1 -D__USE_LARGEFILE64=1 -I../include
> -I../externals/rapidjson/include -g -DDEBUG=1 -D_DEBUG=1 -o0 -g
> -Wall -fPIC -std=c++14 -pthread -MD -MT
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -MF
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o.d -o
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -c
> ../src/ConnectionPoolImpl.cpp cc1plus: fatal error:
> src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.d: No such file
> or directory compilation terminated.
> 
> This project used to compile fine with Debian Stable, Debian Testing,
> Ubuntu LTS, Suse and even Microsoft Windows.
> 
> If someone here has already stumbled into this problem and know how
> to fix it, please tell me how. I'm eager to move my projects forward
> :)
> 
> All the best,
> 
> Jarle
dependency file...

'-MF FILE'
 When used with '-M' or '-MM', specifies a file to write the
 dependencies to.  If no '-MF' switch is given the preprocessor
 sends the rules to the same place it would have sent preprocessed
 output.

 When used with the driver options '-MD' or '-MMD', '-MF' overrides
 the default dependency output file.

it sends to *.o.d
but it seems to want *.d



Re: What is *.cpp.d, and why is it breaking my compilations?

2016-10-18 Thread Jarle Aase

Just a few observations:

 1) Both ninja and Unix Makefiles works if I use cmake on the command-line

 2) Kdevelop successfully compiles the project if I use Unix Makefiles 
for cmake in stead of Ninja.


So the problem seems related with Ninja. However, it would still be 
interesting to understand why it is failing.



Alll the best,

Jarle


Den 18. okt. 2016 19:44, skrev Jarle Aase:

Hi fellow developers,

After upgrading Debian Testing a few weeks ago, some of my pet 
projects could no longer build. They are all C++ projects, using 
CMake. I use Kdevelop as my IDE. I waited a while and upgraded again 
today, hoping that the problem would be gone. Unfortunately it was not.


For example (from: https://github.com/jgaa/restc-cpp):

~$ src/restc-cpp/dbuild> /usr/bin/ninja
[6/15] Building CXX object 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o

FAILED: src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o
/usr/bin/c++   -D__USE_FILE_OFFSET64=1 -D__USE_LARGEFILE64=1 
-I../include -I../externals/rapidjson/include -g -DDEBUG=1 -D_DEBUG=1 
-o0 -g-Wall -fPIC -std=c++14 -pthread -MD -MT 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -MF 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o.d -o 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.o -c 
../src/ConnectionPoolImpl.cpp
cc1plus: fatal error: 
src/CMakeFiles/restc-cpp.dir/ConnectionPoolImpl.cpp.d: No such file or 
directory

compilation terminated.

This project used to compile fine with Debian Stable, Debian Testing, 
Ubuntu LTS, Suse and even Microsoft Windows.


If someone here has already stumbled into this problem and know how to 
fix it, please tell me how. I'm eager to move my projects forward :)


All the best,

Jarle