c语言使用GTK+,是个什么?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言使用GTK+,是个什么?相关的知识,希望对你有一定的参考价值。

参考技术A GTK+(GIMP
Toolkit)是一套跨多种平台的图形工具包,按LGPL许可协议发布的。虽然最初是为GIMP写的,但目前已发展为一个功能强大、设计灵活的一个通用图形库。特别是被GNOME选中使得GTK+广为流传,成为Linux下开发图形界面的应用程序的主流开发工具之一,当然GTK+并不要求必须在Linux上,事实上,目前GTK+已经有了成功的windows版本.
简单点说,你安装了gtk开发包后,就可以用其库函数写出带有图形界面的程序。

Linux下,GCC环境,C语言,使用Opencl, 如何做一个有Button的界面?

现在关心的是能不能做,是不是必须用GTK等库。
作的话大致的方法是什么。
Arm上的东西。

OpenCL 是个计算函数库。和 UI 无关。
C 语言开发 GUI ,要看你到底想怎么实现,是在字符界面?图形界面。什么软件库支持环境?

Xorg 图形环境下,GTK 和 QT 都可以方便实现。自己写实现库直接调用 xorg 的功能也可以,不过 xorg 的功能很简单,自己写图形库会累死,但是依赖环境很小。
字符界面,你可以跑 framebuffer 的图形库(又都什么支持不知道,我只知道 QT-E 支持),也可以用 ncurses ,我记得他支持伪窗口界面。

你这前提条件说的太少了,真不好确定你到底需要什么。
不过 arm 下面跑 opencl ?这个有什么意义吗?这种专门跑计算的东西,在 arm 上面是不是性能更渣呢……追问

谢谢你的说明!
1要做的是一个大型打印机的控制面板(Panel),暂时只是个demo。
2对方还作了几种应用方式(Html5,Java),基础的操作系统是Linux。
3我要做的部分是Linux,Opencl。我也没有理解怎么只告诉我了这两个条件,感觉缺条件。
4arm中应该有GPU,分布式的计算很潮流。可能还有节能的问题。

5肯定是图形界面。软件库,前提条件正在调查中,只能我找出各种可能,请对方选择。

追答

感觉这个东西不需要 openCL 支持啊……难道你的这个打印机是特殊功能需要连接一个大型计算机来做一些高级计算来进行图形的输出?还是说他们弄错了是 open 别的?
如果是控制面板,我建议用 QT-E ,也就是 QT 的嵌入式环境。
这个QT 嵌入式环境是基于帧缓冲的,不是 xorg 那种 C/S 架构,效率和响应速度都还可以。
而且你的打印机应该会需要实时系统来工作吧?毕竟进行机械的控制需要足够快的响应速度。
不过 QT 嵌入式好像软件协议有商业成分,你这个东西做出来需要买 QT 的授权。
帧缓冲的图形界面,除了 QT 还有别的,现在有很多小型的 GUI 函数库支持帧缓冲的。好像 GTK 也有支持帧缓冲的版本。我非常不建议你用 xorg 来实现,运行模式会导致效率不高的。
节能的问题应该和 GPU 还有 opencl 没关系……

参考技术A 就是GUI吧 你可以选择QT

以上是关于c语言使用GTK+,是个什么?的主要内容,如果未能解决你的问题,请参考以下文章

Linux下,GCC环境,C语言,使用Opencl, 如何做一个有Button的界面?

qt 只能写c++程序吗,不能写c语言的程序吗,要写c只能用 gtk吗?

文本编辑器使用啥语言?

linux下使用C语言进行GTK桌面程序开发

Linux下,GCC环境,C语言,使用Opencl, 如何做一个有Button的界面?

linux c编程?