ICC can't open header file? (Catastrophic Error)

ICC can't open header file? (Catastrophic Error)

Alex K.'s picture

Hi there,

I've got an issue when compiling Mozilla (64-Bit) where it cannot find a specific header file even though it is present and all the other header files are being found in that directory:

c:/Users/Alex/Downloads/mozilla-beta/media/webrtc/trunk/webrtc/system_wrappers/source/critical_section_win.h(15): catastrophic error: cannot open source file "webrtc/system_wrappers/interface/critical_section_wrapper.h"

  #include "webrtc/system_wrappers/interface/critical_section_wrapper.h"

I've attached the complete log file, and the relevant files. I've made sure that UAC is disabled, that the file has all access permissions and that the linker has been pointed to the directory, but I still get the error and I'm confused as to why.

Other info:

  • Building on Windows 7 x64, ICC 14 Beta (Same occured with ICC 13) and MSVC10.

I'm not sure if the issue is with ICC but I can't find another reason why this would occur.

8 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.
Sergey Kostrov's picture

>>...I've made sure that UAC is disabled, that the file has all access permissions and that the linker has been
>>pointed to the directory...

Linkers don't use and don't process header files and I'm confident that you're dealing with a path issue. If Intel C++ compiler would have a problem with finding header files it would be a really serious problem. It would instantly create compilation problems for thousands developers.

Alex K.'s picture

Quote:

Sergey Kostrov wrote:

>>...I've made sure that UAC is disabled, that the file has all access permissions and that the linker has been
>>pointed to the directory
...

Linkers don't use and don't process header files and I'm confident that you're dealing with a path issue. If Intel C++ compiler would have a problem with finding header files it would be a really serious problem. It would instantly create compilation problems for thousands developers.

Sorry I meant the compiler (was looking for any linker errors at the time which is why).
And I'm sure it's an error to do with me, but was wondering why this is the only header file being affected.

Jennifer J. (Intel)'s picture

It seems an env issue.

did you try msvc? does it build ok?

Jennifer

Sergey Kostrov's picture

I reviewed source files in zip-files and it looks like something is wrong with source folder:

[ critical_section_win.cc ]
...
#include "webrtc/system_wrappers/source/critical_section_win.h"
...

There are No any compilation errors with the following piece of codes, right?

[ critical_section_win.h ]
...
#include "webrtc/typedefs.h"
#include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
#include
...

And I "bolded" differences in paths.

Melanie Blower (Intel)'s picture

I've reproduced the failure, it's being tracked in DPD200245228. (cl.exe can compile it). Still investigating...

Melanie Blower (Intel)'s picture

From within the directory where compilation occurs, obj-i686-pc-mingw32/media/webrtc/trunk/webrtc/system_wrappers/source/system_wrappers_system_wrappers, fopen fails when trying to open the header file named ../../../../../../../../media/webrtc/trunk/webrtc/system_wrappers/source/../../../webrtc/system_wrappers/interface/critical_section_wrapper.h

The Windows utility icacls also complains about that file:  
../../../../../../../../media/webrtc/trunk/webrtc/system_wrappers/source/../../.
./webrtc/system_wrappers/interface/critical_section_wrapper.h: The system cannot
find the path specified.

Interestingly, other header files in that directory can be opened using the same Path. As a workaround, is there anyway you could hack the Mozilla build system so it didn't use such complicated names e.g. simplify the -I include path to eliminate strings like this: webrtc/system_wrappers/source/../../..

This is just a workaround suggestion, not a final solution

bob j.'s picture

just a stab in the dark have you try disable that feature could it be simple as a direct path to file ??

c:/Users/Alex/Downloads/mozilla-beta/media/webrtc/trunk/webrtc/system_wrappers/source/critical_section_win.h

#include "webrtc/system_wrappers/interface/critical_section_wrapper.h" change to #include "c:/Users/Alex/Downloads/mozilla-beta/media/webrtc/trunk/webrtc/system_wrappers/interface/critical_section_wrapper.h"

like said stab in the dark :)

Login to leave a comment.