我正在尝试在win7 64bit上配置我的NetBeans,以使用MinGW-w64 .
所以我在%PATH%变量中放入了以下编译器路径:
C:\ MinGW的-W64-bin_i686 \ MinGW的\ BIN
C:\ MinGW的-MSYS \ MSYS \ BIN
C:\ MinGW的-W64-bin_i686 \ libexec目录\ GCC \ x86_64的-W64-的mingw32 \ 4.7.0
然后我打开了NetBeans并配置了:
我试图编译一个小测试程序,但我收到了这个错误:
g .exe:致命错误:-fuse-linker-plugin,但liblto_plugin-0.dll未找到编译终止 . make [2]:* [dist / Debug / MinGW-Windows / test.exe]错误1 make1:[ . build-conf]错误2 make:** [.build-impl]错误2 BUILD FAILED(退出值2,总时间:1s)
我在C:\ mingw-w64-bin_i686 \ libexec \ gcc \ x86_64-w64-mingw32 \ 4.7.0中有这个文件
我错过了什么?
3 回答
好吧,经过几个月的关闭之后,我可能会在我的博客上发布更详细的帖子,上面有漂亮的图片,但这里有一个精简版的SO版本,希望对你(以及其他所有人)来说已经足够了 .
先决条件
删除MinGW,MSYS和CMake如果你有它们并且能够丢失它们(我们将重新安装MinGW(obv . )和MSYS但不重新安装CMake,因为它似乎不需要 . )
Netbeans或其他合适的IDE
64位Windows .
EnvMan(可选,但管理Windows环境变量很方便 . )
安装
MinGW-W64 C编译器和MSYS
下载并安装MinGW-W64
http://mingw-w64.sourceforge.net/(链接在左侧菜单上,带有一个名为'WIN64 Downloads'的超链接 . )
有很多版本可能有点复杂 . 我们将使用mingw-w64-bin_i686-mingw_20111220(尽管最后的数字可能不同),这基本上说我们想要带有Windows二进制文件的版本 .
下载完成后(大约300mb,大约10分钟)提取到C:\ MinGW-W64或类似的 . Make sure there aren't any spaces in the path!
下载MSYS for MinGW-W64
进行了一些搜索http://sourceforge.net/apps/trac/mingw-w64/wiki/MSYS是它的维基,http://sourceforge.net/projects/mingw-w64/files/External%20binary%20packages%20%28Win64%20hosted%29/MSYS%20%2832-bit%29/是我找到下载的地方,我使用的版本是MSYS-20111123
下载完成后,将文件解压缩到C:\ MSys或类似文件 . Make sure there aren't any spaces in the path!
设置
将'C:\MinGW-W64\bin'添加到Windows PATH变量中 .
将'C:\MSys\msys\bin'添加到Windows PATH变量中 .
启动Netbeans并转到工具 - >选项 - > C / C.
单击'Tool Collection'下的'Add'并选择MinGW-W64的基本目录(C:\ MinGW-W64 \ bin) .
从'Tool Collection Family'中选择'MinGW',如果它不是't auto-detected and click ' OK' .
将'C编译器设置为C:\ MinGW-W64 \ bin \ x86_64-w64-mingw32-gcc.exe .
将'C编译器设置为C:\ MinGW-W64 \ bin \ x86_64-w64-mingw32-g .exe .
将'Make Command'设置为C:\ MSys \ msys \ bin \ make.exe .
这应该是它!
我应该注意到我正在使用系统来编译要通过JNI使用的库文件,因此我有一些额外的步骤,我错过了,因为这里不需要它们 . 然而,我做了一个快速的'Hello World'程序,它编译并运行得很好 .
快乐的编码!
我刚刚下载了the latest automated build,解压缩它,将主bin目录添加到路径,然后运行:
和
它的工作原理 . i686变体也是如此 . 你的IDE做错了什么 . 或者你不应该搞乱这些文件 . 或者你不应该删除前缀 . 认真 .
PS:你只需要将主“bin”目录添加到PATH,其余的都是错误的 .
通过您最喜欢的互联网搜索引擎搜索,我遇到了一种更好的方法来快速将MinGW-x64添加到Windows 64位系统 . 在Sourceforge网站上是MSYS2 .
在遵循installation directions并获取最新软件包的同时,Sourceforge上的主镜像站点可能会有一段时间 . 如果是这样,请按照mirror site update directions并更新相应MSYS2目录中的三个pacman文本文件(例如/etc/pacman.d) . 然后继续完成MSYS2 installation directions的软件包更新 .
在MSYS2包中有gcc,llvm,make,dmake等 . 这是从MSYS2命令行shell(例如bash)使用的命令来安装GNU make实用程序:
它将放置的可执行位置是:
/usr/bin
在MSYS2命令shell中 . 至于为make.exe所在的位置配置Netbeans,Windows路径为:(例如
C:\msys64\usr\bin\make.exe
) .为了使用Netbeans成功构建C,我使用了GNU make包(例如msys / make) . 然后,为了使用Netbeans管理的默认make文件,并且不干扰Windows安装中的其他C编译器(例如Visual Studio,Intel,Visual Studio中的CLang等),从MinGW-x64命令shell运行Netbeans由MSYS2提供 . 这样,环境变量和其他东西如:
将指示在Netbeans内部终端窗口中成功执行和编译 . 我通过导航到MSYS2安装的已安装快捷方式打开了MinGW-w64 Win64 Shell . 然后粘贴到了MinGW-x64 shell命令行,来自Netbeans Windows桌面快捷方式的Target属性值:
然后最终可以创建相应的调试和发布对象和可执行文件 . 我还将Netbeans项目输出修改为MSYS2目录结构 . 然后在MSYS2 MinGW-x64 shell中运行可执行文件 . 从Netbeans IDE运行会产生以下错误消息:
如果MSYS2路径在计算机系统的PATH环境变量中,则可能不会发生此错误 .