Ubuntu常见问题解决

Ubuntu常见问题解决

1.ubuntu系统上安装qt5.12后无法调试运行

  原因:缺少gcc、g++、make、libgl1

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install make
sudo apt-get install libgl1-mesa-dev

2.ubuntu系统上安装qt5.12无法输入中文

  原因安装的qt只能缺少中文输入环境。
  安装fcitx-qt5:sudo apt-get install fcitx-frontend-qt5

2.1安装搜狗输入法

  下载路径:https://pinyin.sogou.com/linux/
在这里插入图片描述
  ubuntu下安装软件包命令

sudo dpkg -i /mnt/hgfs/ubuntu/software_pack/sogoupinyin_2.4.0.3469_amd64.deb 

  此时有可能安装不成功,调用apt的自动修复,自动安装缺少的包:sudo apt-get install -f

2.2 拷贝动态库到Qt安装路径下

  查看libfcitxplatforminputcontextplugin.so库路径:dpkg -L fcitx-frontend-qt5 |grep .so
  将该库拷贝到Qt5.12.6/5.12.6/gcc_64/plugins/platforminputcontexts/目录下:

cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so ./Qt5.12.6/5.12.6/gcc_64/plugins/platforminputcontexts/

  该库拷贝到Qt5.12.6/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/目录下

cp /usr/lib/x86_64-linux-gnu/qt5/plugins/platforminputcontexts/libfcitxplatforminputcontextplugin.so ./Qt5.12.6/Tools/QtCreator/lib/Qt/plugins/platforminputcontexts/

3.ubuntu网络图标不显示解决

  1.关网络服务:sudo service network-manager stop
  2.删除网络状态文件:sudo rm /var/lib/NetworkManager/NetworkManager.state
  3.启动网络服务:sudo service network-manager start
  4.修改配置文件将flase改为true:sudo gedit /etc/NetworkManager/NetworkManager.conf
在这里插入图片描述
  5.重启网络服务:sudo service network-manager restart
  若上面方式还是无法解决,则重置网络服务器。
在这里插入图片描述

4.ubuntu下安装与移除deb包命令

sudo dpkg -i <xxx.deb>   #安装deb软件
sudo dpkg -r <软件包>     #移除安装的deb包
sudo apt-get install -f   #自动安装缺少的库

5.ubuntu下常用安装与卸载命令

sudo apt-get install <软件>   #在线安装软件
sudo apt-get remove <软件包名字>  #删除已安装的软件包(保留配置文件)
sudo apt-get --purge remove <软件>  #删除已安装的软件包(不保留配置文件)
sudo apt-get update   #更新
sudo apt-get upgrade  #升级已安装的软件包,在升级前先执行安装

6.ubuntu下make menuconfig打开失败

在这里插入图片描述
  安装 flexbison,重新make menuconfig即可。

sudo apt-get install flex
sudo apt-get install bison

7.ubuntu下编译驱动文件

7.1查看内核信息

  Linux下内核源码位置: /usr/src/
  Ubuntu下查看系统信息: sudo lsb_release -a

[wbyq@wbyq src]$ sudo lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.6 LTS
Release:	18.04
Codename:	bionic

  Ubuntu下查看内核版本信息:cat /proc/version 或者 uname -a

[wbyq@wbyq src]$ cat /proc/version
Linux version 5.4.0-126-generic (buildd@lcy02-amd64-087) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #142~18.04.1-Ubuntu SMP Thu Sep 1 16:25:16 UTC 2022
[wbyq@wbyq src]$  uname -a
Linux wbyq-virtual-machine 5.4.0-126-generic #142~18.04.1-Ubuntu SMP Thu Sep 1 16:25:16 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

7.2 驱动编译与注册

  • 驱动模板示例
#include <linux/kernel.h>
#include <linux/module.h>
#include <linux/platform_device.h>
/*驱动入口函数*/
static int __init tiny4412_wbyq_module_init(void)
{
	/*内核层打印函数*/
    printk("设备层注册成功\n");
    return 0;
}
/*驱动出口函数*/
static void __exit tiny4412_wbyq_module_cleanup(void)
{
    printk("设备层注销成功\n");
}

module_init(tiny4412_wbyq_module_init);/*驱动入口函数,注册驱动时调用*/
module_exit(tiny4412_wbyq_module_cleanup);/*驱动出口函数,驱动注销时调用*/
MODULE_LICENSE("GPL"); //驱动许可证
MODULE_AUTHOR("it_ashui");
MODULE_DESCRIPTION("tiny4412 hello module");
  • 驱动编译示例
KER_ADD=/usr/src/linux-headers-5.4.0-126-generic #内核Makefile路径
app:
	make -C $(KER_ADD) M=`pwd` modules #调用内核Makefile编译当前模块
.PHONY=celan
clean:
	make -C $(KER_ADD) M=`pwd` modules clean #清空文件
obj-m +=drv_hello.o  #驱动依赖文件
  • 驱动安装
[wbyq@wbyq drv_hello]$ sudo insmod  drv_hello.ko  //安装驱动
[wbyq@wbyq drv_hello]$ lsmod  //查看安装的驱动
Module                  Size  Used by
drv_hello              16384  0
[wbyq@wbyq drv_hello]$ modinfo drv_hell.ko //查看驱动信息
modinfo: ERROR: Module drv_hell.ko not found.
[wbyq@wbyq drv_hello]$ modinfo drv_hello.ko
filename:       /mnt/hgfs/ubuntu/work/drv_hello/drv_hello.ko
description:    tiny4412 hello module
author:         it_ashui
license:        GPL
srcversion:     C3B117744D970DDBCE90F06
depends:        
retpoline:      Y
name:           drv_hello
vermagic:       5.4.0-126-generic SMP mod_unload modversions 

  注意:驱动程序正常会使用printk向终端打印调试信息, 如果驱动安装之后当前终端没有反应,可以通过dmesg命令查看日志里是否有输出。

[wbyq@wbyq drv_hello]$ dmesg --ctime 
[1119 11:58:11 2022] 设备层注册成功
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT_阿水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值