相当于配置教程的一些指路,做个备忘,如果和前辈的内容重复都是我抄的,侵联删。

双系统安装

按照教程仔细执行即可。

黑屏问题

黑屏原因和场景

  • 黑屏原因:主要是因为和显卡冲突,也有可能是强制关机,fcitx输入法框架冲突之类的,挺玄学的。我的主要矛盾是显卡。
  • 黑屏场景:①安装时黑屏 ②安装完后使用时黑屏 两种场景我都出现过,①Alienware和Legion安装时都出现过,②目前是只出现在Legion的电脑上
  • 型号说明:虽然装过两台,不过型号都是i5+3050(穷)

黑屏解决

  1. 安装过程中黑屏的现象:
    插入U盘后(或者是已经出现了黑屏,重启电脑后)进入Bios选择Ubuntu(或者Ubuntu install)进行以下操作
    • Ubuntu或者Ubuntu install选项选中时按下e
    • 进入黑色的文本编辑页面将quiet splash后的---删去改为quiet splash nomodeset
    • 按F10开机(vary from PC 2 PC)
  2. 安装完成后某一天突然黑屏:
    教程指路:Ubuntu安装英伟达NVIDIA显卡驱动黑屏99%的解决办法
    主要步骤(来自上面的视频,此处仅作整理,侵联删)
    1. 重装ubuntu(因为刚装好就黑屏了,所以不心疼),通过临时修改grub添加nomodeset的方法(见1)进入到图形界面。
    2. 打开software & update,选择菜单栏中的addtional driver,选择NVIDIA的推荐驱动(最好不要用open),然后apply changes
    3. 安装完成后重启电脑,此时会黑屏。ctrl+alt+F1-6进入tty模式,输入自己的用户名和密码。
    4. 查看自己默认的显示管理器,我的默认是gdm3,其他电脑也可能是lightdm。
      1
      cat /etc/X11/default-display-manager
    5. 重启完显示管理器
      1
      sudo systemctl restart gdm3
      这样以后可以正常开机了。

f** Nvidia驱动安装

  1. 检查是否能识别显卡nvidia-smi
  2. 打开additional driver或者software & updates(部分电脑可能无法打开,或者打开速度很慢)
  3. 打开additional driver栏,如果无任何推荐,执行sudo apt update,重新打开addtional driver,选择相应的driver,推荐server型,不建议选open型(为啥,我也忘了)。我选的是NVIDIA Server Driver metapackage from nvidia-driver-535-server(proprietary)
  4. 安装显卡管理应用。
    1
    sudo apt install nvidia-settings nvidia-prime
  5. 打开NVIDIA X Server Settings,转到Prime Profiles,换到性能模式Performance Mode,再重启电脑。

干净卸载双系统

教程指路:教你彻底卸载Ubuntu双系统,去污不残留_双系统卸载ubuntu_振华OPPO的博客-CSDN博客

注意事项:

  1. 记不得哪几个磁盘是linux相关的话,在windows下下载相关软件比如Linux reader进行查看,或者排除法,一般那个260M的绝对不要动。不然就是windows寄掉。
  2. Bios开启顺序记得将windows调整至首位,虽然我有几次重装忘了调顺序也没关系,但是看98上好像有人寄的。
  3. 在格式化完磁盘以后不要偷懒而忽略后面的步骤,需要执行到在windows下用diskpart那个步骤

基本配置

时间对齐

1
timedatectl set-local-rtc 1

联网后显示正常

输入法和中文

  • gnome不建议用fcitx,就ibus好了
  • 中文字体缺失
    1
    sudo apt install fonts-cns11643-kai fonts-cns11643-sung fonts-moe-standard-kai fonts-moe-standard-song fonts-cwtex-fs fonts-cwtex-heib fonts-cwtex-heib fonts-cwtex-ming fonts-cwtex-yen fonts-wqy-microhei fonts-wqy-zenhei
  • 设置语言(大环境还是建议英文)
    在language support内进行设置,Regional Formats栏下的建议还是用English
  • 安装输入法
    1
    2
    sudo apt install ibus-libpinyin 
    sudo apt install ibus-clutter
  • 安装完成后进入settings–>region & language进行语言设置;点击+号,选择chinese(intellegient pinyin);重启

截图设置

settings–>Keyboard Shortcuts–>Screenshots
我习惯截图area+clipboard这栏设置为Alt+A

换源

参考

常用软件

edge

20.04linux+edge
微软的同步功能还是很香的,同步时间过长建议换成自己手机热点,一秒通。

ros

autolabor ros 教程

vscode

autolabor ros 教程
一键同步,爽的一(因为windows下配了比较多)

terminator

1
sudo apt install terminator

安装完后右键终端进入preference设置透明度

git

1
sudo apt install git

安装完git校验ssh
github配置ssh key
如果出现”The authenticity of host ‘github.com’ can’t be established”的错误:

1
2
ssh-keyscan github.com >> ~/.ssh/known_hosts
ssh -T git@githubu.com

clash

  • 查看自己是x86还是arm
    1
    uname -m
  • 安装向导
    glados
    CFW

DingTalk

建议别看网上教程,直接上钉钉官网下载deb

CUDA & CUDNN

下载建议同时进行,速度有点慢的。
参考

CUDA

  1. 官方下载cuda runfile,并执行相应的提示指令
    Operating System: Linux
    Architeture: x86_64
    Distribution: Ubuntu
    Version: 20.04
    Installer Type: runfile(local)
  2. 开run:注意禁止安装集显
  3. 配置环境变量:
    1
    2
    3
    sudo gedit ~/.bashrc
    export PATH=/usr/local/cuda-11.7/bin${PATH:+:${PATH}}
    export LD_LIBRARY_PATH=/usr/local/cuda-11.7/lib64\${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
  4. 校验:
    1
    nvcc -V

CUDNN

  1. 进入官网登陆(只能说这个邮箱验证太慢了),选择合适cuda版本的cudnn。我选的Local Installer for Linux x86_64 (Tar)
  2. 解压后进入cudnn文件夹依次执行(注意第一条是cudnn*,网上大多是cudnn.h)
    1
    2
    3
    4
    sudo cp include/cudnn* /usr/local/cuda-11.7/include
    sudo cp lib/libcudnn* /usr/local/cuda-11.7/lib64
    sudo chmod a+r /usr/local/cuda-11.7/include/cudnn.h
    sudo chmod a+r /usr/local/cuda-11.7/lib64/libcudnn*
  3. 检验(网上检验方法大概率是没有输出的)
    1
    cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2

OPENCV

再更:又在别人电脑上装了一下,发现还是跟着官网香(甲同学跟着我这走还行,乙同学就不行了,最后乙同学和丙电脑还是按官网装的,挺顺利的,就是官网的目录顺序有点错乱,感受一下)

安装依赖项

可以多看几篇博客里的依赖项,都装装不嫌多(但是别无脑粘啊。。。),比如:
ubuntu20.04搭建opencv 4.5.0

下载OPENCV安装包和contrib

这里注意两个包版本对上,然后重命名为opencv_contrib和opencv,然后将opencv_trib放到opencv文件下,然后执行:

1
2
3
cd opencv
mkdir build
cd build

大概率会缺的东西(不要执行,只是做说明)

如果按照某些教程直接走的话,大概率会遇到这几个问题:

  1. 安装OpenCV时提示缺少boostdesc_bgm.i文件:https://blog.csdn.net/AlexWang30/article/details/99612188
  2. 找不到 feature2d/test/test_detectors_regression.impl.hpp 文件:https://blog.csdn.net/xiewenrui1996/article/details/108683866
  3. 可能还会有比较小众的问题,比如最后都[100%]了,还一大堆phase unwrapping之类的,忘了
    前两个还好,第三个估计是因为中途加上了boostdesc_bgm.i等文件产生的编译顺序问题cmake选项之类的问题,我也不清楚,就是连坐出来的问题吧,所以建议把缺的都补上了再开始cmake

真正做的编译准备和命令

  1. 先按照 .i文件缺失 把所有缺失的文件下载下来放到opencv_contrib/modules/xfeatures2d/src/下
  2. 把opencv / modules / features2d复制粘贴到build目录下
  3. 在build目录下执行
    1
    cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_GENERATE_PKGCONFIG=YES -D OPENCV_EXTRA_MODULES_PATH=/home/主机登录名/opencv/opencv_contrib/modules ..
    这里-D OPENCV_GENERATE_PKGCONFIG=YES是因为OpenCV4以上默认不使用pkg-config,该编译选项开启生成opencv4.pc文件,支持pkg-config功能
  4. 完成后执行sudo make -j8(-j8是根据电脑配置添加上的参数,8代表为处理器8线程,可以省略)
  5. sudo make install

配置环境变量

1
2
3
sudo gedit /etc/ld.so.conf.d/opencv.conf
\\ 输入 /usr/local/lib
sudo ldconfig

配置bash

1
2
3
4
5
6
7
8
9
10
sudo gedit /etc/bash.bashrc
// 添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
// save
source /etc/bash.bashrc
// 命令行字体变白可以reboot
// 关cmd应该也没事
// 检验
pkg-config --modversion opencv4

darknet

Makefile改哪里

1
2
3
4
GPU=1
CUDNN=1
OPENCV=1
NVCC=/usr/local/cuda/bin/nvcc

opencv2/opencv.hpp: No such file or directory

1
2
3
cp /usr/local/lib/pkgconfig/opencv4.pc /usr/lib/pkgconfig
cd /usr/lib/pkgconfig
mv opencv4.pc opencv.pc

CUDNN_CONVOLUTION_FWD_SPECIFY_WORKSPACE_LIMIT’ undeclared (first use in this function)

这个版本的darknet不能使用cudnn8编译,基本配显卡的又是11开头的。
https://github.com/arnoldfychen/darknet/blob/master/src/convolutional_layer.c
把这个代码直接替换到报错的文件里

‘IplImage’ does not name a type,改完还走色

这个网上教程挺多的,我参考了这么几个

  1. https://blog.csdn.net/qq_43697649/article/details/104502113
  2. https://blog.csdn.net/quicmous/article/details/113432144
  3. https://www.cnblogs.com/happyamyhope/p/16480794.html

综合一下,我是把2中的代码直接替换我的image_opencv.cpp,执行测试的时候发现我脸蓝了,狗灰了,按照3中将将 image_to_mat函数中的float val = im.data[c*im.h*im.w + y*im.w + x];替换为float val = copy.data[c*im.h*im.w + y*im.w + x];,顺利通过~。

px4

【自用,写的很乱】

说明

Ubuntu20.04+MAVROS+PX4+Gazebo保姆级安装教程

出的问题主要是clone不完整。

  1. 第一次装后make测试的时候给我报datamen的错误,没法takeoff(pxh命令行没有,装完也没有reboot的提示),并且多次测试的时候,多个飞机叠在一起,问题描述如果搜过的话就是和gitee上有个issue一毛一样,我这不指路了。大概是因为按第二个博客走的时候checkout了,版本错乱。
  2. 后来重新clone px4-autopilot,按第一个教程走,第一遍通了,后面测试又没法make了。重命名为px4-firmware后才可以。后来另一台不重命名也没事了,不知道啥毛病。
  3. 端口不存在的问题FCU: DeviceError:serial:open: No such file or directory(没连硬件)不是什么大问题,中间也遇到了,博客园有篇https://www.cnblogs.com/soapen/articles/17342907.html#3mavros%E5%AE%89%E8%A3%85 ,没有亲测过。

最后测试可以参考https://zhuanlan.zhihu.com/p/438699349

记录

1
2
3
4
5
6
7
8
9
10
11
git clone https://github.com/PX4/PX4-Autopilot.git --recursive
cd PX4-Autopilot/
git submodule update --init --recursive
// 这一步做完以后一定查看是否有没clone完的情况
// 第一次配由于各种问题,发现需要重命名,不知道是不是我已经配完bash了
// 第二次配我没有重命名,后面配环境变量的时候也注意一下
mv PX4-Autopilot PX4_Firmware
cd PX4_Firmware
bash ./Tools/setup/ubuntu.sh
//reboot
make px4_sitl_default gazebo

成功后配置环境变量(可以take off)

1
2
3
4
5
sudo gedit ~/.bashrc
//加这几句在后面
source ~/PX4_Firmware/Tools/simulation/gazebo-classic/setup_gazebo.bash ~/PX4_Firmware ~/PX4_Firmware/build/px4_sitl_default
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware
export ROS_PACKAGE_PATH=$ROS_PACKAGE_PATH:~/PX4_Firmware/Tools/simulation/gazebo-classic/sitl_gazebo-classic

slam14

视觉SLAM十四讲环境搭建(测试环境Ubuntu20.04)
Sophus
踩坑 Sophus 模板库安装及编译