window11和Ubuntu20.04安装Nvidia驱动和CUDA的正确方法

零、双系统安装

Win11 Ubuntu20.04 双系统安装
解决ubuntu+win11双系统时间不一致问题
Ubuntu:系统分区

一、安装Nvidia驱动

参考:Ubuntu20.04安装NVIDIA显卡驱动、CUDA、CUDNN及突破NVENC并发限制、多版本CUDA切换

1、准备工作

1)查看显卡型号

lspci |grep -i nvidia

2)禁用nouveau并重启(安装Nvidia显卡的官方驱动和系统自带的nouveau驱动冲突)

lsmod |grep nouveau

如果有输出说明nouveau正在加载,需要创建文件

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

加上如下内容

blacklist nouveau
options nouveau modset=0

然后更新,并重启机器

sudo dracut --force
reboot

查看是否禁用成功,输入

lsmod |grep nouveau

若没有输出,则表示禁用成功。
修改 /etc/default/grub 文件,防止安装驱动后黑屏问题。sudo vim /etc/default/grub 弹出了Grub文件,将 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"替换为 GRUB_CMDLINE_LINUX_DEFAULT=“quiet splash acpi_osi=linux”

3)关闭内核自动更新和卸载旧内核

否则,内核自动更新后,可能会开不出机。这时需要通过开机选择“Advanced opti

### 安装配置OpenCV于Ubuntu 20.04 RK3588平台 #### 准备工作环境 为了确保能够在RK3588平台上顺利安装并配置OpenCV,在开始之前需确认已具备必要的开发工具链以及依赖库。对于基于ARM架构的RK3588而言,推荐使用官方提供的预构建镜像或是按照特定指导完成基础设置[^1]。 #### 下载源码 通过Git克隆指定版本的OpenCV仓库至本地机器: ```bash git clone --depth=1 -b 4.x https://github.com/opencv/opencv.git cd opencv ``` 此操作会拉取最新的稳定版分支`4.x`下的代码资源,适用于大多数应用场景的需求[^3]。 #### 编译前准备 进入解压后的文件夹内创建一个新的目录用于存放编译产物,并切换至此处执行后续指令: ```bash mkdir build && cd build ``` 接着利用CMake工具进行项目初始化,这里需要注意的是要根据实际硬件情况调整参数选项以优化性能表现。例如针对RK3588这样的高性能处理器可以开启多线程支持等功能特性[^4]。 #### CMake配置与编译过程 运行如下命令启动CMake配置流程,期间可根据个人需求添加更多自定义项(如启用CUDA加速等),此处仅展示基本示例: ```bash cmake .. make -j$(nproc) sudo make install ``` 上述脚本中的`-j$(nproc)`部分指示make程序尽可能多地并发处理任务从而加快整个编译速度;而最后一步则是将生成的目标文件复制到系统的标准路径下以便全局访问。 #### 使用pkg-config简化链接步骤 当涉及到编写应用程序并与之交互时,可借助`pkg-config`实用程序来自动生成所需的头文件包含路径及库文件连接信息,减少手动维护成本的同时也提高了移植性兼容性。具体做法是在g++调用时附加由该工具返回的结果作为额外参数传递给编译器[^2]。 ```cpp // 示例:测试Opencv功能的小型C++程序 #include <opencv2/opencv.hpp> using namespace cv; int main(int, char**) { Mat image; image = imread("/path/to/image.jpg", IMREAD_COLOR); // Read the file with color info. if(image.empty()) { // Check for invalid input. std::cout << "Could not open or find the image." << std::endl ; return -1; } imshow("Display window", image); waitKey(0); // Wait indefinitely until a key is pressed inside any created windows. return 0; } ``` 编译上面这段简单的图像显示例子只需一条简洁的命令即可实现全部必要设定: ```bash g++ $(pkg-config --cflags --libs opencv4) test_opencv.cpp -o test_opencv ./test_opencv ``` 这样不仅能够有效降低错误发生的几率还能显著提升工作效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值