基于GTK+3 开发远程控制管理软件(C语言实现)系列三 Windows7开发环境搭建
2017-08-15 15:47
936 查看
一、介绍与准备
考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++
Msys2 是msys的升级版,更加好用的GNU环境,目前比较推荐的windows下的集成工具。
Eclipse For C/C++ 专门开发C/C++的Eclipse版本。 对于开发java的同学不会陌生。
二、Eclipse For C/C++
1、下载Eclipse
https://www.eclipse.org/downloads/eclipse-packages/
2、下载版本建议
Eclipse Luna (4.4) 由于本人笔记本很老了,配置也较低,所以使用了Luna这个版本,个人感觉这个版本比较流畅。
三、Msys2
1、下载Msys2
http://www.msys2.org/
2、下载版本建议
如果你的windows系统是xp(或者windows7,8,10的32位系统),则建议下载32位的版本,如果是windows7以上的64位系统,则建议下载64位的版本。
3、安装与配置
安装:选择好安装目录(建议除C盘以外的其他盘符),一路下一步就可以了。
配置:
相关详细配置过程请详见
http://www.cnblogs.com/yunfeng83/p/7348311.html (MSYS2使用教程)
配置要求:我们使用32位的MinGW,所以在下载gcc gtk等相关类库时,注意使用 i686版本的。
其中在安装常用工具类库时,可以只安装base-devel ,其他git wget 等不用安装。
遇到的问题:
1、使用Eclipse创建C 项目时Toolchains选项会没有 MinGW GCC
2、项目创建好后,项目的Properties---C/C++ Build中提示“Toolchain "MinGW GCC" is not detected. Refer to "C/C++ Development User Guide", "Before you begin" how to install toolchains.”
问题解决:
这两个问题其实是一个地方导致的,就是用msys2 下载编译的mingw 文件夹下的gcc 找不到,所以Eclipse默认就不会显示MinGW GCC 和这个提示了。
Eclipse官方给出的解答如下:
http://wiki.eclipse.org/CDT/User/FAQ#I_installed_MinGW_toolchain_on_my_PC_but_Eclipse_won.27t_find_it.
需要将下载的i686-w64-mingw32-gcc.exe 重名为mingw32-gcc 就可以了。
我们把i686-w64-mingw32-gcc.exe 复制一下,并重名为mingw32-gcc 就解决这两个问题了。
四、配置Eclipse
1、创建一个C项目
如果按要求配置了gcc,则Eclipse在创建项目时,就会显示出MinGW GCC 。
可以正常编译了,就好了。
将GTK类库配置到Eclipse中去。
1、利用msys2的pkg-config命令得到GTK类库及其相关路径。
将这些类库路径与lib导出到tmp文件夹下的libs 和 cflags 文本文件中。
将cflags文件中开头到 -mms-bitfields -I 部分去掉,然后每路径前面的 -I 去掉,还有 D:/msys64/mingw32/include 也会多次出现,去掉重复的。
最终得到
将上面部分复制
在Include path的下面鼠标单击一下,然后Ctrl+ V 进行粘贴。将这些指复制过去。
再将libs.txt文件中的类库名称和 路径名称复制下来(去掉类库名称前面的-l),以照上面的操作步骤,把MinGW C Linker中的 Libraies 值赋值出来。
最终结果如下图
设置完成后 ‘Apply’ 这样就完成了所有配置,我们在coding时,也会有智能提示了。
我们把刚才新建的那个项目的Demo.c文件 ,重新编写。
然后重新编译
智能提示也有了。
运行结果。
OK。这样就可以正式的编写代码了。
考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++
Msys2 是msys的升级版,更加好用的GNU环境,目前比较推荐的windows下的集成工具。
Eclipse For C/C++ 专门开发C/C++的Eclipse版本。 对于开发java的同学不会陌生。
二、Eclipse For C/C++
1、下载Eclipse
https://www.eclipse.org/downloads/eclipse-packages/
2、下载版本建议
Eclipse Luna (4.4) 由于本人笔记本很老了,配置也较低,所以使用了Luna这个版本,个人感觉这个版本比较流畅。
三、Msys2
1、下载Msys2
http://www.msys2.org/
2、下载版本建议
如果你的windows系统是xp(或者windows7,8,10的32位系统),则建议下载32位的版本,如果是windows7以上的64位系统,则建议下载64位的版本。
3、安装与配置
安装:选择好安装目录(建议除C盘以外的其他盘符),一路下一步就可以了。
配置:
相关详细配置过程请详见
http://www.cnblogs.com/yunfeng83/p/7348311.html (MSYS2使用教程)
配置要求:我们使用32位的MinGW,所以在下载gcc gtk等相关类库时,注意使用 i686版本的。
其中在安装常用工具类库时,可以只安装base-devel ,其他git wget 等不用安装。
遇到的问题:
1、使用Eclipse创建C 项目时Toolchains选项会没有 MinGW GCC
2、项目创建好后,项目的Properties---C/C++ Build中提示“Toolchain "MinGW GCC" is not detected. Refer to "C/C++ Development User Guide", "Before you begin" how to install toolchains.”
问题解决:
这两个问题其实是一个地方导致的,就是用msys2 下载编译的mingw 文件夹下的gcc 找不到,所以Eclipse默认就不会显示MinGW GCC 和这个提示了。
Eclipse官方给出的解答如下:
http://wiki.eclipse.org/CDT/User/FAQ#I_installed_MinGW_toolchain_on_my_PC_but_Eclipse_won.27t_find_it.
需要将下载的i686-w64-mingw32-gcc.exe 重名为mingw32-gcc 就可以了。
我们把i686-w64-mingw32-gcc.exe 复制一下,并重名为mingw32-gcc 就解决这两个问题了。
四、配置Eclipse
1、创建一个C项目
如果按要求配置了gcc,则Eclipse在创建项目时,就会显示出MinGW GCC 。
可以正常编译了,就好了。
将GTK类库配置到Eclipse中去。
1、利用msys2的pkg-config命令得到GTK类库及其相关路径。
pkg-config gtk+-3.0 --libs > /tmp/libs.txt
pkg-config gtk+-3.0 --cflags > /tmp/cflags.txt
将这些类库路径与lib导出到tmp文件夹下的libs 和 cflags 文本文件中。
-mms-bitfields -pthread -mms-bitfields -ID:/msys64/mingw32/include/gtk-3.0 -ID:/msys64/mingw32/include/cairo -ID:/msys64/mingw32/include -ID:/msys64/mingw32/include/pango-1.0 -ID:/msys64/mingw32/include/atk-1.0 -ID:/msys64/mingw32/include/cairo -ID:/msys64/mingw32/include/pixman-1 -ID:/msys64/mingw32/include -ID:/msys64/mingw32/include/freetype2 -ID:/msys64/mingw32/include/libpng16 -ID:/msys64/mingw32/include/harfbuzz -ID:/msys64/mingw32/include/glib-2.0 -ID:/msys64/mingw32/lib/glib-2.0/include -ID:/msys64/mingw32/include -ID:/msys64/mingw32/include/freetype2 -ID:/msys64/mingw32/include -ID:/msys64/mingw32/include/harfbuzz -ID:/msys64/mingw32/include/libpng16 -ID:/msys64/mingw32/include/gdk-pixbuf-2.0 -ID:/msys64/mingw32/include/libpng16 -ID:/msys64/mingw32/include/glib-2.0 -ID:/msys64/mingw32/lib/glib-2.0/include -ID:/msys64/mingw32/include
-LD:/msys64/mingw32/lib -lgtk-3 -lgdk-3 -lgdi32 -limm32 -lshell32 -lole32 -Wl,-luuid -lwinmm -ldwmapi -lsetupapi -lcfgmgr32 -lz -lpangowin32-1.0 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl
将cflags文件中开头到 -mms-bitfields -I 部分去掉,然后每路径前面的 -I 去掉,还有 D:/msys64/mingw32/include 也会多次出现,去掉重复的。
最终得到
D:/msys64/mingw32/include/gtk-3.0 D:/msys64/mingw32/include/cairo D:/msys64/mingw32/include/pango-1.0 D:/msys64/mingw32/include/atk-1.0 D:/msys64/mingw32/include/cairo D:/msys64/mingw32/include/pixman-1 D:/msys64/mingw32/include/freetype2 D:/msys64/mingw32/include/libpng16 D:/msys64/mingw32/include/harfbuzz D:/msys64/mingw32/include/glib-2.0 D:/msys64/mingw32/lib/glib-2.0/include D:/msys64/mingw32/include/freetype2 D:/msys64/mingw32/include/harfbuzz D:/msys64/mingw32/include/libpng16 D:/msys64/mingw32/include/gdk-pixbuf-2.0 D:/msys64/mingw32/include/libpng16 D:/msys64/mingw32/include/glib-2.0 D:/msys64/mingw32/lib/glib-2.0/include D:/msys64/mingw32/include
将上面部分复制
在Include path的下面鼠标单击一下,然后Ctrl+ V 进行粘贴。将这些指复制过去。
再将libs.txt文件中的类库名称和 路径名称复制下来(去掉类库名称前面的-l),以照上面的操作步骤,把MinGW C Linker中的 Libraies 值赋值出来。
D:/msys64/mingw32/lib gtk-3 gdk-3 gdi32 imm32 shell32 ole32 uuid winmm dwmapi setupapi cfgmgr32 z pangowin32-1.0 pangocairo-1.0 pango-1.0 atk-1.0 cairo-gobject cairo gdk_pixbuf-2.0 gio-2.0 gobject-2.0 glib-2.0 intl
最终结果如下图
设置完成后 ‘Apply’ 这样就完成了所有配置,我们在coding时,也会有智能提示了。
我们把刚才新建的那个项目的Demo.c文件 ,重新编写。
/* ============================================================================ Name : Demo.c Author : GtkDemo Version : Copyright : Your copyright notice Description : Hello World in C, Ansi-style ============================================================================ */ #include <stdio.h> #include <stdlib.h> #include <gtk/gtk.h> int main(int argc,char *argv[]) { //puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */ //return EXIT_SUCCESS; GtkWidget *window; gtk_init(&argc,&argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); gtk_widget_show(window); gtk_main(); return EXIT_SUCCESS; }
然后重新编译
智能提示也有了。
运行结果。
OK。这样就可以正式的编写代码了。
相关文章推荐
- 基于GTK+3 开发远程控制管理软件(C语言实现)系列二 Centos7下开发环境搭建
- 【软件开发实践】基于 Jenkins 快速搭建持续集成环境
- DWCS6搭建jsp开发环境及使用ajax实现用户注册(基于文件)
- Redis3.2+Tomcat实现集群的Session管理 -- tomcat-redis-session-manager的编译和开发部署环境搭建
- [z]Windows 下基于 Eclipse 的可视化远程 Linux C/C++ 开发环境搭建
- windows7平台搭建Python3开发环境(本学习过程全部基于Python3.x)
- Redis3.2+Tomcat实现集群的Session管理 -- tomcat-redis-session-manager的编译和开发部署环境搭建
- 基于ANT+通讯协议软件开发环境搭建
- Redis3.2+Tomcat实现集群的Session管理 -- tomcat-redis-session-manager的编译和开发部署环境搭建
- 在windows下搭建ROR开发环境以及安装开源项目管理软件Redmine
- windows7搭建基于VIM的开发环境(1)-搭建msys2下64位编译环境
- Windows 下基于 Eclipse 的可视化远程 Linux C/C++ 开发环境搭建
- windows7搭建基于VIM的开发环境(2)-编译64位且支持python的VIM版本并安装
- Linux环境下C语言实现简单的基于文件的学生信息管理系统
- VC++基于APR实现禁止某个业务(开发行为控制软件用得着,例如上班禁止上QQ)
- 实现ubuntu12.04下面,C语言使用GLUT开发环境搭建。
- 【Jetty Server 开发系列之一】搭建Jetty Server环境&&Http客户端实现交互
- Linux系统下搭建Java开发环境,搭建Java服务器并进行远程管理
- Windows7下基于Eclipse的STM32开发学习日志之 搭建开发环境