非常奇怪的mingw ld问题 - " collect2:ld返回1退出状态"
我正在构建一个用于数据可视化的应用程序,我正在使用的框架是美丽的 OpenFrameworks .在Linux上,它可以编译并完美工作,但是现在该将其移植到Windows时,我面临一些非常奇怪的问题.我找不到Google的相关信息.链接时,我明白了: mingw32-g++.exe -o bin\visualisation.exe ...blah.o, blah2.o... ...lib1 lib2 lib3... collect2: ld returned 1 exit status Process terminated with status 1 (0 minutes, 3 seconds) 0 errors, 0 warnings (对象文件列表库很长,所以我将其删除了一点) 我尝试从头开始手动构建所有库,然后再试一次,但是我总是得到这个.没有错误,只是不会创建任何可执行文件.通常不包含库是问题,但是链接器会出现错误.我还尝试从命令行构建全部,并且得到了相同的结果
2 2023-12-09
编程技术问答社区
在XP上部署ffmpeg流媒体应用程序时出现strncpy_s错误
我正在尝试部署使用FFMPEG将相机输出流到XP计算机的应用程序.该应用程序是用GCC MingW32编写的,并在Windows 8上运行良好.但是在Windows XP上,我会收到以下错误: The procedure entry point strncpy_s could not be located in the dynamic link library msvcrt.dll GCC命令,排除路径: g++ -o mingw\streamer.exe src\testffmpeg.o -lavformat -lavutil -lavcodec -lFlyCapture2_C_v100 依赖性沃克(Walker)显示以下内容: 如何解决这个strncpy_s问题?使用此功能的FFMPEG似乎是MSVCRT.我使用了他们提供的Windows二进制文件.我宁愿自己编译图书馆,因为它具有大量的依赖关系. 解决方案 尽管不是通用解决方案,但我解决了此问题是
6 2023-12-09
编程技术问答社区
gnuwin32 libxml2的安装:设置几个lib和include的目录
我现在使用mingw32在Windows 8上编译Libxml2. 我已经从这里下载 ftp://xmlsoft.org/libxml2/读数文件.他们指示使用称为configure.js的JavaScript配置制造.我们可以这样运行脚本: cscript configure.js compiler=msvc prefix=c:\opt include=c:\opt\include lib=c:\opt\lib debug=yes 我想这个问题有一个非常简单的,也许是显而易见的,但是我该如何设置几个lib并包括文件夹?我尝试与""分开: cscript configure.js compiler=mingw zlib=yes prefix=C:\cpp\libraries\libxml2 include=C:\cpp\libraries\iconv-1.9.2.win32\include;C:\cpp\libraries\zlib1.2.3\GnuWin32\in
0 2023-12-07
编程技术问答社区
ld.exe: 无法打开输出文件 ... : 拒绝授权
我最近在Windows 7 Ultimate 32bit上安装了MingW32的CodeBlocks,以便除尘我的C技能,但是这个问题让我有些困惑. 我决定发射一个短的斐波那契发电机,以确保我的设置正常工作,但我遇到了障碍. 程序编译,链接和what没有像魅力一样,我将获得相应的可执行文件,该可执行文件可按预期运行. 如果我尝试再次编译,就会出现问题,然后得到以下内容: c:/codeblocks/mingw/bin/../lib/gcc/mingw32/4.4.1/../../../../mingw32/bin/ld.exe: cannot open output file bin\Debug\Fibonacci.exe: Permission denied 我什至无法编辑生成的可执行文件的权限. 我已经检查了通常的嫌疑人: 可执行文件确实不运行. 可执行的途径是读/写入mingw32的(否则它将无法首先构建) 我没有以任何形状或形式运行cy
10 2023-12-07
编程技术问答社区
Git Bash在Windows 7 x64上速度极慢
在开发一个小项目期间,我一直在Windows和Ubuntu上使用Git,经常在两者之间来回翻转.问题是 git bash 始终变得慢. 当我说慢时,我的意思是运行cd需要8-25秒的时间,运行git命令需要从5-20秒开始,ls有时可能需要30秒.不用说,这并不有趣,更不用说没有生产力了.我知道git在窗户上较慢,但这太荒谬了. 一个解决方案 - 待命 - 我是为了禁用我的网络连接(如这个答案),开始git bash,然后重新连接.有时,它在这样做后几天持续几天持续运行,但性能最终总是会降低.我已经浏览了MSYSGIT讨论组,堆栈溢出,MSYSGIT问题列表等.开关数周,但是我无法提出有效的解决方案. 到目前为止,我尝试过: 将git&Project文件夹添加到病毒扫描仪的排除列表 完全禁用我的病毒扫描仪(Kaspersky是2011年) 确保Outlook不运行(Outlook 2007) 关闭所有其他应用程序 运行git bash作为管理员 禁用网络
6 2023-12-07
编程技术问答社区
GCC/SDL2无限期挂起并停止响应
嗨,我已经在这个问题上呆了几天,找不到答案. 成功构建了SDL2后,我的项目悬挂而不要响应.他们不接受输入并无限期地挂起,除非我使用命令提示符窗口关闭它们.甚至应用程序窗口上的" X"也没有响应.据我所知,这个问题似乎与窗口本身有关,因为程序可以吸引渲染器.请帮助. 我正在使用Windows 7,Mingw32,Eclipse Europa和SDL2 请参见下面的问题.... 内部构建器用于构建 gcc -o0 -g3 -wall -c -c -fmessage -length = 0 -osrc \ ctestproject.o .. \ src \ ctestproject.c gcc -octestproject.exe src \ ctestproject.o -lmingw32 -lsdl2main -lsdl2 为项目ctestproject构建完整 时间消耗:562 ms. 这是示例程序 #include
2 2023-12-07
编程技术问答社区
在Atom IDE中使用gpp-compiler时,我如何改变MinGW的编译exe位置?
mingw通常在当前工作目录中通过命令行使用时将程序的EXE吐出,但是当通过kriscross07 in atom中的gpp-compiler软件包使用时,exe最终位于temp文件夹中.我希望它像mingw通常相同的方式将EXE放在源文件的文件夹中.这两者都是这样,所以我可以发现它更容易,因此每次看到我从临时文件夹中运行一个EXE时,我的防病毒软件都不会心脏病发作. 我正在使用Mingw版本的发行版本,您可以通过 解决方案 转到File>"设置"或" ctrl+"(逗号)的Atom设置.在"设置"选项卡中,单击包装,在社区软件包下单击GPP-Compiler的设置按钮,在设置下,您会找到"编译到临时目录",取消选中并完成.
2 2023-12-07
编程技术问答社区
安装Primer3
我需要在Windows中安装Primer3进行研究,我真的不知道该如何处理.我正在按照上述说明进行说明在这里.. 我要进入需要运行的部分 mingw32-make TESTOPTS=--windows 我一直在遇到一个错误: 'mingw32-make' is not recognized as an internal or external command, operable program or batch file. 仅供参考,我进入了MINGW安装管理器,并获得了Ming32 make软件包,包括垃圾箱,DOC,LANG和LIC的软件包,因为我真的不知道哪个是正确的. 如果有人可以帮助我,我会非常感谢!在没有安装向导的情况下安装这些利基程序是一个挑战! 解决方案 您需要安装mingw32-make.这是一个 ,但仅凭make就不够.要构建primer3您将 需要整个GNU工具链的Windows端口来构建软件 从源代码.没
18 2023-12-06
编程技术问答社区
当MinGw include目录被添加到搜索路径中时,在MinGW中未发现<stdlib.h>。
我得到了错误 c:\mingw\lib\gcc\mingw32\6.3.0\include\c++\cstdlib:75:25: fatal error: stdlib.h: No such file or directory #include_next 添加c:\ mingw \ include到编译器时包括搜索路径: echo "#include " | g++ -x c++ - -isystem C:/MinGW/include -o /dev/nul ,但Cmake之所以这样做,是因为某些库(例如libcurl)安装到c:\ mingw中,因此curl包括dir是c:\ mingw \ include 我是在做错事还是这是mingw中的错误? 我正在使用mingw 5.0.1. 什么有效:echo "#include " | g++ -x c++ - -IC:/MinGW/include -
4 2023-12-06
编程技术问答社区
在Windows上用MinGW编译不了glog。
似乎Glog没有使用mingw在Windows上编译. cmake配置和生成还可以,但是当我启动mingw32-make.exe -j10命令时,我会遇到很多与歧义声明有关的错误. 这是完整的cmake配置和生成命令输出: D:\INSTALL\Development\lib\ceres-mingw\glog\build>"D:\Program Files\CMake\bin\cmake.exe" -G "MinGW Makefiles" -Dgflags_DIR="D:\INSTALL\Development\lib\ceres-mingw\gflags\build" .. -- The C compiler identification is GNU 9.2.0 -- The CXX compiler identification is GNU 9.2.0 -- Check for working C compiler: D:/MinGW/bin/gcc.exe -- C
2 2023-12-06
编程技术问答社区
在Linux和Windows中同时启用curses
我正在从事C ++中的小型项目,并且正在使用Curss进行用户界面.我非常能够使其在我的Arch-Linux安装中起作用,因为设置Ncurses在那里工作非常简单.但是,对于我在Linux上运行良好的CMAKE设置,我无法在Windows上正常工作. 这是我的cmakelist.txt cmake_minimum_required(VERSION 3.9) project(fighting_pit) find_package(Curses REQUIRED) include_directories(${CURSES_INCLUDE_DIR}) set(CMAKE_CXX_STANDARD 11) include_directories( ./include) include_directories( ./src) add_executable(fighting_pit include/Arena.h include/cursor.h includ
0 2023-12-06
编程技术问答社区
嵌入清单文件以要求管理员执行mingw32级别
我正在用ubuntu下的i586-mingw32msvc编译应用程序. 我很难理解如何嵌入清单文件以使用mingw32的管理员执行级别. 在我的示例中,我使用了此hello.c: int main() { return 0; } 此资源文件hello.rc: 1 Manifest "hello.exe.manifest" 此清单文件hello.exe.manifest:
12 2023-12-06
编程技术问答社区
从PHP执行程序会挂起APACHE
你好,并提前感谢您的兴趣. 在过去的两个星期中,我一直在挣扎着让我发疯的事情.我在Windows框上安装了Apache(2.2.22)和PHP(5.4.3),我正在尝试从PHP脚本调用程序,该程序同时调用另一个程序.这两个程序均以C/C ++编写,并用MingW32编译.关于Windows版本,我已经测试了Windows 2003 Server和Windows 7 Professional,都给了我同样的问题. 让我介绍这两个程序: 1)mytask.exe:这是一个将在后台执行的程序,并定期将其状态填充到文件中. 2)job.exe:这是我要从PHP脚本调用的程序.它的目标是将mytask.exe作为一个独立的过程(不是作为线程). 如果我从控制台窗口运行下面的命令,则job.exe立即返回并离开mytask.exe在后台运行直到终止. > job.exe spawn mytask.exe jobid=18874111458879FED 请注意,
2 2023-12-05
编程技术问答社区
在windows下_fseeki64对大文件不能正确地寻求SEEK_END。
我将问题减少到以下基本功能,该功能应该简单地打印 文件中的字节数. 当我为83886080字节(80 MB)的文件执行它时,它会打印正确的数字. 但是,对于4815060992字节(4.48 GB)的文件,它打印了520093696,它是低点的方式. 似乎与 seek_end 选项有关,因为如果我将指针设置为4815060992字节(例如_fseeki64(fp, (__int64)4815060992, SEEK_SET) _ftelli64确实返回正确的位置. 因此,解决方法是在不使用 seek_end 的情况下获取适当的文件大小,这是如何完成的? 使用mingw. 简而言之:我在这里做错了什么? void printbytes(char* filename) { FILE *fp; __int64 n; int result; /* Open file */ fp = fopen(filename, "rb"); if (fp =
8 2023-12-05
编程技术问答社区
在C语言中获取过程时间的问题(请帮助我)。
我是C和Winapi的新手. 我花了3个多小时来尝试这样做,但完全失败了. 有人可以帮我吗? 这是我的代码: FILETIME *KernelTime; // Or struct _FILETIME *KernelTime HANDLE Process = OpenProcess ( PROCESS_ALL_ACCESS, FALSE, 0); // 0 is the PID of System Idle Process GetProcessTimes (Process, NULL, NULL, KernelTime, NULL); /* How to write here? */ double ElapsedProcessTime // Target !! 我认为这些可能对解决此问题有用: http:http://msdn.microsoft.com/en-us/library/windows/desktop/ms683223%28v=vs
4 2023-12-04
编程技术问答社区
在C语言中,如何通过传递 "字符串指针 "来设置像素到 "控制台窗口"?
我知道如何使用" setPixel()" 将像素设置为"控制台窗口" 但是它浪费了很多时间调用此功能并将每个像素绘制到它. 是否有任何可行的方法可以通过传递字符串(指针)来设置每个像素并一次调用函数,但是设置每个像素? 解决方案 不确定您的意思是"控制台窗口"或"字符串",以及他们与setPixel()的关系. 确实,使用对setPixel()重复调用的呼叫进行修改的位图非常低效,因为它的开销很高.取而代之的是,使用 getDibits(),修改缓冲区,完成后,使用setDibits()将它们复制回位图. .
0 2023-12-04
编程技术问答社区
如何防止在C语言中按下 "Ctrl+C "时终止控制台应用程序?
我发现,按Windows上的GCC汇编的控制台应用程序总是在按 ctrl + c . 按下 ctrl + c 时,是否有任何可行的方法可以防止控制台应用终止.? 解决方案 当用户按Control C时,将信号(Sigint)发送到您的过程.当将大多数信号发送到一个过程中时,该过程必须处理信号,否则操作系统将杀死它.所以...您要做的就是安装Sigint的信号处理程序. 未经测试未经测试: #include static void ignore_control_c(int sig) { /* re-arm the signal handler but otherwise ignore the signal */ signal(sig, ignore_control_c); } int main(int argc, char *argv) { signal(SIGINT, ignore_control_c); ...
10 2023-12-04
编程技术问答社区
有没有一个更好的方法来移除标题栏上所有的三个按钮,并使用Windows API移除滚动条?
列出了我在" Windows 7"中使用的标题栏上所有三个按钮的代码到目前为止列出了: #define WINVER 0x0501 // WinXP and UP #include int main ( void ) { //Get a console handle HWND ConsoleWindow = GetConsoleWindow(); //Change Settings SetWindowLong (ConsoleWindow, GWL_STYLE, WS_THICKFRAME); SetWindowLong (ConsoleWindow, GWL_STYLE, WS_CAPTION); SetWindowPos (ConsoleWindow, HWND_TOPMOST, 0, 0, 0, 0, SWP_FRAMECHANGED | SWP_SHOWWINDOW);
6 2023-12-04
编程技术问答社区
对WinMain的未定义引用(C++ MinGW)。
当前,我正在尝试使用C ++制作Windows应用程序.为了编译我的程序,我使用mingw(GCC).但是,一旦我使用int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE, PWSTR pCmdLine, int nCmdShow)而不是int main()编译器向我显示以下消息: C:/mingw-w64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/lib/../lib/libmingw32.a(lib64_libmingw32_a-crt0_c.o):crt0_c.c:(.text.startup+0x2e): undefined reference to `WinMain' collect2.exe: error: ld returned 1 exit status The terminal process ter
16 2023-12-04
编程技术问答社区
在Windows机器上,github'的mingw32 shell的vimrc或vim配置文件在哪里?
Cygwin有一个主目录,我可以在其中存储一个.vimrc文件以设置语​​法突出显示.我知道在Linux机器上,这个文件通常位于主目录中,并且可以在全球范围内存储(尽管我还没有弄清楚全球事物的工作原理). 我是Windows用户(我很抱歉),因此我将不同的外壳用于不同的事物,并且不太确定为什么当我从Git Bash Shell启动它时语法突出显示不起作用.它适用于Cygwin和Putty.但对于git的mingw32而言并没有那么多. 另一件事是,当我使用cygwin ssh到远程服务器时,我不能使用vim,但是当我使用Putty's Shell连接时,我可以使用VIM. 对此主题的任何帮助将不胜感激. 解决方案 git bash使用MSYSGIT,它带有其自己的VIM.查找它的一种方法 - 在您的git bash type 中 $ type vim 它将告诉您使用哪个VIM可执行文件.在我的机器中,它指向 /bin/vim 如果您键入
2 2023-11-19
编程技术问答社区