基于GTK+3 开发远程控制管理软件(C语言实现)系列二 Centos7下开发环境搭建
一、安装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下开发环境搭建的更多相关文章
- 基于GTK+3 开发远程控制管理软件(C语言实现)系列 一 开篇
近期趁公司没项目来,想学习一下C和GTK+3 ,顺道再学习一下Linux下有关网络编程方面的知识. 一.学习知识: 1.C基本语法 2.GTK+3 API学习 GUI相关知识学习 3.Glade使用及 ...
- 基于centos7下appium环境搭建
事件背景: 前几日在群里看到关总说他的server端是搭建在linux环境下,包括对客户端与服务端的交互处理,感觉整体思路清晰可鉴,于是就想尝试,动手实践,接着从环境搭建开始搞起,于是就有了这篇文章, ...
- 基于GTK+3 开发远程控制管理软件(C语言实现)系列三 Windows7开发环境搭建
一.介绍与准备 考虑到目标客户端基本都是windows客户端,所以此次开发环境将搭建在windows7下,相关开发工具有Msys2 和 Eclipse For C/C++ Msys2 是msys的升级 ...
- 仿OpenStack开发云计算管理软件
仿OpenStack开发云计算管理软件 使用Python语言开发一套类似OpenStack的云计算管理平台LouCloud,具备基本的用户,服务器,镜像与 虚拟机管理功能,学习IaaS,虚拟化,Lib ...
- win7下docker环境搭建nginx+php-fpm+easyswoole+lavarel+mysql开发环境
win7环境基础在上一篇win7下docker环境搭建nginx+php-fpm+easyswoole开发环境中已经详细叙述搭建完成 本篇文章将叙述如何在上述基础上搭建laravel开发环境,这个其实 ...
- 跟我一起,利用bitcms内容管理系统从0到1学习小程序开发:一、IIS下SSL环境搭建
缘起 1.从事互联网十来年了,一直想把自己的从事开发过程遇到的问题给写出来,分享给大家.可是可是这只是个种想法,想想之后就放下了,写出来的类文章是少之又少.古人说无志之人常立志,有志之人立长志.今天, ...
- Java开发微信公众号(一)---初识微信公众号以及环境搭建
ps:1.开发语言使用Java springMvc+Mybaits+spring maven实现 2.使用微信接口测试账号进行本地测试 https://mp.weixin.qq.com/debug/c ...
- Android实战开发租赁管理软件(适配UI,数据的存储,多线程下载)课程分享
亲爱的网友,我这里有套课程想和大家分享,假设对这个课程有兴趣的,能够加我的QQ2059055336和我联系. 课程内容简单介绍 我们软件是基于移动设备的.所以我们必定的选择了安卓作为我们的开发工具.课 ...
- 用勤哲excel服务器开发旅行社管理软件
做这个旅行社管理软件之前,旅行社给我的印象就是“拉客”与“接客”,业务模式应该比较简单.但做起这样一个旅行社管理软件,才发现麻雀虽小.五脏俱全,一个旅行社的运作,牵扯到的方方面面远远超出自己之前的理解 ...
随机推荐
- mongodb知识积累
1: 安装mongodb https://www.cnblogs.com/zhangdaicong/p/7492494.html 2:配置文件 vi /etc/mongodb.conf https:/ ...
- 4-具体学习git--分支
图形的方式显示日志:git log --oneline --graph 两种方式建立分支: 1.git branch dev,建立一个dev的分支 git branch 查看分支有哪些,星号在当前分支 ...
- 第02章:MongoDB安装
①下载 https://www.mongodb.com/ 下载所需版本的tar.gz ②解压安装 tar -zxvf mongodb-3.2.12.tar.gz mv -r mongodb-3.2. ...
- Jersey RESTful WebService框架学习(八)maven搭建
一.pom文件: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www. ...
- AngularJS实战之ngAnimate插件实现轮播
第一步:引入angular-animate.js 第二步:注入ngAnimate var lxApp = angular.module("lxApp", [ 'ngAnimate' ...
- 快速创建一个 spring mvc 示例
1. 创建一个 servlet 项目 参考 http://www.cnblogs.com/zno2/p/5908589.html 2. 引入 spring mvc 依赖 <dependency& ...
- 20145232 韩文浩 《Java程序设计》第9周学习总结
教材学习内容总结 学习目标 了解JDBC架构 掌握JDBC架构 掌握反射与ClassLoader 了解自定义泛型和自定义枚举 会使用标准注解 JDBC标准主要分为两个部分:JDBC应用程序开发者接口和 ...
- stm32的gpio函数介绍
一.gpio_init函数 void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct) 调用时的格式一般是例如 RCC ...
- _ZNote_Qt_对话框_模态非模态
QDialog(及其子类,以及所有Qt::Dialog类型的类)的对于其 parent 指针都有额外的解释:如果 parent 为 NULL,则该对话框会作为一个顶层窗口,否则则作为其父组件的子对话框 ...
- noip第4课作业
1. 计算邮资 [问题描述] 根据邮件的重量和用户是否选择加急计算邮费.计算规则:重量在1000克以内 (包含1000克),基本费8元.超过1000克的部分,每500克加收超重费4元,不足500 ...