fbv (FrameBuffer Viewer)编译指南
fbv:FrameBuffer image Viewer,可在控制台下查看jpg,png,gif,bmp等格式的图片,可以结合FBTerm在控制台设置背景图片,也可在编译在嵌入式设备上使用。但是ubuntu源里没有提供,需下载fbv的源码编译,依赖于下面三个库,(源码里包含相应的头文件,所以不能只是简单的从有这些库的电脑中复制过来这几个库,还要有头文件),你可以只下载其中一个库只查看某个格式的图片,需要修改下Makefile和main.c。
下载安装libjpeg:
wget http://www.ijg.org/files/jpegsrc.v8d.tar.gz
下面的需要root权限:
tar -zxvf jpegsrc.v8d.tar.gz -C /usr/local/src
cd /usr/local/src/jpeg-8d
./configure && make && make install
下载安装libpng:
从http://www.libmng.com/pub/libpng.html
注:libpng需要zlib,ubuntu源里是zlib1g,zlib1g-dev
libungif可从源安装或http://sourceforge.net/projects/giflib/files/
系统默认支持bmp,根据编译时的错误提示去修改main.c和makefile中当前不支持的。
png库中的结构体发生了变化,若使用的是较高版本需修改fbv1.0中png.c中的部分代码,否则make时出错。
#if (PNG_LIBPNG_VER < 10500)
if (setjmp(png_ptr->jmpbuf))
{
png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
if(rp) free(rp);
fclose(fh); return(FH_ERROR_FORMAT);
}
#else
if (setjmp(png_ptr))
{
png_destroy_read_struct(&png_ptr, &info_ptr, (png_infopp)NULL);
if(rp) free(rp);
fclose(fh); return(FH_ERROR_FORMAT);
}
#endif
顺利安装后便可查看jpg和bmp,如:fbv xxx.jpg(会是全屏),按q退出。
当你尝试在控制台打开png图片时可能发现未找到libpng16.so.16等,但是用whereis,grep等查找到,可以运行sudo ldconfig。
打包成deb的方法:checkinstall -D(也许你先要下载checkinstall)
下面附上32位的deb包(去掉后缀zip)(可看png,jpg,bmp):fbv_1.0b-1_i386.deb.zip
有兴趣还可以使用fbgrab(fbcat的一个工具)来截图:fbgrab screenshot.png
另外可以用cat /dev/fb0 > screen.raw 来抓取控制台/dev/tty中的原始数据,fbgrab实际上是将其转换为png格式。要想查看刚捕获的,可以cat screen.raw > /dev/tty.
fbv (FrameBuffer Viewer)编译指南的更多相关文章
- openjdk 完全编译指南
从openjdk.java.net下载openjdk的软件包,你就获得了所有相关的源码. 强烈建议首先仔细看懂 README-builds.html 指南. 在执行 make all 之前,首先要 执 ...
- HoloLens开发手记- SpectatorView for iOS编译指南
微软前两天发布了HoloLens 2,给MR开发带来了新的希望,全面的性能和显示效果提升,让人期待. 去年推出的预览版的全新SpectatorView for iOS解决方案,这允许我们直接使用带AR ...
- 代码混淆防止APP被反编译指南
本文来自网易云社区 安卓App安全包含很多内容,包括混淆代码.整体Dex加固.拆分 Dex 加固.虚拟机加固等方面.事实上,这些内容也是国内近几年Android App安全保护的一种主要趋势. 混淆代 ...
- 开源库SRT编译指南
SRT(Secure,Reliable,Transport)是Haivision公司开发的一套开源媒体传输协议,用于在不稳定的网络环境下,优化媒体数据的传输性能. SRT的码流加密基于开源库open ...
- 超级简单的跨平台高性能音视频播放框架QtAv编译指南
目录 一.了解QtAv 二.相关文章 三.下载QtAv源码 四.下载QtAv依赖库 五.设置环境变量 1.gcc设置方式 2.msvc(cl)设置方式 六.编译 七.测试 一.了解QtAv 这几天抱着 ...
- 【英文文档】 Installing Go from source Go语言官方编译指南 2019.02.27
Introduction Go is an open source project, distributed under a BSD-style license. This document expl ...
- jrtplib编译指南
The library offers support for the Real-time Transport Protocol (RTP), The library uses the JThread ...
- openCV3 Python编译指南
这里主要对openCV官网的<Installation in Linux>文档进行了翻译和解释 原文见:https://docs.opencv.org/3.4.1/doc/tutorial ...
- Boost下载安装编译配置使用指南(含Windows和Linux
理论上,本文适用于boost的各个版本,尤其是最新版本1.45.0:适用于各种C++编译器,如VC6.0(部分库不支持),VS2003,VS2005,VS2008,gcc,C++ Builder等.先 ...
随机推荐
- 解决MWPhotoBrowser中的SDWebImage加载大图导致的内存警告问题
下面两种现象,用同一种方法解决 1.解决MWPhotoBrowser中的SDWebImage加载大图导致的内存警告问题 2.突然有一天首页访问图片很慢,至少隔20多秒所有图片才会出来.(解析:app使 ...
- Vs2013中通过Nuget添加不同版本jQuery
vs2013中如果直接更新jQuery则是2X的版本,为了兼容IE浏览器的,一般都是希望使用jQuery1.x版本的jQuery,则可在调出Nuget的控制台,在控制台输入(此例子是下载jQuery ...
- node基础06:回调函数
1.Node异步编程 Node.js 异步编程的直接体现就是回调. 异步编程依托于回调来实现,但不能说使用了回调后程序就异步化了. 回调函数在完成任务后就会被调用,Node 使用了大量的回调函数,No ...
- rpc框架之 thrift 学习 1 - 安装 及 hello world
thrift是一个facebook开源的高效RPC框架,其主要特点是跨语言及二进制高效传输(当然,除了二进制,也支持json等常用序列化机制),官网地址:http://thrift.apache.or ...
- Spring IOC 源码浅析
控制反转(Inversion of Control,英文缩写为IoC)是一个重要的面向对象编程的法则来削减计算机程序的耦合问题,也是轻量级的Spring框架的核心. 控制反转一般分为两种类型,依赖注入 ...
- c8051f320学习,单片机不外乎时钟、IO、串口、USB等外设用法
时钟 IO(输入.输出,如何配置) IO 数字和模拟资源可以通过25个I/O 引脚(C805 1F3 2 0 ),每个端口引脚都可以被定义为 通用I/O(GPIO)或 0 模拟输入 所有端口I ...
- 从语言到库到框架,再到API,再到标记最后到DSL语言
计算机技术发展很快,而且越来越快,结果也是越来越复杂,那么我们到底怎么搞定复杂性并重用代码? 很明显,这是个大难题.一开始我们要解决计算问题,发展了基本的编程语言. 很快,编程语言不能满足需求,我们需 ...
- Nginx 负载均衡
Nginx简单实现网站的负载均衡 地址:http://www.cnblogs.com/alvin_xp/p/4161162.html
- nios II--实验7——数码管IP软件部分
软件开发 首先,在硬件工程文件夹里面新建一个software的文件夹用于放置软件部分:打开toolsàNios II 11.0 Software Build Tools for Eclipse,需要进 ...
- 史密斯(smith)圆图讲解
不管多么经典的射频教程,为什么都做成黑白的呢?让想理解史密斯原图的同学一脸懵逼. 这是什么东东? 今天解答三个问题: 1.是什么? 2.为什么? 3.干什么? 1.是什么? 该图表是由菲利普·史密斯( ...