include file search sequence
-
I downloaded the Apache Portable Runtime for windows. It included a VC6 solution and project definitions. I loaded the soultion with Visual Studio 2005 and it successfully converted the solution and project to the new format. I can compile the code with the converted solution. I decided to create a new solution from scratch. But when I compile my solution it finds the wrong include file. In my configuration I specify an include search string of: ".\include; .\include\arch; .\include\arch\win32; .\include\arch\unix" The include in question, "apr_arch_file_io.h", exists in the "win32" and "unix" directories. but the compiler loads the one in the "unix" directory. I do not understand why the converted solution works and mine does not. If I remove the include from the "unix" directory then my solution compiles cleanly. Any thoughts as to what configuration option I have to set to my solution to work. I have looked at the converted project defintions but nothing obvious stands out. Thanks for any help James Johnson
-
I downloaded the Apache Portable Runtime for windows. It included a VC6 solution and project definitions. I loaded the soultion with Visual Studio 2005 and it successfully converted the solution and project to the new format. I can compile the code with the converted solution. I decided to create a new solution from scratch. But when I compile my solution it finds the wrong include file. In my configuration I specify an include search string of: ".\include; .\include\arch; .\include\arch\win32; .\include\arch\unix" The include in question, "apr_arch_file_io.h", exists in the "win32" and "unix" directories. but the compiler loads the one in the "unix" directory. I do not understand why the converted solution works and mine does not. If I remove the include from the "unix" directory then my solution compiles cleanly. Any thoughts as to what configuration option I have to set to my solution to work. I have looked at the converted project defintions but nothing obvious stands out. Thanks for any help James Johnson
One thought only: look at the preprocessor directives for the converted project and in the code. When cross platform code is involved you normally insert ‘#ifdef’ statements in the code to specify which platform you are compiling for.
INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra