所以我试图用Windows中的msys和tdm-gcc编译一个预先存在的C ++项目。我通过安装程序安装tdm-gcc(最新版本),编辑MinGW / msys / 1.0 / etc / fstab以将我的tdm-gcc安装作为挂载位置,然后运行msys来调用configure脚本,并成功完成了此操作。使。 但是,对于这个项目,我需要使用旧版本的tdm-gcc(4.6.1-tdm64-1)来实现二进制兼容性。所以我从tdm-gcc sourceforge站点安装了所需的软件包(gcc core,gcc c ++,binutils,mingw64-runtime,mingw32-make,libintl,libiconv,readme所说的用于4.6.1的所有版本),提取到新目录,并编辑fstab指向其位置。现在,在执行配置时,我收到此错误:无法运行C编译的程序。配置文件显示为:
[omitted]
configure:3436: $? = 0
configure:3425: gcc -v >&5
Using built-in specs.
COLLECT_GCC=c:\TDM-GCC-4.6.1-64\bin\gcc.exe
COLLECT_LTO_WRAPPER=c:/tdm-gcc-4.6.1-64/bin/../libexec/gcc/x86_64-w64-mingw32/4.6.1/lto-wrapper.exe
Target: x86_64-w64-mingw32
Configured with: ../../src/gcc-4.6.1/configure --build=x86_64-w64-mingw32 --enable- targets=all --enable-languages=c,c++,fortran,objc,obj-c++ --enable-libgomp --enable-lto --enable-libstdcxx-debug --enable-version-specific-runtime-libs --enable-fully-dynamic-string --with-gnu-ld --disable-werror --disable-nls --disable-win32-registry --prefix=/mingw64tdm --with-local-prefix=/mingw64tdm --with-pkgversion=tdm64-1 --with-bugurl=http://tdm-gcc.tdragon.net/bugs
Thread model: win32
gcc version 4.6.1 (tdm64-1)
configure:3436: $? = 0
configure:3425: gcc -V >&5
gcc.exe: error: unrecognized option '-V'
gcc.exe: fatal error: no input files
compilation terminated.
configure:3436: $? = 1
configure:3425: gcc -qversion >&5
gcc.exe: error: unrecognized option '-qversion'
gcc.exe: fatal error: no input files
compilation terminated.
configure:3436: $? = 1
configure:3456: checking whether the C compiler works
configure:3478: gcc conftest.c >&5
configure:3482: $? = 0
configure:3530: result: yes
configure:3533: checking for C compiler default output file name
configure:3535: result: a.exe
configure:3541: checking for suffix of executables
configure:3548: gcc -o conftest.exe conftest.c >&5
configure:3552: $? = 0
configure:3574: result: .exe
configure:3596: checking whether we are cross compiling
configure:3604: gcc -o conftest.exe conftest.c >&5
configure:3608: $? = 0
configure:3615: ./conftest.exe
./configure: line 3617: ./conftest.exe: Bad file number
configure:3619: $? = 126
configure:3626: error: in `/c/jagswm':
configure:3628: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details
[omitted]
我已经尝试将tdm-gcc bin添加到我的路径中,但我认为如果设置了fstab则不重要。 非常感谢任何建议,谢谢。
答案 0 :(得分:0)
尝试禁用防病毒软件 在编译GStreamer时为我工作,可能是因为Avast正在删除a.exe文件。