1、制作logo的方法:

首先选择一个自己喜欢的图片,然后通过GIMP软件将该图片保存为.png格式,

变换方式这个就不说了(very easy),比如保存为linuxlogo.png.

然后将该图片传入到装有Linux PC比如(ubuntu),按照以下顺序你就可以制作一个你喜欢logo

前提你必须安装以下的工具(pngtopnm,pnmquant,pnmtoplainpnm)

$ pngtopnm linuxlogo.png > linuxlogo.pnm

$ pnmquant 224 linuxlogo.pnm > linuxlogo224.pnm

$ pnmtoplainpnm linuxlogo224.pnm > linuxlogo224.ppm

或者

$bmptoppm pic.bmp > temp1.ppm //生成ppm

$ppmquant 224 temp1.ppm > temp2.ppm  //转换成224颜色

$pnmnoraw temp2.ppm > logo.ppm   //转换成ascii格式

这样您制作的logo就已经成功了,将linuxlogo224.ppm

拷贝到/drivers/video/logo文件夹中的根据你的平台具体使用的哪个logo进行命名,

由与我用的是RedHat linux,所以我取的名字为logo_linux_clut224.ppm,友情提醒将原有的logo保存。

其中在./drivers/video/logo/下有XXX_XXX_XXX.c和XXX_XXX_XXX.o文件是在进行make编译之后生成的,可以将制作好的.ppm文件拷贝进行去替换成原来的logo文件之后,使用make clean SUB_DIR=./drivers/video/logo/来清除logo目录下的.c和.o文件。

这样你的logo就完全制作好了,但是有这一点还是不够的,你必须在内核中选择logo,接下来我们来看如何配置内核

2、配置logo选项

在内核路径下执行make menuconfig

开发板上开启logo显示的选项

Device Drivers --->Character devices ---》Bootup logo

a、选择虚拟控制台为控制台显示驱动做准备

Device Drivers --->Character devices ---> Virtual terminal

[*]   Support for console on virtual terminal

b、选择虚拟控制台显示驱动

Device Drivers --->Graphics support --->下有这个选项Console display driver support --->

根据你的硬件选择由Framebuffer还是VGA

[*] Framebuffer Console support或者

[*] VGA text console

c、Device Drivers --->Graphics support --->

Support for frame buffer devices

MXC Framebuffer support下选择是VGA还是TVOUT

[*] tvout CH7024 on MX27 //TVOUT

[*]support VGA daughter //VGA

当然以上的配置选项,因平台而异会有些小的差别。

做好以上两个步骤,你就可以重新编译内核,将其烧到开发板,接VGA或者TVOUT显示。

这样你可以看到你自己制作的logo,你可以发现在logo的左上角有一个闪动的光标,接下来我们说说如何将这个光标去除。

3、如何将开机logo中的光标去除

在内核的当前目录进入到drivers/video/console/fbcon.c文件

将static void fb_flashcursor(void *private)制成空函数如下

386 static void fb_flashcursor(void *private)

387 {

388 #if 0 //modify by yejj for clear cursor of lcdc

389 struct fb_info *info = private;

390 struct fbcon_ops *ops = info->fbcon_par;

391 struct display *p;

392 struct vc_data *vc = NULL;

393 int c;

394 int mode;

395

396 acquire_console_sem();

397 if (ops && ops->currcon != -1)

398 vc = vc_cons[ops->currcon].d;

399

400 if (!vc || !CON_IS_VISIBLE(vc) ||

401 registered_fb[con2fb_map[vc->vc_num]] != info ||

402 vc->vc_deccm != 1) {

403 release_console_sem();

404 return;

405 }

406

407 p = &fb_display[vc->vc_num];

408 c = scr_readw((u16 *) vc->vc_pos);

409 mode = (!ops->cursor_flash || ops->cursor_state.enable) ?

410 CM_ERASE : CM_DRAW;

411 ops->cursor(vc, info, mode, softback_lines, get_color(vc, info, c, 1),

412 get_color(vc, info, c, 0));

413 release_console_sem();

414 #endif

415 }

同样的方法将函数static void fbcon_cursor(struct vc_data *vc, int mode)用空函数替换如下

1304 static void fbcon_cursor(struct vc_data *vc, int mode)

1305 {

1306 #if 0 //modify by yejj for clear cursor of lcdc

1307 struct fb_info *info

另一种禁止光标的方法:

drivers/video/console/Makefile

#obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o softcursor.o

obj-$(CONFIG_FRAMEBUFFER_CONSOLE) += fbcon.o bitblit.o font.o

编译遇到一个soft_cursor没有定义的问题问题,注释代码:

drivers/video/console/bitblit.c

//ABING

//      if (err)

//              soft_cursor(info, &cursor);

【注意】:

Linux Logo制作工具 : LogoMaker.tgz 4.7MB

http://www.arm9.com.cn/downloads.htm

LogoMakers可以让你十分方便地制作linux logo文件,它基于Fedora 9平台开发并使用。其使用方法十分简单,打开一个图形文件(Jpeg, bmp或者png格式),然后点转换按钮就可以了;它会固定输出文件名:logo_linux_clut224.ppm,该文件一般位于内核源代码目录kernel-src/drivers/video/logo中,替换之后再重新编译一下内核就可以看到你所喜爱的linux logo了。

注意:LogoMaker程序实际调用了netpbm工具组,因此要确保你的PC Linux系统安装了此工具,方可转换成功。

ubuntu下转换PPM:

sudo get-apt install netpbm

bmp图片使用bmptoppm.jpg,png,gif都有相应的topnm工具。

$bmptoppm pic.bmp > temp1.ppm //生成ppm

$ppmquant 224 temp1.ppm > temp2.ppm  //转换成224颜色

$pnmnoraw temp2.ppm > logo.ppm   //转换成ascii格式

logo.ppm就是需要的图像了。

其它方案请参考别人写的博客:

另外我做的最简单的制作方法是:

自己利用photeshop制作一个和自己LCD屏幕大小相当的图片,并保存成.png格式,如果不是PNG格式的图片,可以用GIMP转换一下:

首先将png图片转成pnm

#

pngtopnm utulinux_logo.png > utulinux_logo.pnm

然后将pnm图片的颜色数限制在224

# pnmquant 224 utulinux_logo.pnm > utulinux_logo_224.pnm

最后将pnm图片转换成我们需要的ppm

# pnmtoplainpnm utulinux_logo_224.pnm > utulinux_logo_224.ppm

然utulinux_logo_224.ppm替换linuxsrc/drivers/video/logo中对应的图像就OK了

注意:其中在./drivers/video/logo/下有XXX_XXX_XXX.c和XXX_XXX_XXX.o文件是在进行make编译之后生成的,可以将制作好的.ppm文件拷贝进行去替换成原来的logo文件之后,使用make clean SUB_DIR=./drivers/video/logo/来清除logo目录下的.c和.o文件。

最后直接make编译,编译好后下载内部,你将会看到相应的效果。

linux 开机logo制作工具,linux开机logo制作相关推荐

  1. linux手机刷机包制作工具_ROM制作工具官方下载|ROM制作工具下载 v1.0.0.59 官方版 - 绿点软件站...

    资源下载,支持线刷包(img)转卡刷包(zip):支持img/dat相互转换:ROM制作工具高效免费,为广大ROM开发者.手机维修.预装分发等人群提供快捷便利的定制服务. ROM制作工具官方简介 RO ...

  2. html傻瓜式制作软件,云梦html制作工具(html傻瓜式制作)

    云梦html制作工具(html傻瓜式制作)降低了制作HTML网页界面的门槛,它提供了一个比较大的绘制区,您可以直接在属性面板中输入种类.名称.左边.顶边.宽度.高度以及其他参数的相关要求,可以在实时预 ...

  3. android img 制作工具,图片视频编辑制作工具

    图片视频编辑制作工具是一款图像和视屏的制作工具,这款制作工具能够帮助用户完成在图像内容上的制作,多种特效和工具等着你在软件当中进行体验,你能够感受到制作视频的乐趣,在手机上面创建属于你自己的vlog或 ...

  4. linux制作deepin启动盘制作工具,深度启动盘制作工具(Deepin Boot Maker)下载_深度启动盘制作工具(Deepin Boot Maker)官方下载-太平洋下载中心...

    深度启动盘制作工具(Deepin Boot Maker)用于来帮助用户简单便捷的制作Deepin启动U盘.Deepin Boot Maker,深度启动盘制作工具用于来帮助用户简单便捷的制作Deepin ...

  5. linux制作deepin启动盘制作工具,深度启动盘制作工具(Deepin Boot Maker)

    Deepin Boot Maker(深度启动盘制作工具)是一款用于帮助用户简单便捷的制作Deepin启动U盘的工具.设计上只支持深度系统镜像,但对Ubuntu Live系列镜像都能支持. Window ...

  6. linux批量部署war工具,Linux 批量一键部署工具 Expect

    Linux 批量一键部署工具 Expect 既然没有遇到过,做好准备总是好的.这是自己送给自己的话,现在运维做自动话越来越多,自己就学以下,记录笔记.目前主流的有puppet.Expect.pssh等 ...

  7. linux bes二进制查看工具,Linux的命令及工具

    1.查看系统运行的进程 # ps auxw 2.netstat命令 查看系统监听的服务 # netstat -ln -a所有的有效连接信息列表,包括已建立的连接(ESTABLISHED),也包括监听连 ...

  8. linux配置文件密码加密工具,Linux下利用openssl对文件进行加密和解密

    转载地址:http://hi.baidu.com/edeed/item/99206a096b62d0e1ff240db8 --建立文件test.txt, 特意写入中英文# cd /tmp # echo ...

  9. linux 串口转网口工具,linux下串口调试工具/串口终端推荐: picocom(转)

    Servlet 3.0 异步模式 Servlet 3.0标准新增了异步处理的支持. 进行异步处理的Servlet和作用于该Servlet的拦截器都必须声明对于异步处理的支持. java 资源监控 ht ...

  10. Linux下阅读docx工具,Linux装机必备软件及工具.docx

    Linux装机必备软件及工具 Linux装机必备软件及工具首先说明一下ubuntu的软件安装大概有几种方式:CODE:首先说明一下ubuntu的软件安装大概有几种方式:1.deb包的安装方式deb是d ...

最新文章

  1. nRF905 - 系列示意图
  2. 学数答题160909-取整函数
  3. App设计灵感之十二组精美的插画引导页设计案例
  4. vue 本地环境API代理设置和解决跨域
  5. rsync 未授权访问漏洞
  6. 关于数据仓库的架构及3大类组件工具选型
  7. java 不指定大小接收
  8. mybatis 二级缓存失效_给我五分钟,带你彻底掌握MyBatis的缓存工作原理
  9. 序列化和反序列化(三)——父类的序列化
  10. 跨过Nginx上基于uWSGI部署Django项目的坑
  11. 网络安全基础知识面试题库
  12. MySQL数据库字段级权限设计
  13. java gdal生成彩色tiff文件 并压缩大小
  14. j1900做网站服务器,j1900可以跟云服务器
  15. R语言--模型的定阶、估计和显著性检验
  16. 计算机网络常见名词及其解释
  17. scala利用akka框架封装数据库操作api微服项目
  18. 如何在 Vim 中用换行符替换字符
  19. 蓝桥杯试题 算法提高 扶老奶奶过街(C语言)
  20. 乐游api接口平台(接口商)

热门文章

  1. SoapUI接口测试实战
  2. 基于PHP+MySQL的物流配送管理系统平台
  3. win7无法连接WIFI,安装无线驱动 AR9485 WIFI Driver for Windows 7 (32-bit, 64-bit)
  4. 什么软件画er图方便_er图绘制工具|er图绘制工具(powerdesigner) v16.5 免费版 - 软件下载 - 绿茶软件园|33LC.com...
  5. 思科刀片服务器系统,思科 UCS B 系列刀片服务器
  6. Tomcat各版本说明
  7. 在国企的日子(第三章上部 出差)
  8. WKWebView的customUserAgent
  9. 使用Emacs阅读邮件和新闻组:Gnus 中文FAQ
  10. NLP ---文本情感分析