返回列表 发新帖我要提问本帖赏金: 20.00元(功能说明)

CodeBlocks与GTK开发环境搭建

[复制链接]
 楼主| gaoyang9992006 发表于 2021-6-7 16:45 | 显示全部楼层 |阅读模式
<
本帖最后由 gaoyang9992006 于 2021-6-8 08:10 编辑

#申请原创#@21小跑堂
GTK安装GTK下载地址

https://www.gtk.org/docs/installations/windows/
下载MSYS2
第 1 步: 下载匹配平台的MSYS2 安装程序,并按照安装说明操作。
默认安装位置为C:\msys64
第 2 步: 安装 GTK3 及其附属物。打开 MSYS2 shell,然后运行:
  1. pacman -Syy
  2. pacman -Syuu
  3. pacman -S mingw-w64-x86_64-gtk3
  4. pacman -S mingw-w64-x86_64-toolchain base-devel


最后这个安装比较慢,如果完整不完整,将会导致后面无法使用


系统环境变量
win10下,直接在左下角搜索栏搜索:环境变量,即可找到设置环境变量的入口
001.png
进入环境变量设置
在系统变量找到Path,选中,进入编辑菜单
新建,输入C:\msys64\mingw64\bin

002.png
确定保存。

接下来完成IDE的下载安装与配置,CodeBlocks20.03安装与GTK配置

下载 Code::Blocks
https://www.codeblocks.org/downloads/binaries/
选择这种具备mingw的:codeblocks-20.03mingw-setup.exe
安装完成后配置编译器
找到以下路径
Settings/Compiler/Compiler settings/Other compiler options
粘贴    `pkg-config --cflags gtk+-3.0`

003.png
Settings/Compiler/Compiler settings/Linker settings/Other linker options:
粘贴    `pkg-config --libs gtk+-3.0`

004.png
单击OK保存退出。
重启CodeBlocks
新建C语言工程,并选择控制台程序模式
将会自动生成一个helloworld程序
替换程序源码为
  1. #include <gtk/gtk.h>

  2. int main(void)
  3. {
  4.     GtkWidget *window;

  5.     gtk_init(NULL,NULL);
  6.     window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
  7.     gtk_widget_show_all(window);
  8.     gtk_main();
  9.     return 0;
  10. }
运行一个简单的GTK空例子,看看能否生成GTK窗口程序
保存,构造工程,运行
005.png



打赏榜单

21小跑堂 打赏了 20.00 元 2021-06-08
理由:恭喜通过原创文章审核!请多多加油哦!

 楼主| gaoyang9992006 发表于 2021-6-7 17:06 | 显示全部楼层
如果安装GTK4,直接将上面安装的命令GTK3的改成GTK4即可
  1. pacman -S mingw-w64-x86_64-gtk4
 楼主| gaoyang9992006 发表于 2021-6-7 17:55 | 显示全部楼层
如果使用GTK4,则编译器的配置不是直接更换3到4,而是
  1. $ cc `pkg-config --cflags gtk4` hello.c -o hello `pkg-config --libs gtk4`

也就是到GTK4的时候,不用再带+号了。
相关参考访问https://developer.gnome.org/gtk4/stable/gtk-compiling.html
目前还搜不到GTK4在CodeBlocks上的配置,应该算是原创吧。
 楼主| gaoyang9992006 发表于 2021-6-8 21:39 | 显示全部楼层
MSYS2默认安装在C盘
C:\msys64
重新启动的话,运行下面的命令行文件
msys2_shell.cmd
123.png
推荐以管理员身份运行
124.png
命令请看顶楼


您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:如果你觉得我的分享或者答复还可以,请给我点赞,谢谢。

2046

主题

16351

帖子

222

粉丝
快速回复 在线客服 返回列表 返回顶部
个人签名:如果你觉得我的分享或者答复还可以,请给我点赞,谢谢。

2046

主题

16351

帖子

222

粉丝
快速回复 在线客服 返回列表 返回顶部