一、安装gcc gcc-c++ make等编译工具

yum install gcc gcc-c++ kernel-devel

这一步,其实可以不用做,你在安装Centos7的时候,如果选择开发模式安装系统,则默认会安装的。

二、安装GTK3

yum install libgnomeui-devel

这是我在查阅GTK相关文档资料时,可以使用这样的命令进行安装,很是方便。

查看GTK 版本,此命令也可以做为判断是否安装了GTK。

pkg-config --list-all | grep gtk

如下图,所示:

pkg-config --modversion gtk+-3.0
pkg-config --modversion gtk+-2.0

结果如下图

三、安装开发IDE

一)使用Eclipse For C/C++ 开发GTK

1、下载Eclipse

地址: https://www.eclipse.org/downloads/eclipse-packages/

下载的完毕后,通过界面操作,或者命令进行解压缩,然后打开。如果可以正常打开,说明系统已有JDK。如果不能则代表Centos还没有安装JDK,自己下载JDK即可,过程不再详述。

2、创建C项目

这里要注意的是:Toolchains选项要选择LinuxGCC,因为是在Linux下。

创建完毕。

这时候,Ctrl+B 编译项目,然后直接运行,在Console 窗体中出现Hello world就代表GCC 是正常的。

3、配置GTK For Eclipse

1)给GCC添加对GTK的编译参数

1、Alt+回车 打开项目属性窗口,选择C/C++ Build --- Settings----Tool Settings--- GCC C Compiler ---- Miscellaneous --- Other flags 参数中添加

`pkg-config gtk+-3.0 --cflags`

2、C/C++ Build --- Settings----Tool Settings--- GCC C Linker ---- Miscellaneous --- Linker flags 参数中添加

`pkg-config gtk+-3.0 --libs`

3、将GTK的类库引用到项目中去。

C/C++ Build --- Settings----Tool Settings--- GCC C Compiler ---- Includes ---- Include paths(-I) 参数中添加值

/usr/include/glib-2.0
/usr/include/gtk-3.0

到此GTK的类库及编译配置完成。

2)写一个简单测试配置情况

/*
============================================================================
Name : GtkDemo.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; }

以上代码是Hello World 那部分进行修改并添加了GTK的类库。

如果出现窗体,则代表成功。

二)安装Glade进行界面设计

1、安装

在安装Centos系统时,只要选择了开发GUI相关的选项,一般来说在安装完成后,就会有Glade的。我们只要安装一下就可以了。

选择“应用程序的安装程序”  ,然后搜索“Glade”

上面是两个版本的一个是3.8,一个是3.15的,分别对应GTK2和3. 安装好,直接启动。我们会在“应用程序”---“编程”---Glade 找到。

2、做一个简单的UI界面。

待续...

基于GTK+3 开发远程控制管理软件(C语言实现)系列二 Centos7下开发环境搭建的更多相关文章

  1. 基于GTK+3 开发远程控制管理软件(C语言实现)系列 一 开篇

    近期趁公司没项目来,想学习一下C和GTK+3 ,顺道再学习一下Linux下有关网络编程方面的知识. 一.学习知识: 1.C基本语法 2.GTK+3 API学习 GUI相关知识学习 3.Glade使用及 ...

  2. 基于centos7下appium环境搭建

    事件背景: 前几日在群里看到关总说他的server端是搭建在linux环境下,包括对客户端与服务端的交互处理,感觉整体思路清晰可鉴,于是就想尝试,动手实践,接着从环境搭建开始搞起,于是就有了这篇文章, ...

  3. 基于GTK+3 开发远程控制管理软件(C语言实现)系列三 Windows7开发环境搭建

    一.介绍与准备 考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++ Msys2 是msys的升级 ...

  4. 仿OpenStack开发云计算管理软件

    仿OpenStack开发云计算管理软件 使用Python语言开发一套类似OpenStack的云计算管理平台LouCloud,具备基本的用户,服务器,镜像与 虚拟机管理功能,学习IaaS,虚拟化,Lib ...

  5. win7下docker环境搭建nginx+php-fpm+easyswoole+lavarel+mysql开发环境

    win7环境基础在上一篇win7下docker环境搭建nginx+php-fpm+easyswoole开发环境中已经详细叙述搭建完成 本篇文章将叙述如何在上述基础上搭建laravel开发环境,这个其实 ...

  6. 跟我一起,利用bitcms内容管理系统从0到1学习小程序开发:一、IIS下SSL环境搭建

    缘起 1.从事互联网十来年了,一直想把自己的从事开发过程遇到的问题给写出来,分享给大家.可是可是这只是个种想法,想想之后就放下了,写出来的类文章是少之又少.古人说无志之人常立志,有志之人立长志.今天, ...

  7. Java开发微信公众号(一)---初识微信公众号以及环境搭建

    ps:1.开发语言使用Java springMvc+Mybaits+spring maven实现 2.使用微信接口测试账号进行本地测试 https://mp.weixin.qq.com/debug/c ...

  8. Android实战开发租赁管理软件(适配UI,数据的存储,多线程下载)课程分享

    亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系. 课程内容简单介绍 我们软件是基于移动设备的.所以我们必定的选择了安卓作为我们的开发工具.课 ...

  9. 用勤哲excel服务器开发旅行社管理软件

    做这个旅行社管理软件之前,旅行社给我的印象就是“拉客”与“接客”,业务模式应该比较简单.但做起这样一个旅行社管理软件,才发现麻雀虽小.五脏俱全,一个旅行社的运作,牵扯到的方方面面远远超出自己之前的理解 ...

随机推荐

  1. CProgressCtrl进度条控件实现进度滚动效果

    关于CProgressCtrl 控件的基本操作网上有很多资料,可我想实现进度条中进度滚动效果,即很多时候程序出现的等待或启动画面,如下图: 实现这个效果的函数为SetMarquee(_In_ BOOL ...

  2. Ubuntu 16.04 安装 postgresql 9.3

    1.Ctrl+Alt+t 打开终端 2.输入:wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo a ...

  3. springboot+websocket示例

    1.新建maven工程 工程结构如下: 完整的pom.xml如下: <?xml version="1.0" encoding="UTF-8"?> & ...

  4. zip / unzip 的用法

    zip 1.功能作用:压缩文件或者目录 2.位置:/usr/bin/zip 3.格式用法:zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [z ...

  5. 实现数组(java)

    一,数组 java中有对数组的数据结构:数组就是一个存放固定数据的结构. 数组的声明举例:int [] array=new int [3],与之相同的是private  in [ ] array; a ...

  6. HDU 5468 Puzzled Elena (dfs + 莫比乌斯反演)

    题意:给定一棵带权树,求每个点与其子树结点的权值互质的个数. 析:首先先要进行 dfs 遍历,len[i] 表示能够整除 i 的个数,在遍历的前和遍历后的差值就是子树的len值,有了这个值,就可以使用 ...

  7. visual studio的试用版评估期已结束 解决办法

    启动visual studio 2008后显示对话框:visual studio的试用版评估期已结束.下面有两个按钮,点第一个链接到微软网页,第二个直接关闭.虽然大多数高手已经知道如何解决,但对菜鸟来 ...

  8. js 上传文件夹

    最近公司做工程项目,实现文件夹上传. 网上找了一天,发现网上很多代码都存在相似问题,最后终于找到了一个符合要求的项目. 工程如下: 这里对项目的文件传输功能做出分析,怎么实现文件夹上传的,如何进行文件 ...

  9. CCommandLineInfo类

    ## CCommandLineInfo cmdInfo;//定义命令行 ParseCommandLine(cmdInfo);//解析命令行 // 调度在命令行中指定的命令.如果 // 用 /RegSe ...

  10. linux 修改ip 地址

    1./etc/sysconfig/network-scripts/ifcfg-网卡 如果是新网卡 自己写配置文档 ip a 即可查看网卡名字 (这是eno16777736) BOOTPROTO= dh ...