草庐IT

MinGW-gdb

全部标签

c++ - MinGW C++ : Reading a file with non-ascii file name

简单任务:我想读取一个文件名不是ascii的文件。在linux和MacOS上,我只是将文件名作为UTF-8编码字符串传递给fstream构造函数。在Windows上,这会失败。正如我从thisquestion中了解到的那样,windows根本不支持utf-8文件名。但是,它提供了一个自己的非标准open方法,该方法采用utf-16wchar_t*。因此,我可以简单地将我的string转换为utf-16wstring并且没问题。然而,在MinGW标准库中,fstream的wchar_t*open方法根本不存在。那么,如何在MinGW上打开一个非ascii文件名?

windows - 为什么 binutils-gdb 无法从 MSYS2 构建?

我正在尝试在Windows10PC上从msys2环境中构建binutils-gdb。git://sourceware.org/git/binutils-gdb.git大部分代码编译正常,但libiberty构建失败,pex-win32.c中出现错误:./pex-win32.c:121:10:warning:implicitdeclarationoffunction‘_open’;didyoumean‘open’?[-Wimplicit-function-declaration]./pex-win32.c:121:23:error:‘_O_RDONLY’undeclared(firstu

windows - 一起使用cygwin和mingw

我想使用mingw编译器和一些来自mingw-get的mingw东西我想使用cygwin附带的bash和unix工具。因为MSYS有一些不足。如果可能的话,我还希望能够从使用cygwin-gcc“切换”到mingwone,然后再使用相同的bashsession切换回来。我安装了C:\cygwin和C:\mingw并且可以正常工作 最佳答案 MinGW编译器以Cygwin包的形式提供。MinGW-w64编译器也可以作为Cygwin包使用。这样既可以在Linux环境下使用Cygwin,又可以编译出不依赖Cygwindll的可执行文件。我

c++ - 模板特化导致 Windows 上的 MinGW 链接错误,而不是 Linux 上的 GCC

以下build设置在使用GCC(4.6.3)的Linux上运行良好,但不适用于使用GCC(4.7.2)的MinGW。$catMakefileall:g++-cfoo.cppg++-cbar.cppg++bar.ofoo.o-obar$catfoo.h#ifndefFOO_H#defineFOO_H#includetemplatevoidfoo(Tx){std::cout$catfoo.cpp#include"foo.h"templatevoidfoo(intx){std::cout$catbar.cpp#include"foo.h"intmain(){foo(1);}在Linux上,我

c++ - rand_r 不在范围内,gcc mingw 在 Windows 上的 cygwin 下

我正在尝试将一些代码从linux移植到cygwin下的windows。我发现这个奇怪的错误,其中“rand_r未在此范围内声明”。我将gcc4.8.1用作x86_64-w64-mingw32并且在它的搜索路径(-v选项)中它确实在正确的目录中查找。头文件已正确包含。我正在寻找解决这个问题的想法。是否有关于cygwin的一些事实我遗漏了,因此遇到了这个问题?有没有办法检查gcc是否确实接触了所需的文件? 最佳答案 与标准的rand函数相比,rand_r函数被认为是线程安全的。参见man3rand_r.一种选择是通过封装对rand的调用

windows - MinGW Make 抛出 "The system cannot find the path specified."错误

我正在尝试在Windows7上使用cmake生成一个c++项目。在它实际创建项目之前,尽管看起来cmake对您的工具链进行了快速测试(我正在使用MinGW),这就是我的问题所在。Cmake触发make构建,最终失败并返回“系统找不到指定路径”的响应。我运行了在试运行模式(-n)下失败的特定makefile并手动执行了所有命令:"C:\ProgramFiles(x86)\CMake\bin\cmake.exe"-Ecmake_progress_reportC:\SFML\CMakeFiles\CMakeTmp\CMakeFiles1echoBuildingCobjectCMakeFile

c++ - 应用程序段错误,仅当使用 MinGW 在 Windows 上编译时

我正在尝试编译oneofmygames在Windows上,但不幸的是,无论如何,我每次运行该程序时都会遇到此段错误。编译成功,并且没有任何警告。ProgramreceivedsignalSIGSEGV,Segmentationfault.__chkstk_ms()at../../../../../src/gcc-4.8.1/libgcc/config/i386/cygwin.S:172172../../../../../src/gcc-4.8.1/libgcc/config/i386/cygwin.S:Nosuchfileordirectory.我试过:在Windowsx86机器上编译

c - 如何在mingw中检测命令行参数的字符编码

假设它们是ISO-8859-15(Window-1252?)是否安全,或者我可以调用一些函数来查询它吗?最终目标是转换为UTF-8。背景:thisquestion描述的问题出现是因为XMLStarlet假定其命令行参数是UTF-8。在Windows下,它们似乎实际上是ISO-8859-15(Window-1252?),或者至少将以下内容添加到main的开头可以使事情正常进行:char**utf8argv=malloc(sizeof(char*)*(argc+1));utf8argv[argc]=NULL;{iconv_twindows2utf8=iconv_open("UTF-8","

c - DLL:在 Linux for Windows 上使用 MinGW 编译 C 时无法识别文件格式

我在Linux(特别是Ubuntu)上使用MinGW为Windows编译C程序。我正在使用一个名为SFML的库,它的绑定(bind)名为CSFML。我正在使用-L和-l来定位库,但在编译时出现此错误:win32/dll/csfml-audio-2.dll:filenotrecognized:Fileformatnotrecognised我不知道为什么。这是我用来编译的命令:sudoi686-w64-mingw32-gcc-owanderingsrc/main.csrc/constants.csrc/Display/display.c**...somemorecfilesinhere..

c++ - MinGW,链接到 Windows 上的 dll

我正在尝试在示例程序中使用从相机供应商处收到的库。我有一个.dll和一个.lib文件用于库。我的编译命令是:g++-o"Win32App.exe"-L"..\..\SKdevelop\SK91GigE-WIN\Lib"obj/winmain.oobj/callbacks.oobj/resource.o-s-lcomctl32-Wl,--subsystem,windows-lSK91GigE_x64我得到:obj/winmain.o:winmain.cpp:(.text+0x292):undefinedreferenceto`SK_LOADDLL'collect2.exe:error:l