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

CodeBlocks与GTK开发环境搭建

[复制链接]
40405|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 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,然后运行:
pacman -Syy
pacman -Syuu
pacman -S mingw-w64-x86_64-gtk3
pacman -S mingw-w64-x86_64-toolchain base-devel


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


系统环境变量
win10下,直接在左下角搜索栏搜索:环境变量,即可找到设置环境变量的入口

进入环境变量设置
在系统变量找到Path,选中,进入编辑菜单
新建,输入C:\msys64\mingw64\bin


确定保存。

接下来完成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`


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


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

int main(void)
{
    GtkWidget *window;

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




使用特权

评论回复

打赏榜单

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

相关帖子

沙发
gaoyang9992006|  楼主 | 2021-6-7 17:06 | 只看该作者
如果安装GTK4,直接将上面安装的命令GTK3的改成GTK4即可
pacman -S mingw-w64-x86_64-gtk4

使用特权

评论回复
板凳
gaoyang9992006|  楼主 | 2021-6-7 17:55 | 只看该作者
如果使用GTK4,则编译器的配置不是直接更换3到4,而是
$ 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

推荐以管理员身份运行

命令请看顶楼


使用特权

评论回复
发新帖 本帖赏金 20.00元(功能说明)我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:西安公路研究院南京院
简介:主要工作从事监控网络与通信网络设计,以及从事基于嵌入式的通信与控制设备研发。擅长单片机嵌入式系统物联网设备开发,音频功放电路开发。

1951

主题

15890

帖子

206

粉丝