Developer forums (C::B DEVELOPMENT STRICTLY!) > Development

Bug (usability) with custom makefiles and clickable errors

<< < (2/4) > >>

Jenna:

--- Quote from: oBFusCATed on August 11, 2011, 11:06:10 pm ---Are you 100% sure that project->GetExecutionDir() is always non-empty?
If it can be empty, your fix is wrong...

--- End quote ---
project->GetExecutionDir() returns either the projects base-path, or the makefiles execution-dir.
If the base-path is empty, the project is in the root-folder and the fix is correct, if the makefiles execution-dir is empty, it defaults to the projects base-path.

cellulose:
Thanks for the fix!

Calmarius:
I think I'm affected by this bug too. I cannot open source files from the message windows because the file path is wrong. The only workaround is putting symlinks everywhere. The another would be hacking into the makefile but I don't want to do that.

The path CB shows is something like:

<relative path to the makefile>/<relative path to the makefile again><file path which gcc shows>

Was this the bug you fixed? I'm using the CB 10.05 for Linux.

When will the next stable release is planned to come out?

Jenna:

--- Quote from: Calmarius on August 13, 2012, 06:14:20 pm ---I think I'm affected by this bug too. I cannot open source files from the message windows because the file path is wrong. The only workaround is putting symlinks everywhere. The another would be hacking into the makefile but I don't want to do that.

The path CB shows is something like:

<relative path to the makefile>/<relative path to the makefile again><file path which gcc shows>

Was this the bug you fixed? I'm using the CB 10.05 for Linux.

--- End quote ---
Most likely, but without a project where it fails for you, I can not test.


--- Quote from: Calmarius on August 13, 2012, 06:14:20 pm ---When will the next stable release is planned to come out?

--- End quote ---

As soon as possible  ;) .

Depending on the platform you use, there might be nightly (or weekly or whatever) builds, that are normally stable enough for productive work.
I provide packages for debian (that should work on most ubuntu systems) and for Fedora 15-17 and RedHat/CentOS 5 and 6 (sse my sig).


For ubuntu, you can also use pasgui's ppa : https://launchpad.net/~pasgui/+archive/ppa/ .
If you use this, there should not be any compatibility issues, because of differences between debian and ubuntu distros.

Calmarius:

--- Quote ---Most likely, but without a project where it fails for you, I can not test.
--- End quote ---

Reproduction is easy though:

- Download something from a source control which uses a makefile.
- Create an empty project somewhere else. Not under the source control root directory, becuase you do not want to confuse it (frequent use case in practice!)
- In the project properties window, select you want to use a custom makefile.
- Set execution directory respectively.
- Make it and see the warnings.

The makefile does not necessarily invoke CC from the directory you called the makefile (aka makefile may call cd):

Example:

I have a makefile at <vcs root>/build_scripts and I set the working dir path for it.

So CC may say warnings about the blahblah/foo.c which is at <vcs root>/sources/blahblah/foo.c and the makefile is at <vcs root>/build_scripts/makefile.
So the makefile does a cd to the <vcs root>/sources/ directory and start compilation from there.

The problem is, that C::B tries to find out where are the source files, and wants to be clever by thinking it's at <vcs root>/build_scripts/blahblah/foo.c which is incorrect.

So I would like to see and option where I can set explicitly <vcs root>/sources as a search path for the IDE. So when blahblah/foo.c warning comes up the IDE can search it at <vcs root>/sources/blahblah/foo.c. The option should be able to list multiple search directories (for more exotic makefiles...)

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version