gtk安装教程(wsl/ubuntu)

零 架构

https://www.gtk.org/docs/architecture/

https://docs.gtk.org/gtk4/building.html

!!!!!!!!!!!!!!!!!!!书上有讲最小的依赖项

GTK本身 ./configure  make  但这是旧版的吧,需要用meson

GLIB   

从源码安装

如何解决依赖关系呢

根据依赖关系的要求,库的安装要按照这样的先后顺序进行:GLib、Atk、Cairo、Pango、Gtk+。

或者,安装的时候,缺少的东西,似乎自动下载源代码进行编译了

用package安装(不能安装指定版本,未必有)

自动

使用的是已经编译好的软件包。由于这种安装一般会自动解决各个软件包之间的依赖关系,进而安装或者更新相应的软件包,所以与源码安装 方式相比,二进制包的安装节省了编译代码所需要的时间,避免了源码安装的种种繁琐易错之处,对于安装者的要求也较低

examples!!!!!!!!!!!!!!!

1搭建环境

2基于examples学习

国际化、?、Xlib(跟x协议有关)的封装、数据结构

2d图形库、图形库、构建相关

所以应用程序,只需要包含gtk.h?

安装概述

1预构建的二进制包,operating system vendor 、 independent sources

2系统自带

3 自己构建,尤其是需要指定版本时,有办法直接安装历史版本的预构建包么?

链接没有,git的release呢

meson   ninja  参考readme进行构建

源码来源,a source distribution 、 a Git clone

mesao选项:

meson setup --prefix /opt/gtk builddir  模块的安装路径

meson configure,出现啥?跟Linux内核配置一样?有file解释有哪些选项

调试应用,跟编译应用时的选项有关;build types决定,能否调试底层库?

用默认配置就好

安装用的环境变量

运行应用用的环境变量:bin和库在哪里

从源码构建的顺序要求:

gtk需要啥:看我的.pc

依赖需要先编译啥:先看我的.pc

当没有时,似乎是从git上下载源码编译的


 


 

所以编译方式会有不同么,有些是gtk团队贡献的,gnome/gtk,一个庞大的开源社区

GLIB:

GLib是一个低级核心库,构成了GTK的基础。它为C语言提供数据结构处理、可移植性包装器和运行时功能接口,如事件循环、线程、动态加载和对象系统。

PANGO:

Pango是一个用于文本布局和呈现的库,强调国际化。它构成了GTK文本和字体处理的核心。

CAIRO:

Cairo是一个2D图形库,支持多种输出设备(包括X Window System、Win32),同时在所有媒体上产生一致的输出,同时在可用时利用显示硬件加速。

GDKPIXBUF

GdkPixbuf是一个用于加载各种格式图标等图形资产的库,如PNG、JPEG和GIF。

ATK

ATK是一组提供可访问性的接口的库。通过支持ATK接口,应用程序或工具包可以与屏幕阅读器、放大镜和替代输入设备等工具一起使用。

GObject Introspection

一个框架,用于将Introspection数据提供给语言绑定。

libpoxy

是一个抽象不同OpenGL库之间差异的库。GTK将其用于跨平台GL支持和自己的绘图。

一 安装gtk

1 非gtk维护的直接sudo

2 gtk维护的按顺序构建

meson 的配置,只用默认的不行么

缺少的依赖

自动下载源码了?

提前构建好?看一下配置文件需要哪些依赖

可以通过配置项目,减少依赖么

glib编译

glib本身有哪些依赖呢

The Meson Build system

The Absolute Beginner's Guide to Installing and Using Meson

INATALL.md,有依赖描述,也有编译选项描述

https://dickens.co.in/compile-gtk4-on-ubuntu-bionic-lts-focal-lts

这个在构建之前,已经安装了好多lib,这个应该也可以解决依赖关系

有的可以直接sudo下载,但是有的只能从github下载release吧,因为这种lib没有添加到源里?

meson compile -C _build   生成库?下面的是配置参数

生成失败:

xml-stripblanks preprocessing requested, but XMLLINT is not set, and xmllint is not in PATH

meson configure _build | grep -i xml ,没有啊

meson install -C _build 把库copy到哪里?把需要的文件拷贝到在配置时指定的安装目录中

哦哦哦,生成成功了,只是说跳过了预处理而已。

二wsl图形

三运行

四运行失败,尝试hv

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值