Code::Blocks Forums

User forums => Help => Topic started by: asynchronous13 on August 26, 2009, 07:59:08 pm

Title: Toolchain calling incorrect make excutable [solved]
Post by: asynchronous13 on August 26, 2009, 07:59:08 pm
In my project, I use GCC with an external "make.exe" rather than the default "mingw32-make.exe". I've been using Code::Blocks 8.02 successfully for a long time and just tried to update to one of the nightly builds. I verified in Settings->Compiler and Debugger->Toolchain Executables that the Compiler's Installation Directory is correct and that the make program is listed as "make.exe". (The nightly build used the same configuration settings as 8.02, so I didn't need to change anything).

However, when I compile using CB nightly version, I get this message:

Quote
Running project pre-build steps
mingw32-make -f esim.mak targetos=win32 hostos=win32 dbfiles

It appears that all the settings between the two version of CB are identical, yet CB-8.02 calls make whereas CB-nightly calls mingw32-make. Is there another setting that I might have overlooked that will correct this?

8.02 still works, so I'll keep using that until I can resolve this.

*edited to mark as [solved]*
Title: Re: Toolchain calling incorrect make excutable
Post by: MortenMacFly on August 26, 2009, 09:48:51 pm
tried to update to one of the nightly builds.
If you don't tell which one there is no much help possible. In recent nightlies there was a bugfix that might be related. But I can't tell you if your's is recent enough.
Title: Re: Toolchain calling incorrect make excutable
Post by: Jenna on August 26, 2009, 09:52:44 pm
As MortenMacFly writes, please specify the svn revision of the nightly build, and if possible create a simple test-project where the error occurs, pack it and attach it to the post.
Title: Re: Toolchain calling incorrect make excutable
Post by: asynchronous13 on August 27, 2009, 12:07:51 am
Ah, I was thinking it was just a simple setting that I overlooked. It's SVN 5731, I'll put together a simple project here in a sec ...
Title: Re: Toolchain calling incorrect make excutable [solved, user error]
Post by: asynchronous13 on August 27, 2009, 12:51:42 am
Looks like I get to chalk this one up to user error. The new project I built worked fine, so I started looking at the .cbp files to compare differences. I found a pre-build command that specifically calls mingw32-make -- obviously the source of this error.

Code
<ExtraCommands>
<Add before="mingw32-make -f esim.mak targetos=win32 hostos=win32 dbfiles" />
</ExtraCommands>

According to my svn, this line has been present in the project file since 13-Mar-2008 !!

If I right-click the project, select Build Options->Pre/Post Build Steps sure enough it's there. I didn't notice it before because it's attached to the project name and not one of the build configurations (ie when I looked before, I had the "debug" build configuration selected, in which case the pre-build steps is shown as empty)

In CB-8.02, the pre-build steps window is grayed out, I can't make any changes to the existing command (and the pre-build command that is displayed never actually runs!). In CB-5731, I can modify this line. Now I've changed it to what it should be and all is well again.

Is it known that CB-8.02 doesn't run pre-build commands? This would definitely explain one sporadic error I've witnessed here.
Title: Re: Toolchain calling incorrect make excutable [solved]
Post by: Jenna on August 27, 2009, 09:49:23 am
Is it known that CB-8.02 doesn't run pre-build commands? This would definitely explain one sporadic error I've witnessed here.

Yes, the usage of custom-makefiles was changed/improved.

Pre- and postbuild steps now also get executed, because even when a user wants (needs) to use makefiles a pre or postbuild step might make sense .