Mac上使用clion基于cmake 开发gtk gtk+

2023-05-16

# gtk/gtk+度娘介绍:

## GTK+(GIMP Toolkit)是一套源码以LGPL许可协议分发、跨平台的图形工具包。最初是为GIMP写的,已成为一个功能强大、设计灵活的一个通用图形库,是GNU/Linux下开发图形界面的应用程序的主流开发工具之一。并且,GTK+也有Windows版本和Mac OS X版。

# 安装:

* 由于 是使用brew安装的,所以必须安装brew

* brew install gtk+ //这是2.0版本

* brew install gtk+3 //这是3.0版本

* brew install pkg-config //这个目前还不懂干什么,但和配置有关,下面有用到

# 打开clion,并创建工程 demo

./main.cpp

#include <stdio.h>
#include <gtk-3.0/gtk/gtk.h>
static void activate(GtkApplication *app, gpointer user_data)
{
    GtkWidget *window;
 
    window = gtk_application_window_new(app);
    gtk_window_set_title(GTK_WINDOW(window), "Window");
    gtk_window_set_default_size(GTK_WINDOW(window), 400, 200);
    gtk_widget_show_all(window);
}
 
int main(int argc, char **argv)
{
    GtkApplication *app;
    int status;
 
    app = gtk_application_new("org.gtk.example", G_APPLICATION_FLAGS_NONE);
    g_signal_connect(app, "activate", G_CALLBACK(activate), NULL);
    status = g_application_run(G_APPLICATION(app), argc, argv);
    g_object_unref(app);
 
    return status;
}

./CMakeLists.txt  //配置文件

cmake_minimum_required(VERSION 3.13)
project(demo CPP)
 
set(CMAKE_C_STANDARD 14)
find_package(PkgConfig REQUIRED)
pkg_check_modules(GTK3 REQUIRED gtk+-3.0)
 
include_directories(${GTK3_INCLUDE_DIRS})
link_directories(${GTK3_LIBRARY_DIRS})
 
add_definitions(${GTK3_CFLAGS_OTHER})
add_executable(demo main.cpp)
 
target_link_libraries(demo ${GTK3_LIBRARIES})

# 编译

* 如有 *.pc文件找不到,可以再安装 brew install * 并测试,如果还是找不到即可到brew安装此包的路径下查询,并将*.pc文件copy到pkgconfig连接目录下,

/usr/local/lib/pkgconfig/

// 本人在测试时缺少了 libffi.pc

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Mac上使用clion基于cmake 开发gtk gtk+ 的相关文章

  • CMake 创建可执行文件时未定义的引用

    我是 CMake 新手 我正在尝试编译我的项目 该项目创建了一些静态库和一些可执行文件 下面是我拥有的文件结构的示例 PROJECT SRC 子项目 1该文件夹的 cpp 所有源文件 和CMakeLists txt 1 创建静态库 子项目
  • 如何在 Java Gnome/GTK 程序中使用 Glade UI(.glade 文件)?

    我在 Internet 上进行了一项研究 寻找教程 文档来解释如何在 Java Gnome 项目中使用 Glade 中设计的 UI 但没有成功 我已经知道如何使用 Java Gnome GTK 从代码创建 UI 不管怎样 我想使用我在 Ja
  • 将 Doctest 与代码一起使用时将实现放在哪里

    我在用着doctest https github com onqtam doctest用于我的 C 项目中的测试 我想将测试代码与我的实现放在一起 正如库所说是可能的 但我似乎不知道如何处理 doctest 实现代码 我有一个doctest
  • 将 dll/lib 链接到 cmake 项目

    我试图将库链接到我的 cmake 项目 但遇到链接器错误 我花了 2 个小时尝试解决这个问题 并创建了一个简单的项目 在其中对所有路径进行了硬编码 CMAKE MINIMUM REQUIRED VERSION 3 0 PROJECT Tes
  • 对于 pygtk 应用程序来说,什么是好的嵌入式浏览器?

    我计划在我的 pygtk 应用程序中使用嵌入式浏览器 并且我正在 gtkmozembed 和 pywebkitgtk 之间进行辩论 两者之间有什么引人注目的区别吗 还有我不知道的第三种选择吗 应该注意的是 我不会使用它来访问网络上的内容 我
  • CMake 警告:无法为目标生成安全的链接器搜索路径

    在为 pcl 项目运行 CMake 时 我收到一条警告消息 Configuring done CMake Warning at CMakeLists txt 12 add executable Cannot generate a safe
  • 如何在 CMake Makefile 中包含 OpenCV 库

    我希望你可以帮助我 我有一个简单的 CMakeLists txt 以便在 Leopard 10 5 8 上构建我的项目 我正在使用 CMake 2 8 1 目前这是代码 cmake minimum required VERSION 2 8
  • 使用cmake交叉编译gRPC

    我正在尝试使用 cmake 交叉编译 gRPC 我实际上做到了 不幸的是 我的方法涉及在 CMakeLists txt 内部进行修改 问题是 当我尝试编译 gRPC 时 它使用的是他刚刚编译的 protobuffer 它无法在 x86 计算
  • VS 2010 和 CMake:“rc”未被识别为内部或外部命令

    我正在尝试使用 VS 2010 和 CMake 在 Windows 10 Home 上构建一个项目 我收到以下错误 zutil c lib nologo out zlib lib adler32 obj compress obj crc32
  • Cmake:链接到静态内部库而不导出它

    我有一个具有以下结构的项目 path to my project CMakeLists txt internal libs internal lib1 libs lib1 lib2 lib1是一个静态库 lib2是一个静态库 interna
  • CMake 错误:“add_subdirectory 未给出二进制目录”

    我正在尝试将 Google Test 集成到更大项目的子项目中 但找不到令我满意的解决方案 我有两个限制 Google Test 的源代码已经位于项目结构中的某个位置 因此不能使用 URL 从 git 存储库下载它 Google Test
  • CMake 添加对安装目标的依赖

    我在使用cmake时遇到以下问题 我使用 UseDoxygen 来自http tobias rautenkranz ch cmake doxygen http tobias rautenkranz ch cmake doxygen 为我的图
  • GTK+ (GTKSharp) 在 Windows 中性能不佳

    在我的跨平台 Mono C 项目中 我使用 GTK 作为 UI 然而我注意到的一件事是 在我的 Archlinux 上网本上 性能非常快 因此诸如鼠标悬停和重新绘制小部件等事件都非常快 与双核CPU上的Windows 7 相比 性能确实很弱
  • 我可以安装共享导入库吗?

    我有一个外部项目和一个导入的共享库 include 目录和 implib 都可以正常工作 但尝试安装共享库 dll 失败并出现以下错误 install TARGETS given target my shared lib which doe
  • 如何使用cmake自动构建第三方库

    我在寻找什么 下载库 提取它 应用自定义补丁 运行配置 运行构建命令 我正在尝试构建的库是 Openssl Boost Thrift C ares Curl Pcre Nginx ICU JsonCPP 我想我可以使用外部模块做这些事情 h
  • 是否可以让 cmake 构建文件(CMakeLists.txt)不在 CLion 的根目录中

    是否可以让 cmake 构建文件 CMakeLists txt 不在 CLion 的根目录中 我目前正在开发的项目中 cmake 构建文件不在 CLion 项目的根目录中 在 out Debug 目录中 我希望 CLion 打开该项目的根目
  • 在菜单中显示 gtk.Calendar?

    我想构建一个上下文菜单 其中包含用于选择日期的菜单项 用例是在树视图中选择一堆项目 然后为所有项目设置新的截止日期 由于菜单项是 Gtk Bin 因此我可以指定任何小部件来代替标签 然而 我似乎无法interact与小部件 如果我单击菜单上
  • 奇怪的函数参数名称行为

    我问了一个关于cmake和传递变量的问题here https stackoverflow com questions 14375519 cmake how to write a nice function that passes varia
  • CMake第三方库安装

    我是编程新手 对于我的研究项目 我需要安装一个第三方库以便与 CMake 一起使用 GitHub项目 https github com cpp io2d P0267 RefImpl blob master BUILDING md 我在我的电
  • 仅在选择时读取 GTK 单选按钮信号

    GTK 的 切换 信号在选择单选按钮时触发 但在此之前 它也会在取消选择先前选择的单选按钮时触发 我正在使用一个使用单选按钮的 GUI 每个单选按钮代表一组实体 一对 切换 信号中的第一个正在触发 GUI 中其他字段的一些不需要的更新 我只

随机推荐

  • PyCharm上传本地项目到GitLab - MacOS版

    登录GitLab 创建一个项目 填写项目名称 xff0c 选择显示级别 复制GitLab的这个项目地址 xff0c 后面会在PyCharm里面用到 PyCharm操作 从PyCharm打开本地项目 xff0c 然后创建本地代码仓库 xff0
  • 【Python】使用Scrapy 网络爬虫框架Demo

    安装 使用PyCharm安装 xff0c 进入到PyCharm gt Preferences gt Project Interpreter xff0c 点击加号 查询框输入 Scrapy xff0c 点击 Install Package 使
  • Docker+Selenium Grid运行UI自动化

    简介 使用Selenium Grid可以分布式运行UI自动化测试 xff0c 可以同时启动多个不同的浏览器 xff0c 也可以同时启动同一个浏览器的多个session 这里使用Docker Compose来同时启动不同浏览器的容器和Sele
  • python-生成HTMLTestRunner测试报告

    一 安装HTMLTestRunner HTMLTestRunner 是 Python 标准库的 unittest 模块的一个扩展 xff0c 它可以生成 HTML的 测试报告 首先要下 HTMLTestRunner py 文件 xff0c
  • Jenkins发送测试报告邮件

    简介 总结怎么使用Jenkins执行自动化测试后发送测试报告邮件 一 系统设置 1 在Jenkins安装Email Extension Plugin插件 xff0c 如下图 xff1a 2 设置Extended E mail Notific
  • Java读取csv文件

    简介 xff1a 总结用java通过读取csv文件方法 xff0c 为用csv文件来做数据驱动测试提供解决方案 创建csv文件 用WPS表格或excel创建文件 xff0c 填写数据 xff0c 另存为选择CSV格式进行保存 xff0c 如
  • MikroTik RouterOS上网设置

    本文是一篇关于MikroTik Routeros上网配置的示例文章 xff0c 适合有一定RouterOS路由器配置基础的同学学习 网络拓扑如下图 xff0c 家用WIFI已配置并正常上网 xff0c 接口地址如图所示 xff08 大家凑合
  • 搭建PHP开发环境(Apache+PHP+MySQL)

    简介 xff1a 总结在Windows环境搭建PHP开发环境 xff08 Apache 43 PHP 43 MySQL xff09 安装Apache 1 下载Apache xff0c 地址 xff1a http www apacheloun
  • Java读取Excel文件

    简介 xff1a 总结Java读取Excel文件 添加maven依赖 lt dependency gt lt groupId gt org apache poi lt groupId gt lt artifactId gt poi ooxm
  • 【python】Pytest+Request+Allure+Jenkins 接口自动化测试Demo

    摘要 xff1a 用postman的一个接口为例子 xff0c 做了一个接口自动化测试 xff0c 使用Pytest 43 Request 43 Allure 43 Jenkins 框架 xff0c 现在加以总结 技术栈 xff1a pyt
  • windows django生产用

    mod wsgi 下载 注意 xff1a 下载mod wsgi so版本需和python和apache匹配 http www lfd uci edu gohlke pythonlibs mod wsgi 我之前下过一个对应apache22和
  • 2021-02-19

    升级从版本5 5到6 x的VMware ESXi 转自 xff1a https www cisco com c zh cn support docs servers unified computing vmware esxi cisco u
  • zabbix 5.4在 CentOS8.3中的安装(mysql8/php7)

    0x1 安装 zabbix包及各种必用软件和依赖 rpm Uvh https repo zabbix com zabbix 5 4 rhel 8 x86 64 zabbix release 5 4 1 el8 noarch rpm dnf
  • win32 编程中,在调试窗口中显示内容的方法

    void myprintf string x TCHAR a 64 sprintf s a 34 这是方向 xff1a s n 34 x OutputDebugString a
  • win32下 多线程(多一个线程)GDI 坦克大战

    一个字 累并快乐 xff0c 兴趣索然 追回梦想 学习WINDOWS编程2个月 下一步 xff1a DIrectX9 自己加载资源 xff1a 素材在下面自行下载 xff08 修改成BMP格式 xff09 resource h NO DEP
  • Mac OS + Python3.7 + Django2.1 + uwsgi + nginx + mysql web发布环境搭建

    参考 xff1a http www mamicode com info detail 2073464 html 1 安装 brew https brew sh usr bin ruby e 34 curl fsSL https raw gi
  • Mac版 PyCharm 2018.3.3 激活 2019.1.12

    https blog csdn net qq 27686779 article details 78870816 https blog csdn net jayo70 article details 84622014
  • ubuntu 20.04安装mysql 8.0.28

    最近在ubuntu20 04安装配置mysql 8 0 28 时遇到了一点小麻烦 xff0c 而这些问题应该是高手不屑一顾 xff0c 而新手又无从下手的 xff0c 现在我把我的解决过程写下来 xff0c 以备后用 1 安装 span c
  • 手写插件:使 Chrome 增加 右键菜单项 实现多搜索

    参考 xff1a https www cnblogs com kevin Y p 10119838 html 1 随地创建一个文件包并命名 2 文件包内创建以下文件 xff1a 2 1 manifest json 34 manifest v
  • Mac上使用clion基于cmake 开发gtk gtk+

    gtk gtk 43 度娘介绍 xff1a GTK 43 xff08 GIMP Toolkit 是一套源码以LGPL许可协议分发 跨平台的图形工具包 最初是为GIMP写的 xff0c 已成为一个功能强大 设计灵活的一个通用图形库 xff0c