在使用MinGW进行编译时,我必须在运行exe之前从MinGW bin目录复制某些dll文件(即使使用"-static"和/或"-static-libstdc ++").如何更改?我必须使用MinGW的特殊版本吗?最终我希望能够在目录中运行除了exe之外的程序(并且没有设置windows环境变量).这些文件是:
以下是我休闲的完整步骤列表:
查看邮件
Hello World!
Run Code Online (Sandbox Code Playgroud)编辑: 我的命令行是:
g++.exe -Wall -fexceptions -static -static-libgcc -static-libstdc++ -g -static-libgcc -static-libstdc++ -L. -c "C:\Users\______\Desktop\Hello World\main.cpp" -o obj\Debug\main.o
g++.exe -o "bin\Debug\Hello World.exe" obj\Debug\main.o
Run Code Online (Sandbox Code Playgroud)
需要上面提到的所有dll文件.并且,为了安全起见,代码是:
// …Run Code Online (Sandbox Code Playgroud) 最近的NTFS和Windows实现了符号链接:
linkd或junction工具.mklink工具以来,NTFS符号链接也可用作符号链接(用于文件和目录).但是在Cygwin 1.7(安装在Windows 7上)上,ln -s创建了一个文本文件.
在Cygwin上:
$ ln -s -v target mylink
`mylink' -> `target'
Run Code Online (Sandbox Code Playgroud)
在MinGW(或你最喜欢的编辑):
$ cat mylink
!<symlink>ÿþt a r g e t
Run Code Online (Sandbox Code Playgroud)
是否有可能告诉Cygwing使用NTFS交接点或NTFS符号链接?
其他问题:MinGW上有这个吗?
我试过实现这样的函数,但不幸的是它不起作用:
const wchar_t *GetWC(const char *c)
{
const size_t cSize = strlen(c)+1;
wchar_t wc[cSize];
mbstowcs (wc, c, cSize);
return wc;
}
Run Code Online (Sandbox Code Playgroud)
我的主要目标是能够在Unicode应用程序中集成普通的char字符串.我们非常感谢您提供的任何建议.
我正在尝试安装pywin32.我从sourceforge.net下载了它.我跑的时候
setup.py install
Run Code Online (Sandbox Code Playgroud)
它显示"无法找到vcvarsall.bat".我用Google搜索,发现我必须安装MinGW并设置路径然后运行
python setup.py build --compiler=mingw32
Run Code Online (Sandbox Code Playgroud)
但它正在显示
Can't find a version in Windows.h
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?(我安装了Visual Studio 2010 Ultimate的试用版,并安装了MinGW C和C++编译器.操作系统:Windows 7.)
任何人都可以告诉我从哪里下载已经在MinGW中编译的Python二进制文件的源代码,所以我不必这么做.或者,如果我可以获得已经拥有Windows模块的python.
我从这里使用mingw: http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.7.2/32-bit/threads-posix/sjlj/x32-4.7.2-release-posix-sjlj-rev2.7z/download
而且我已经成功地设法通过静态链接libstdc++-6.dll和libgcc_s_sjlj-1.dll使用-static-libgcc -static-libstdc++参数,但我无法找到执行相同操作的命令libwinpthread-1.dll.
我在Windows上使用MinGW编译器来编译带有套接字的C++应用程序.我的链接命令如下:
g++.exe -Wall -Wno-long-long -pedantic -lwsock32 -o dist/Windows/piskvorky { there are a lot of object files }
Run Code Online (Sandbox Code Playgroud)
而我也试过了
g++.exe -Wall -Wno-long-long -pedantic -lws2_32 -o dist/Windows/piskvorky { there are a lot of object files }
Run Code Online (Sandbox Code Playgroud)
但在这两种情况下我都会收到此错误:
build/Windows/MinGW-Windows/src/utils/tcpunit.o:tcpunit.cpp:(.text+0x33): undefined reference to `closesocket@4'
build/Windows/MinGW-Windows/src/utils/tcpunit.o:tcpunit.cpp:(.text+0xd0): undefined reference to `send@16'
build/Windows/MinGW-Windows/src/utils/tcpunit.o:tcpunit.cpp:(.text+0x1ee): undefined reference to `recv@16'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x184): undefined reference to `WSAStartup@8'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x1a5): undefined reference to `closesocket@4'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x1cb): undefined reference to `closesocket@4'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x1d3): undefined reference to `WSACleanup@0'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x6fe): undefined reference to `bind@12'
build/Windows/MinGW-Windows/src/utils/tcpdevice.o:tcpdevice.cpp:(.text+0x724): undefined reference to `listen@8' …Run Code Online (Sandbox Code Playgroud) 我试图将二进制blob嵌入到exe文件中.我正在使用mingw gcc.
我像这样制作目标文件:
ld -r -b binary -o binary.o input.txt
Run Code Online (Sandbox Code Playgroud)
然后我看objdump输出来获取符号:
objdump -x binary.o
Run Code Online (Sandbox Code Playgroud)
它给出了符号:
_binary_input_txt_start
_binary_input_txt_end
_binary_input_txt_size
Run Code Online (Sandbox Code Playgroud)
然后我尝试在我的C程序中访问它们:
#include <stdlib.h>
#include <stdio.h>
extern char _binary_input_txt_start[];
int main (int argc, char *argv[])
{
char *p;
p = _binary_input_txt_start;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
然后我这样编译:
gcc -o test.exe test.c binary.o
Run Code Online (Sandbox Code Playgroud)
但我总是得到:
undefined reference to _binary_input_txt_start
Run Code Online (Sandbox Code Playgroud)
有谁知道我做错了什么?
每当我尝试在其安装目录(E:\MinGW\bin)之外运行GCC时,我都会收到此错误.
所以,让我说我在,E:\code并有一个名为的文件one.c.跑步:
gcc one.c -o one.exe会给我这个错误:
gcc: CreateProcess: No such file or directory
Run Code Online (Sandbox Code Playgroud)
唯一的解决方法是导航到其安装目录,从那里运行gcc,并指定所有其他路径.我的环境变量Path包含E:\MinGW\bin.
有什么建议来解决这个问题?我正在运行Windows XP SP3.
我是新手,想知道如何使用C语言中的MinGW编译器编译makefile.am.我是否必须将所有文件保存在MinGW\bin中?因为现在我的文件在不同的目录中.
感谢帮助.
我正在尝试使用xlsLib从C++应用程序创建Excel电子表格.
麻烦的是编译xlsLib,我给了一个.a文件(由MinGW生成的GCC静态库).但是,我的应用程序依赖于另一个PhysX仅使用Visual Studio编译的API().
因此:是否可以将GCC静态库(xlslib.a)转换为Visual Studio静态库文件(xlslib.lib)?