glib-2.40编译安装

1 安装glib库所需要的依赖库:

libffi-3.0.0.tar.gz
glib-2.40.0.tar.xz

安装依赖库libffi:

tar xf libffi-3.0.0.tar.gz
cd libffi-3.0.0
./configure
make
make install
 

配置环境变量:

vim /etc/profile

添加下面的内容:

export LIBFFI_CFLAGS=-I/usr/local/lib/libffi-3.0.0/include
export LIBFFI_LIBS=/usr/local/lib/libffi.la
export C_INCLUDE_PATH=/usr/local/lib/libffi-3.0.0/include/

使配置文件立即生效

source /etc/profile

安装glib库:

configure 配置选项
--enable-debug=no 选项:默认是mini模式,在release的时候应该使用该选项
--disable-included-printf 选项:这个选项要谨慎使用,可能会造成某些 printf 家族的函数不能使用

tar xf glib-2.40.0.tar.xz
cd glib-2.40.0
./configure --enable-debug=no
make
make install
 

配置环境变量:

vim /etc/profile

添加下面的内容:

export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig

使配置文件立即生效

source /etc/profile

2 使用 glib 库,测试字符串使用为例

vim test.c

#include <stdio.h>
#include <glib.h>
int main(int argc, char *argv[])
{
GString *teststr = NULL;
teststr = g_string_new("1234");
printf ("str is:%s\n", teststr->str);
printf ("len is:%d\n", teststr->len);
g_string_free (teststr, TRUE);
teststr = NULL;
g_return_val_if_fail (teststr, NULL);
return 0;
}
gcc -I /usr/local/include/glib-2.0/ -I /usr/local/lib/glib-2.0/include/ -L/usr/local/lib -lglib-2.0
./a.out

这里运行可以发现断言会被打印,glib提供了关闭断言的开关

在使用glib库的程序中屏蔽断言需要在编译时加入开关

gcc -I /usr/local/include/glib-2.0/ -I /usr/local/lib/glib-2.0/include/ -DG_DISABLE_CAST_CHECKS -DG_DISABLE_ASSERT -DG_DISABLE_CHECKS -lglib-2.0

运行程序后断言不打印

注意:使用glib库的时候最好是不要关闭断言,因为断言是预防程序 coredump 的最后屏障

时间: 2024-12-24 12:15:02

glib-2.40编译安装的相关文章

SuSE11安装MySQL5.6.40:编译安装方式、单实例

摘要:SuSE11sp3 64位操作系统. MySQL5.6.40 编译安装.单实例 注:kingtry是我的主机名 一.环境准备 操作系统:SuSE版本11sp3,64位 kingtry:~ # uname -a Linux kingtry 3.0.76-0.11-default #1 SMP Fri Jun 14 08:21:43 UTC 2013 (ccab990) x86_64 x86_64 x86_64 GNU/Linux kingtry:~ # cat /etc/SuSE-relea

64bit centos 6.5 编译安装 LAMP 环境

MySQL5.5.40 编译安装 请参考 MySQL5.5.40编译安装 Apache 2.4.10 编译安装 请参考 Apache 2.4.10 编译安装 PHP 5.4.33 编译安装 下面我们开始编译安装PHP5.4.33 首先下载源码包到用户目录下, 下载PHP5.4.33 也可以使用命令行下载: [[email protected] ~]# wget http://kr1.php.net/get/php-5.4.33.tar.bz2/from/this/mirror 然后解压源码 [[

编译安装php-5.4.40

编译安装php-5.4.40 场景一:php编译为httpd的模块: 编译安装httpd-2.4: apr,apr-util httpd-2.4 mariadb-5.5.42 注意:不用使用5.5.40除非自己去打补丁;与php结合会有问题; 安装php: 额外安装:libxml2-devel, libmcrypt-devel, bzip-devel 方法一: 我挂载的是CentOS-6.6-x86_64-bin-DVD1 这个安装光盘: # mount /dev/cdrom /media # 

编译安装mysql5.6.40

1.官网下载mysql 2.安装依赖包 yum -y install make gcc-c++ cmake bison-devel ncurses-devel libaio yum install libaio libaio-devel -y yum install perl-Data-Dumper -y yum install net-tools -y tar -zxvf mysql-5.6.40.tar.gz cd mysql-5.6.40 # 创建mysql用户组 groupadd mys

编译安装mysql-5.6.40

环境说明 系统版本 ????CentOS 7.2 x86_64 软件版本 ????mysql-5.6.40 [root@db01 ~]# mkdir -p /service/tools [root@db01 ~]# mkdir /application [root@db01 ~]# yum install ncurses-devel libaio-devel cmake gcc gcc-c++ glibc openssl-devel bison-devel -y [root@db01 ~]# u

40 用户权限管理及查询缓存、索引和explain、MariaDB存储引擎及编译安装、MySQL中的事务

03 MariaDB存储引擎及编译安装 CentOS6.x下安装Mariadb #准备MaridDB存储分区 [[email protected] ~]# fdisk /dev/sda WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u').

Ubuntu14.04 64Bit 中从源码编译安装Gtk-3.16.3

(一)从源码编译安装GTK开发环境 为了便于获取源码,截止2015-05-26的gtk相关源码的存放于网盘中: 1. 相关网址 1)GTK+ Website 2)Compiling the GTK+ libraries  Overview of GTK+ and its Libraries 2.下载和编译源码包 1)下载源码:  (版本:gtk+-3.16.3.tar.xz) 2)解压配置gtk源码 $ tar xvfJ gtk+-3.16.3.tar.xz $ cd gtk+-3.16.3/

编译安装MariaDB-10.0.21

一.源码编译安装gcc-5.1.0 1.下载gcc源码包 Download (HTTP): http://ftpmirror.gnu.org/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2 Download (FTP): ftp://ftp.gnu.org/gnu/gcc/gcc-5.2.0/gcc-5.2.0.tar.bz2 2.解压压缩包 1 [[email protected] ~]# tar -xf  gcc-5.1.0.tar.gz 3.下载编译所需的依赖包 这个步骤有

CentOS6.5 从源码编译安装 GCC-4.9.1 全程实录《第二部分:编译,安装,测试》

前言 GCC(GNU Compiler Collection,GNU编译器合集)是linux以及其他类UNIX平台上进行开源项目,软件开发等必不可少的工具链组成之一(工具链的其他成员包括 binutils,Glibc,libstdc++ 等) 另 外,对于程序员以及系统管理员而言,经常需要从软件的源码手动编译安装,而不论是configure脚本,还是make工具/makefile文件,最终 都需要调用gcc(或者其它编译器)来进行实际的编译工作,因此,经常需要使用gcc的新版特性,并且与旧版gc