Gordon Jess
2017-03-01 11:30:34 UTC
I am having issues with strange file paths when parsing c file in distcc's
pump-mode (distcc's plain mode works just fine).
I'm running on Cygwin64, in a system with also uses both CMake and Ninja.
The compiler is not GCC.
I have tried tracing the issue in the source but the indexing of paths is
rather complicated and I hoped someone more familiar with it can offer some
hints/tips as to what the problem may be. As a user I cannot spend too
much time patching code to suit me.
The error messages I receive are in the format:
WARNING include server: Preprocessing locally. Include server not covering:
Parse file: '/cygdrive/c/*<project base>*/*<path to build.ninja directory>*
/C:\*<project base>*\*<path to source>*\example.c': [Errno 2] No such file
or directory: '/cygdrive/c/*<project base>*/*<path to build.ninja
directory>*/C:\\*<project base>*\\*<path to source>*\\example.c' for
translation unit 'C:\*<project base>*\*<path to source>*\example.c'
(*<path to build.ninja directory>* is also the base for the output files)
I should also mention that I made 1 modification to include_server:
In "compiler_defaults.py", function "_SystemSearchdirsGCC":
Removed the function body as it only works for GCC, and replaced with a
single path to the compilers default include path.
Any suggestions are much appreciated.
Thanks in advance!
pump-mode (distcc's plain mode works just fine).
I'm running on Cygwin64, in a system with also uses both CMake and Ninja.
The compiler is not GCC.
I have tried tracing the issue in the source but the indexing of paths is
rather complicated and I hoped someone more familiar with it can offer some
hints/tips as to what the problem may be. As a user I cannot spend too
much time patching code to suit me.
The error messages I receive are in the format:
WARNING include server: Preprocessing locally. Include server not covering:
Parse file: '/cygdrive/c/*<project base>*/*<path to build.ninja directory>*
/C:\*<project base>*\*<path to source>*\example.c': [Errno 2] No such file
or directory: '/cygdrive/c/*<project base>*/*<path to build.ninja
directory>*/C:\\*<project base>*\\*<path to source>*\\example.c' for
translation unit 'C:\*<project base>*\*<path to source>*\example.c'
(*<path to build.ninja directory>* is also the base for the output files)
I should also mention that I made 1 modification to include_server:
In "compiler_defaults.py", function "_SystemSearchdirsGCC":
Removed the function body as it only works for GCC, and replaced with a
single path to the compilers default include path.
Any suggestions are much appreciated.
Thanks in advance!