Eclipse CDT does not find either Cygwin or MinGW t

2019-03-24 13:11发布

问题:

I am having hard times to configure Eclipse Juno to for C/C++. I am a Windows user, so I have installed Cygwin and MinGW, and CDT under Eclipse. Also configured the PATH variable correctly, though I still do not have any new toolchain in Eclipse C/C++ new project.

These are my Eclipse details:

Eclipse Java EE IDE for Web Developers.

Version: Juno Release
Build id: 20120614-1722

Also, see image of installed component of Eclipse. Enclosed some outout from Windows command line:

C:\>echo %path%
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x8
6)\Common Files\Microsoft Shared\Windows Live;C:\Windows\system32;C:\Windows;C:\
Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Fil
es (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\MiKTeX 2.9\miktex
\bin\x64\;C:\Program Files\MATLAB\R2011b\runtime\win64;C:\Program Files\MATLAB\R
2011b\bin;C:\Program Files (x86)\Windows Live\Shared;C:\Program Files\Java\jdk\b
in;C:\Program Files (x86)\Java\jre\bin;C:\Program Files (x86)\Android\android-sd
k\platform-tools;C:\Program Files (x86)\Android\android-sdk\tools;C:\Program Fil
es\Python32;C:\Program Files (x86)\Notepad++;C:\tomcat\bin;C:\Users\Administrato
r\AppData\Roaming\npm;C:\Program Files (x86)\Gnu\GnuWin32\bin;C:\Program Files\n
odejs;C:\Users\Administrator\AppData\Roaming\npm;C:\MinGW\bin;C:\MSYS\bin;C:\cyg
win\bin

C:\>gdb --version
GNU gdb (GDB) 7.4
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-mingw32".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.    

C:\>make --version
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for i386-pc-mingw32

C:\>g++ --version
g++ (GCC) 4.7.0
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

C:\>gcc --version
gcc (GCC) 4.7.0
Copyright (C) 2012 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Enclosed output from Cygwin shell:

Cygwin Package Information
Package                   Version              Status
_autorebase               000085-1             OK
_update-info-dir          01054-1              OK
alternatives              1.3.30c-10           OK
autoconf                  10-1                 OK
autoconf2.1               2.13-10              OK
autoconf2.5               2.68-1               OK
automake1.9               1.9.6-10             OK
base-cygwin               3.1-1                OK
base-files                4.1-1                OK
bash                      4.1.10-4             OK
binutils                  2.22.51-2            OK
bzip2                     1.0.6-2              OK
colorgcc                  1.3.2-2              OK
coreutils                 8.15-1               OK
crypt                     1.2-1                OK
cygutils                  1.4.10-2             OK
cygwin                    1.7.15-1             OK
cygwin-doc                1.7-1                OK
dash                      0.5.7-1              OK
dejagnu                   20021217-2           OK
diffutils                 3.2-1                OK
dos2unix                  6.0-1                OK
editrights                1.01-2               OK
expect                    5.45-1               OK
file                      5.11-1               OK
findutils                 4.5.9-2              OK
gawk                      4.0.1-1              OK
gcc                       3.4.4-999            OK
gcc-core                  3.4.4-999            OK
gcc-g++                   3.4.4-999            OK
gcc-mingw                 20040810-1           OK
gcc-mingw-core            20050522-3           OK
gcc-mingw-g++             20050522-3           OK
gcc-tools-epoch1-autoconf 2.59-1               OK
gcc-tools-epoch1-automake 1.9.6-1              OK
gcc-tools-epoch2-autoconf 2.64-1               OK
gcc-tools-epoch2-automake 1.11.1-1             OK
gcc4                      4.5.3-3              OK
gcc4-core                 4.5.3-3              OK
gcc4-g++                  4.5.3-3              OK
gdb                       7.3.50-3             OK
gdbm                      1.8.3-20             OK
gettext                   0.18.1.1-2           OK
grep                      2.6.3-1              OK
groff                     1.21-2               OK
gzip                      1.4-1                OK
ipc-utils                 1.0-1                OK
less                      444-1                OK
libattr1                  2.4.46-1             OK
libbz2_1                  1.0.6-2              OK
libcloog0                 0.15.7-1             OK
libdb4.5                  4.5.20.2-3           OK
libffi4                   4.5.3-3              OK
libgcc1                   4.5.3-3              OK
libgdbm                   1.8.0-5              OK
libgdbm-devel             1.8.3-20             OK
libgdbm4                  1.8.3-8              OK
libgmp3                   4.3.2-1              OK
libgmpxx4                 4.3.2-1              OK
libgomp1                  4.5.3-3              OK
libiconv2                 1.14-2               OK
libintl3                  0.14.5-1             OK
libintl8                  0.18.1.1-2           OK
liblzma5                  5.0.2_20110517-1     OK
libmpc1                   0.8-1                OK
libmpfr1                  2.4.1-4              OK
libmpfr4                  3.0.1-1              OK
libncurses10              5.7-18               OK
libncurses9               5.7-16               OK
libncursesw10             5.7-18               OK
libpcre0                  8.21-2               OK
libpopt0                  1.6.4-4              OK
libppl                    0.10.2-1             OK
libreadline7              6.1.2-3              OK
libsigsegv2               2.10-1               OK
libssp0                   4.5.3-3              OK
libstdc++6                4.5.3-3              OK
libstdc++6-devel          4.5.3-3              OK
login                     1.10-10              OK
m4                        1.4.16-1             OK
make                      3.82.90-1            OK
man                       1.6g-1               OK
mingw-binutils            2.21-1               OK
mingw-gcc-core            4.5.2-1              OK
mingw-gcc-g++             4.5.2-1              OK
mingw-pthreads            20110507-1           OK
mingw-runtime             3.20-1               OK
mingw-w32api              3.17-2               OK
mingw64-i686-binutils     2.22.52-1            OK
mingw64-i686-gcc          4.5.3-6              OK
mingw64-i686-gcc-core     4.5.3-6              OK
mingw64-i686-gcc-g++      4.5.3-6              OK
mingw64-i686-headers      3.0b_svn5134-1       OK
mingw64-i686-pthreads     20100619-4           OK
mingw64-i686-runtime      3.0b_svn5134-1       OK
mingw64-x86_64-binutils   2.22.52-1            OK
mingw64-x86_64-gcc        4.5.3-6              OK
mingw64-x86_64-gcc-core   4.5.3-6              OK
mingw64-x86_64-gcc-g++    4.5.3-6              OK
mingw64-x86_64-headers    3.0b_svn5134-1       OK
mingw64-x86_64-pthreads   20100619-4           OK
mingw64-x86_64-runtime    3.0b_svn5134-1       OK
mintty                    1.1.1-1              OK
perl                      5.10.1-5             OK
rebase                    4.2.0-1              OK
run                       1.1.13-1             OK
sed                       4.2.1-2              OK
tar                       1.25-1               OK
tcl                       8.5.11-1             OK
terminfo                  5.7_20091114-14      OK
texinfo                   4.13-4               OK
tzcode                    2012b-1              OK
w32api                    3.17-2               OK
which                     2.20-2               OK
xz                        5.0.2_20110517-1     OK
zlib0                     1.2.7-1              OK

I am also familiar with Why doesn't MinGW show up in the list of Eclipse/Indigo CDT Toolchains? and How to deal with Eclipse CDT+Cygwin? and http://wyding.blogspot.com/2009/04/setup-cygwin-toolchain-in-eclipse-cdt.html

Could anyone help me realize what is wrong?

回答1:

I have the same problem. I have found two possible solutions:

  1. Uncheck "Show project types and toolchains only if they are supported on the platform" when you choose "New Project->C++ Project->Project Type: Executable".

  2. Uninstall the "GNU Autotools", then you can see options that you want.



回答2:

Per the CDT help page: http://wiki.eclipse.org/CDT/User/FAQ#I_installed_MinGW_toolchain_on_my_PC_but_Eclipse_won.27t_find_it.

Despite having g++.exe or gcc.exe on your PATH and having defined MINGW_HOME, you may still get a “Toolchain "MinGW GCC" is not detected” message (CDT 8.4 on Luna 4.4.0). Make sure that a file called "mingw32-gcc.exe" exists in MINGW_HOME\bin. If it doesn't exist (which happens with MinGW-W64), copy a -gcc.exe file (e.g. i686-w64-mingw32-gcc.exe) to mingw32-gcc.exe. If the dreaded message still lingers around, reboot your system (don't just logout and login).



回答3:

I had the same problem. I fixed it by adding the location of my cygwin compiler programs to PATH. Maby you did not properly add the location. For cygwin, have the path go to the bin folder.



回答4:

Eclipse tries to figure out where is cygwin1.dll. But this file is in many programs previously built with cygwin. So Eclipse could find this before the right cygwin installed.

So a possible solution could be to put the C:\cygwin\bin at the begining of the PATH variable, so Eclipse searches there before.



回答5:

I couldn't make the Eclipse (LUNA) locate MinGW on my computer (there were no MinGW available in Preferences>C/C++/New C/C++ Project Wizard) even after I have specified PATH as "C:\MinGW\bin" in Preferences>C/C++/Build>Environment, so what I did afterwards was:

  1. Create a simple "Hello world" C project without specifying any toolchains
  2. (at this step I tried to Build All, and it failed)
  3. Go to Project>Properties, suprisingly, here I could see MinGW GCC as an available choice for Current toolchain. Select it.
  4. Now I could build and run the project

Hopefully, it helps!