• 2024-06-23pkg-config
    一、pkg-configpkg-config是一个命令行工具,主要用于帮助开发者在编译依赖于特定库的软件时,自动获取和设置正确的编译器选项和链接器选项。它的主要作用在于简化编译过程,确保程序能够正确地找到所需的头文件和库文件,尤其是在库文件可能安装在非标准位置的情况下。pkg-config版本
  • 2024-06-17低功耗蓝牙ble开发(三)——bluez5接口及glib相关函数开发说明
    在D-Bus编程中,代理对象(proxyobject)是一个方便的抽象,用于简化与远程D-Bus服务的交互。代理对象代表远程D-Bus服务的某个对象,使得你可以像调用本地对象的方法一样调用远程对象的方法、获取属性以及监听信号。虽然使用代理对象并不是必须的,但它极大地简化了D-Bus编程,
  • 2024-04-26dotnet 8 版本与银河麒麟V10和UOS系统的 glib 兼容性
    刚刚好dotnet8的glib版本足够旧,可以运行本文记录于2024.04.26如果你阅读本文时间距离本文记录时间过远,可能本文记录的信息已失效dotnet根据dotnet的supported-os文档记录,当前的dotnet8是8.0.4版本,官方说明是支持Debian11及以上版本实际测试可以在debian1
  • 2024-01-22【glibc】glib 简介
    编译  编译  简介 glib可调试/configureCFLAGS=-g&&make&&makeinstallormakeCFLAGS=-g 简介原文地址: http://laiyuanyuan7.blog.163.com/blog/static/1527432120112104428767/glib库是Linux平台下最常用的C语言函数库,它具有很好的可移植性和实
  • 2024-01-22【glibc】glib库单向链表GSList介绍
    glib库单向链表介绍glib库里实现了一些基本的数据结构,比如单向链表,双向链表、队列、树、hash表和数组。这篇文章里我主要介绍在linux平台下使用glib库中的单向链表进行编程,以后的文章我会陆续介绍双向链表、队列和其它数据结构的用法。单向链表(即GSList)是glib库里最简单的容具,它
  • 2024-01-22【glibc】glib 数组
    编译:gcc-g-Wall-O0fuck.c-ofuck`pkg-config--libs--cflagsglib-2.0`1基本操作这里是向数组添加和删除数据的一些主要方法:#include<glib.h>#include<stdio.h>intmain(intargc,char**argv){GArray*a=g_array_new(FALSE,FALSE,sizeof(char*));
  • 2024-01-22【glibc】glib库双向链表GList介绍
    在上一篇文章里我介绍了glib库中单向链表的用法,这篇文章介绍glib库双向链表的用法,还是沿用上一篇文章的风格,采用在代码中加入注释来说明代码,最后贴出程序的运行结果,然后加以少量说明。双向链表与单向链表的区别是,从一个节点,不仅能访问到它的下一个节点,还能访问到它的上一个节点,其
  • 2024-01-22【glibc】glib库数组GArray介绍
    glib库中的数组GArray类型很像C++标准容器库中的vector容器。要使用glib库中的数组中需要声明一个指向GArray类型的指针。GArray的定义如下:structGArray{gchar*data;guintlen;};然后就可以在这个数组前或者数组后添加数据,添加数据的时候数组也会像C++中的vector容器
  • 2024-01-22【glibc】glib库hash表GHashTable介绍
    hash表是一种提供key-value访问的数据结构,通过指定的key值可以快速的访问到与它相关联的value值。hash表的一种典型用法就是字典,通过单词的首字母能够快速的找到单词。关于hash表的详细介绍请查阅数据结构的相关书籍,我这里只介绍glib库中hash表的基本用法。要使用一个hash表首先必
  • 2024-01-22【glibc】glib库队列GQueue介绍
    队列是一种向最后添加条目,从最前删除条目的数据结构,这种数据结构在处理按顺序到达的数据是很有用。glib库提供的队列GQueue是一个双端队列,它的实现基础是双向链表,所以它支持在队列的两端进行添加和删除,也支持很多其它的操作,比如在队列中进行插入和删除,但是我不推荐使用这样的功能
  • 2023-11-27No package 'glib-2.0' found
     001、./configure命令报错如下: Nopackage'glib-2.0'found 002、查找改文件[[email protected]]#find/-name"glib-2.0.pc"##只在conda环境中存在/root/anaconda3/pkgs/glib-2.69.1-he621ea3_2/lib/pkgconfig/glib-2.0.pc/root/anaconda3/li
  • 2023-11-20fsm.h:24:37: fatal error: glib.h: No such file or directory
     001、make编译报错如下:fsm.h:24:37:fatalerror:glib.h:Nosuchfileordirectory 002、查找该文件(base)[[email protected]]#find/-name"glib.h"##存在该文件,但是有可能是找不到 003、查找相关的系统安装包(base)[root@pc1exonerate-2.
  • 2023-11-11fsm.h:24:37: fatal error: glib.h: No such file or directory
     001、编译make提示错误如下:fsm.h:24:37:fatalerror:glib.h:Nosuchfileordirectory 002、解决方法(base)[[email protected]]#yuminstallglib* 003、查找该头文件(base)[[email protected]]#find/-name"glib.h"/root/anaconda3/p
  • 2023-09-09qemu中的glib库api试用--Apple的学习笔记
    一,前言qemu中有些glib库的api,我想学习试用下。二,编译及调试1.     使用glib库后编译报错,缺少头文件root@ubuntu:/work/study#gcct1.c-ot1t1.c:2:18:fatalerror:glib.h:Nosuchfileordirectory#include<glib.h>^compilationterminated.2.
  • 2023-08-01【glib】源码编译
    1、依赖安装zlib库##运行下述命令安装zlib$yuminstall-yzlib$cp/usr/local/lib64/libz.so/usr/lib64安装meson$yuminstall-ymeson2、安装从https://download.gnome.org/sources/glib/下载需要安装的版本。然后运行下述命令执行编译。$mesonsetup_b
  • 2023-07-20解决Xavier桌面共享闪退的问题
    一、修复DesktopSharing闪退问题表现:点击共享桌面应用,无法打开问题原因:系统bug解决方法:1、打开配置文件sudovim/usr/share/glib-2.0/schemas/org.gnome.Vino.gschema.xml2、在文件最后两个标签之前加一段key代码 3、编译生效sudoglib-compile-schemas/usr/share/gl
  • 2023-05-29windows下glib使用
     glib是linux下的基础库,封装了一些C接口。当然也跨平台了。但是在windows下搞了很久才能运行起来。首先去官方网站下载动态库http://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.12/glib-2.12.11.ziphttp://ftp.gnome.org/pub/gnome/binaries/win32/glib/2.12/glib-dev-2
  • 2023-04-06glib GVariant 3
    GVariant*value1,*value2,*value3,*value4;value1=g_variant_new("y",200);value2=g_variant_new("b",TRUE);value3=g_variant_new("d",37.5);value4=g_variant_new("x",G_GINT64_CONSTANT(99887766554433
  • 2023-04-06glib GVariant 2
    #include<stdio.h>#include<glib.h>#include<stdlib.h>#include<string.h>intmain(void){g_autoptr(GVariant)sessions=NULL;sessions=g_variant_new_parsed("[('2',uint321000,'nidhoe
  • 2023-04-06glib gmacros.h
    /*GLIB-LibraryofusefulroutinesforCprogramming*Copyright(C)1995-1997PeterMattis,SpencerKimballandJoshMacDonald**Thislibraryisfreesoftware;youcanredistributeitand/or*modifyitunderthetermsoftheGNULesserGeneral
  • 2023-04-06glib g_hash_table_lookup g_hash_table_remove
    这里会简单的说明一下例子中用到的api接口。GHashTable *g_hash_table_new(GHashFunc hash_func, GEqualFunc key_equal_func);功能:生成hash表。参数:hash_func创建hash值得函数,它为key创建一个hash值。这里可以用glib函数库里自带的g_str_hash。也可以用自
  • 2023-04-06glib 哈希调用
    glib:linux编译调用gccmain.c`pkg-config--libs--cflagsglib-2.0`-omain#include<stdio.h>#include<glib.h>#include<stdlib.h>#include<string.h>typedefstruct_Node{charkey[32];charvalue[32];}Node;staticvo
  • 2023-04-06glib GVariant
    GVariant*g_variant_new_boolean(gbooleanvalue){ gucharv=value; returng_variant_new_from_trusted(G_VARIANT_TYPE_BOOLEAN,&v,1);} typedefstruct_GVariantTypeGVariantType;/** *G_VARIANT_TYPE_BOOLEAN: * *Thetypeofavalueth
  • 2023-04-04详细介绍Glib 主事件循环轻度分析与编程应用
    glib是一个跨平台、用C语言编写的若干底层库的集合。编写案例最好能够结合glib源码,方便随时查看相关函数定义。glib实现了完整的事件循环分发机制。有一个主循环负责处理各种事件。事件通过事件源描述,常见的事件源文件描述符(文件、管道和socket)超时idle事件当然,也可以自
  • 2023-04-04glib库源码分析1
    /***g_main_loop_quit:*@loop:a#GMainLoop**Stopsa#GMainLoopfromrunning.Anycallstog_main_loop_run()*fortheloopwillreturn.**Notethatsourcesthathavealreadybeendispatchedwhen*g_main_loop_quit()iscalledwillstillbeexec