News:

Accounts with zero posts and zero activity during the last months will be deleted periodically to fight SPAM!

Main Menu

Issue with switching compilers

Started by ironhead, July 30, 2011, 03:27:15 PM

Previous topic - Next topic

ironhead

I've run in to an issue with switching between mingw-w64 and mingw.org compilers in the same instance of Code::Blocks.  The steps to reproduce are simple:

  • Open a .cbp file that uses the mingw-w64 compiler for the project
  • Close that project
  • Using the same instance of Code::Blocks open a .cbp file that uses the mingw.org compiler
  • An error box will pop-up titled "cc1plus.exe - System Error" that states the program can't start because libgmp-10.dll is missing from your computer
  • Clicking 'OK' will just pop-up the dialogue again
  • The only way to get rid of the pop-up is to kill the codeblocks.exe process

The issue also occurs if you perform the steps in the opposite order (opening the mingw.org based project, close it, open the mingw-w64 based project).

At a total guess, code completion is somehow mixing the compilers?

ollydbg

Quote from: ironhead on July 30, 2011, 03:27:15 PM
At a total guess, code completion is somehow mixing the compilers?
Did you think it's CC's problem?

QuoteAn error box will pop-up titled "cc1plus.exe - System Error" that states the program can't start because libgmp-10.dll is missing from your computer
This happens when the second .cbp is loading?

Edit:
which version of CB did you use?
I do not have a Win64 system/Win64 compiler, so I do not have the test environment. :D all above was from my guess.


If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.

oBFusCATed

ironhead: disable the CC and see if the problem is still there. I vote to for a CC problem (I could be wrong of course:) ).
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

ironhead

Quote from: ollydbg on July 30, 2011, 03:41:33 PM
Quote from: ironhead on July 30, 2011, 03:27:15 PM
At a total guess, code completion is somehow mixing the compilers?
Did you think it's CC's problem?

I had assumed so, but it was a bad assumption.  With CC disabled I still ran in to the issue, so it's not CC related I guess.

Quote
QuoteAn error box will pop-up titled "cc1plus.exe - System Error" that states the program can't start because libgmp-10.dll is missing from your computer
This happens when the second .cbp is loading?

Correct.

QuoteEdit:
which version of CB did you use?

The latest nightly (7289).

Is there anything more I can do to provide further logging in C::B to help determine the issue?

oBFusCATed

You can attach the debugger and paste a backtrace:)

(if you're brave enough you can build c::b yourself :))
(most of the time I ignore long posts)
[strangers don't send me private messages, I'll ignore them; post a topic in the forum, but first read the rules!]

ironhead

Quote from: oBFusCATed on July 30, 2011, 10:09:39 PM
You can attach the debugger and paste a backtrace:)

Are nightlies built with debug symbols?

Quote(if you're brave enough you can build c::b yourself :))

If need be I'll grab tdm's gcc and give it a build.

ollydbg

Quote from: ironhead on July 30, 2011, 11:28:07 PM
Are nightlies built with debug symbols?
The official c::b nightlies release does not supply debug-symbols. But I guess they were build with -g options. but later, the debug info was stripped before release.
If some piece of memory should be reused, turn them to variables (or const variables).
If some piece of operations should be reused, turn them to functions.
If they happened together, then turn them to classes.