本文提供一些网站,也是解决这个问题的,可以去参考一下,我也是从这些网站参考然后解决我的问题的。
https://blog.csdn.net/weixin_41874888/article/details/106629340
ps:本文主要记录在安装ubuntu_lcd,ubuntu_event两个驱动的时候遇到的一些问题。需要有帮到你的话,麻烦点个爱心。啦啦啦。我用的Ubuntu版本是18.04。其他版本的问题可能不太清楚。
要想安装这两个驱动,需要相应的文件,这里给大家提供了下载地址。
链接:https://pan.baidu.com/s/1-0BpSndT9HWweG4TgxkFxg?pwd=1234
提取码:1234
将上面下载的文件存放在我们虚拟机的共享文件夹的路径下。如:/mnt/hgfs/.........
之后进入虚拟机开始进行安装
首先,进入到安装包的位置(ps:假如我们存放在/mnt/hgfs/share/目录下)
在Terminal中输入:cd /mnt/hgfs/share
然后解压压缩包到家目录(即 ~):tar -jxf vslcd.tar.bz2 -C ~
开启管理员权限,安装驱动文件一般是需要管理员权限的:sudo -s (之后输入密码)
解压完之后,我们可以在家目录中找到目录vslcd,之后进入该目录:cd ~/vslcd (该目录下有如下图文件)
(ps:之后所有操作都在root权限下进行)
之后,进入mmap_drv 目录下:cd ./mmap_drv
执行make:make
这一步执行之后,可以会出现一些问题,比如:缺乏一些库啊等等这些,我遇到的是,缺乏一个stdarg.h库
有两种解决办法,
- 就是去找到所缺乏的库然后进行链接(这一步我不是很清楚,没能解决我的问题)
- 这一步就是修改Makefile文件(我通过这个方法解决了我的问题),具体如何修改,可以看下面文章。文章中提到了上面两种方法。(80条消息) [Linux] 编译模块出现 "./include/linux/kernel.h:6:20: fatal error: stdarg.h: No such file or directory" 错误_DecJ的博客-CSDN博客
上面文章所提高的方法需要注意的时,里面命令中的x86_64-linux-gnu/5中这个5是需要修改的,具体要如何修改这就是看你报错的信息了。下面是我的报错信息。
你直接cd 到x86_64-linux-gnu/这个目录下,看下你虚拟机是多少,然后在下面的文件中找到具有stdarg.h这个库的,就是要该成的数字。下面的图是我的虚拟机,之后再下面去找到有stdarg.h这个库,有这个库的目录的那个数字就是上面Makefile文件添加的语句中5要该的数字。置于要如何去寻找哪里有这个库的话,就自行摸索。啦啦啦。
ps:(我的命令就是这个)
ccflags-y = -Wno-declaration-after-statement -mpopcnt -I/usr/lib/gcc/x86_64-linux-gnu/7.5/include
如图
这一步之后,我就make
make之后要运行一句命令:insmod mmp_drv.ko
之后就没有出现什么问题了。有其他问题的话可以在讨论区提问,一起交流。
接下来,进行下一步,进入到event_drv。
进入后执行make,这时可以也会出现和mmap_drv一样的错误,缺乏stdarg.h库,操作和上面一样,在修改event_drv目录下面的Makefile文件,也是添加和上面一样的命令。
然后make ,make之后就执行那个命令:insmod event_drv.ko
完成上面的步骤之后,就退到上一级目录,即vslcd。
然后运行指令:./VTSLcd
此时,会出现一个800*480*4的黑框,到这里差不多结束了。如图
之后要运行自己的代码的时候,好像也要运行这个程序。
之后的这一步,可做可不做。就是运行压缩包提供的一个例程代码。显示灯泡。
进入lcd_event目录下面,运行lcd_event_ui可以看到灯泡。
完成所有操作之后,可以进入/dev/进行验证看下是否有ubuntu_lcd 、 ubuntu_event
如图
到这里,差不多了,也不想写了,太累了,原本想给你们展示一下灯泡的显示的,写完之后发现我的坏了,原因好像是关了虚拟机了,所以你们弄完虚拟机不要关机,挂起就行,还有就是弄完之后一定要快照一下。