User forums > Help

C::B tries to launch cygwin gcc at startup -> ntvdm error dialog

<< < (2/2)

MortenMacFly:

--- Quote from: erix53 on March 29, 2012, 11:44:48 am ---The problem happens only when I launch C::B from Windows, not when I compile.

--- End quote ---
What I see from your screenshots most likely your Cygwin setup is wrong. Is there REALLY a windows proper executable file called gcc.exe in your Cygwin installation folder? Usually they are named like gcc-3.exe or gcc-4.exe and gcc.exe is a symbolic link which is not going to work outside the Cygwin/bash.

I repeat myself:
This is not a C::B error - you'll definitely see the same error if you launch gcc.exe through a cmd.exe environment (NO Cygwin/bash environment!). It is a wrong compiler setup!

erix53:

--- Quote from: MortenMacFly on March 29, 2012, 12:59:49 pm ---What I see from your screenshots most likely your Cygwin setup is wrong. Is there REALLY a windows proper executable file called gcc.exe in your Cygwin installation folder? Usually they are named like gcc-3.exe or gcc-4.exe and gcc.exe is a symbolic link which is not going to work outside the Cygwin/bash.

--- End quote ---

As I said (in my message at 09:44 today), gcc.exe is indeed a cygwin-only symbolic link. It goes through multiple redirections to gcc-3.exe. It seems C::B picked up the symbolic link rather than the actual executable.


--- Quote from: MortenMacFly on March 29, 2012, 12:59:49 pm ---This is not a C::B error - you'll definitely see the same error if you launch gcc.exe through a cmd.exe environment (NO Cygwin/bash environment!).

--- End quote ---

Yes, I said that in that same message.


--- Quote from: MortenMacFly on March 29, 2012, 12:59:49 pm ---It is a wrong compiler setup!

--- End quote ---

Well, then I guess the proper solution would be to organize a shootout at noon between the cygwin installer's author and the C::B installer's author :-)

About my cygwin's setup being wrong, a thing I learned in 40 years of programming is that it's better to think twice before 'fixing' a system that works fine to make something else work elsewhere.
So I went for the lesser evil and hardcoded gcc-3.exe in cygwin's compiler setup in C::B.
That of course got rid of the error (the curiosity remains about why cygwin's gcc should be executed when launching C::B. Perhaps to check the version?).

Thanks for pointing me to the right configuration area in C::B!

MortenMacFly:

--- Quote from: erix53 on March 29, 2012, 03:00:44 pm ---It seems C::B picked up the symbolic link rather than the actual executable.

--- End quote ---
Of course it did, because you setup C::B to do so. However, this is not a Windows symbolic link, so Windows cannot handle this. As C::B runs on Windows platform, C::B cannot handle this, too. The only tool that can handle Cygwin symbolic links is Cygwin itself using the Cygwin bash shell - all other trials will fail.

C::B does not validate if you enter a proper executable in the toolchain setup. What's entered gets launched. If you provide an invalid application you get an error in return. That's what has happened.


--- Quote from: erix53 on March 29, 2012, 03:00:44 pm ---That of course got rid of the error (the curiosity remains about why cygwin's gcc should be executed when launching C::B. Perhaps to check the version?).

--- End quote ---
Yes, to check the compiler version and (if its the current compiler) to obtain all internal compiler macros / includes for CC.

erix53:

--- Quote from: MortenMacFly on March 29, 2012, 03:41:25 pm ---C::B does not validate if you enter a proper executable in the toolchain setup. What's entered gets launched. If you provide an invalid application you get an error in return. That's what has happened.

--- End quote ---

Actually, I didn't set up anything: I wasn't even aware that C::B could use cygwin's gcc. Apparently it did it all by itself from one day to the next.
Of course I could have done something without knowing it, like hitting a wrong key combination while editing.

Navigation

[0] Message Index

[*] Previous page

Go to full version