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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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语言编译器(linux平台下安装c语言环境)一

gcc : 语言的默认编译器     (ubuntu下输入gcc,可根据终端输出查看是否安装了gcc)

g++ : c++的默认编译器   (ubuntu下输入g++,可根据终端输出查看是否安装了g++)

在ubuntu下我们默认同时安装gcc和g++环境:

  sudo apt-get instal gcc

  sudo apt-get install g++

---------------------------------------------------------------------------------------------------------------------------

gcc编译一个后缀为.c的文件:    

  gcc  hello.c   (编译hello.c为一个默认的文件名)

  gcc -o hello  hello.c   (将hello.c编译为可执行文件hello)

 

以上是关于Linux下,GCC环境,C语言,使用Opencl, 如何做一个有Button的界面?的主要内容,如果未能解决你的问题,请参考以下文章

c语言编译器(linux平台下安装c语言环境)一

怎么在Redhat linux下搭建C编程环境

Linux 环境下安装 gcc 详细过程 以及安装 glibc

Linux 环境下安装 gcc 详细过程 以及安装 glibc

[Linux]初学者如何在Linux环境下配置gcc编程环境,并编写第一个C程序HelloWorld

linux下c语言gcc编译的时候如果不知道.c文件怎么链接的?