Code::Blocks Forums

User forums => Help => Topic started by: Pecan on January 17, 2007, 01:45:50 am

Title: CB ignores one header file
Post by: Pecan on January 17, 2007, 01:45:50 am
My project looks like

\cbKeyMacs
   common cpp files
   common header files
   version.h
  \App  (sub directory)
    KeyMacsApp.cbp
    app.cpp
    app.h
  \Plugin (sub directory)
    KeyMacsPlugin.cbp
    KeyMacs.cpp
    keyMacs.h

Notice that version.h is in the top directory.
It's included by  app.h and keyMacs.h

When I change version.h, CB says there is nothing to be done.

I have "Explicitly Add currently compiling files directory to compiler search dir" check.
I have "Explicitly Add project top level directory to compiler search dirs" check.

What am I overlooking?


I have
Title: Re: CB ignores one header file
Post by: stahta01 on January 17, 2007, 02:01:13 am
Just to suggest the simple thing to verify
Is version.h under the "Headers" when you expand it in C::B?

Is the include using <version.h> or "version.h", if <version.h>
I would try #include "version.h"

Tim S
Title: Re: CB ignores one header file
Post by: Pecan on January 17, 2007, 02:58:41 am
Just to suggest the simple thing to verify
Is version.h under the "Headers" when you expand it in C::B?

Is the include using <version.h> or "version.h", if <version.h>
I would try #include "version.h"

Tim S

version.h is included as #include "version.h"

Curiously enough, there's another header in the same place called debugging.h. It does not have the problem. I change debugging.h and the project re-compiles.

(http://img402.imageshack.us/img402/2136/109xi5.png)
Title: Re: CB ignores one header file
Post by: stahta01 on January 17, 2007, 03:45:34 am
Here's two very long long shots.
Have your verified that the file date is correct when you update it?
Also, is it correct on the files including the .h file?
And, is you system clock correct?

Tim S
Title: Re: CB ignores one header file
Post by: Pecan on January 17, 2007, 04:00:57 am
Here's two very long long shots.
Have your verified that the file date is correct when you update it?
Also, is it correct on the files including the .h file?
And, is you system clock correct?

Tim S

No, clock looks ok, and the file is as follows. Note, it the latest date and time.
(http://img412.imageshack.us/img412/7936/110hl9.png)
Title: Re: CB ignores one header file
Post by: Pecan on January 17, 2007, 04:59:25 am
Here's two very long long shots.
Have your verified that the file date is correct when you update it?
Also, is it correct on the files including the .h file?
And, is you system clock correct?

Tim S

Well, I solved the problem by adding a fake class to the header file and a fake definition of version.

I guess CB only works by checking the .obj files. But I don't understand how debugging.h works when it has nothing but #defines in it.

Another mystery.
Title: Re: CB ignores one header file
Post by: mandrav on January 17, 2007, 08:52:47 am
Pecan, if you think you can create a minimal project demonstrating this, I 'd like to get my hands on it. I 've never seen dependencies misbehaving...
Title: Re: CB ignores one header file
Post by: Pecan on January 17, 2007, 05:45:21 pm
Pecan, if you think you can create a minimal project demonstrating this, I 'd like to get my hands on it. I 've never seen dependencies misbehaving...
Pecan, if you think you can create a minimal project demonstrating this, I 'd like to get my hands on it. I 've never seen dependencies misbehaving...

Find attached testapp2.zip
Upload folder is full. Will upload to Savefile:

http://savefile.com/files/420528
 (http://savefile.com/files/420528)


If you modify version.h, no compile occurs.

I also included debugging.h . This file, when modified in my large project caused a compile. In this small project, it does not. It behaves like version.h

SVN 3482 (msw)
thanks
pecan