ubuntu20.04安装cuda11.7和显卡驱动

1、禁用nouveau

复制代码
sudo vi /etc/modprobe.d/nouveau.conf

在最下面加入blacklist nouveau

复制代码
sudo update-initramfs -u

sudo reboot

输入命令,如果没有任何输出,证明禁用成功

复制代码
lsmod | grep nouveau

2、安装cuda11.7

CUDA Toolkit Archive | NVIDIA Developer

CUDA Toolkit 11.7 Downloads | NVIDIA Developer

复制代码
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-ubuntu2004.pin

sudo mv cuda-ubuntu2004.pin /etc/apt/preferences.d/cuda-repository-pin-600

wget https://developer.download.nvidia.com/compute/cuda/11.7.0/local_installers/cuda-repo-ubuntu2004-11-7-local_11.7.0-515.43.04-1_amd64.deb

sudo dpkg -i cuda-repo-ubuntu2004-11-7-local_11.7.0-515.43.04-1_amd64.deb

sudo cp /var/cuda-repo-ubuntu2004-11-7-local/cuda-*-keyring.gpg /usr/share/keyrings/

sudo apt-get update

sudo apt-get -y install cuda
复制代码
export PATH=$PATH:/usr/local/cuda/bin  
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64

source ~/.bashrc

sudo apt-get install libopencv-dev

1、QT

sudo apt install libxcb-xinerama0

注:安装系统时没有选择边安装边更新,此处会缺依赖库

sudo apt-get install build-essential

sudo apt-get install libgl1-mesa-dev

sudo apt-get install libglu1-mesa-dev

sudo apt-get install freeglut3-dev

sudo apt install gcc

sudo apt install g++

sudo apt install make

sudo apt install cmake cmake-gui

sudo apt install openssh-server

./qt-unified-linux-x64-online.run

sudo apt-get install libxcb-cursor0

export QTDIR=/home/visionnav/Qt/6.2.4/gcc_64

export PATH=QTDIR/bin:PATH

export LD_LIBRARY_PATH=QTDIR/lib:LD_LIBRARY_PATH

首先安装VTK的依赖:X11,OpenGL;cmake和cmake-gui在安装pcl依赖的时候安装过了的话可以跳过

X11

sudo apt-get install libx11-dev libxext-dev libxtst-dev libxrender-dev libxmu-dev libxmuu-dev

OpenGL

sudo apt-get install build-essential libgl1-mesa-dev libglu1-mesa-dev

cmake && cmake-gui

sudo apt-get install cmake cmake-gui

下载vtk9.1.0

Files · v9.1.0 · VTK / VTK · GitLab

配置cmake-gui config generate

make -j14

sudo make install

export VTK_DIR=/usr/local/include/vtk-9.1

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

cpp 复制代码
#include <vtkCubeSource.h>
#include <vtkPolyDataMapper.h>
#include <vtkActor.h>
#include <vtkRenderer.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>

#include <vtkAutoInit.h>
VTK_MODULE_INIT(vtkRenderingOpenGL2) // 初始化OpenGL渲染模块
VTK_MODULE_INIT(vtkInteractionStyle) // 初始化交互式模块

int main()
{
    vtkSmartPointer<vtkCubeSource> cubeSource = vtkSmartPointer<vtkCubeSource>::New();

    vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New();
    mapper->SetInputConnection(cubeSource->GetOutputPort());

    vtkSmartPointer<vtkActor> actor = vtkSmartPointer<vtkActor>::New();
    actor->SetMapper(mapper);

    vtkSmartPointer<vtkRenderer> renderer = vtkSmartPointer<vtkRenderer>::New();
    renderer->AddActor(actor);

    vtkSmartPointer<vtkRenderWindow> renderWindow = vtkSmartPointer<vtkRenderWindow>::New();
    renderWindow->AddRenderer(renderer);

    vtkSmartPointer<vtkRenderWindowInteractor> interactor = vtkSmartPointer<vtkRenderWindowInteractor>::New();
    interactor->SetRenderWindow(renderWindow);

    renderWindow->Render();
    interactor->Start();

    return 0;
}

makefile

cpp 复制代码
CC = g++
CFLAGS = -I/usr/local/include/vtk-9.1/
LDFLAGS = -L/usr/local/lib
LIBS = -lvtkRenderingCore-9.1 -lvtkRenderingOpenGL2-9.1 -lvtkInteractionStyle-9.1 \
        -lvtkFiltersSources-9.1 -lvtkCommonExecutionModel-9.1 -lvtkCommonCore-9.1 \
        -lvtksys-9.1

SRC = vtk_test.cpp
OBJ = $(SRC:.cpp=.o)
EXECUTABLE = vtk_test

all: $(EXECUTABLE)

$(EXECUTABLE): $(OBJ)
        $(CC) $(LDFLAGS) $^ -o $@ $(LIBS)

.cpp.o:
        $(CC) $(CFLAGS) -c $< -o $@

clean:
        rm -f $(OBJ) $(EXECUTABLE)

PCL

sudo apt-get install libboost-all-dev

sudo apt-get install libeigen3-dev

sudo apt-get install libflann-dev

sudo apt-get install libqhull-dev

sudo apt-get install libusb-1.0-0-dev

sudo apt-get install libopenni-dev

Releases · PointCloudLibrary/pcl · GitHub

https://www.coin-or.org/download/source/metslib/metslib-0.5.3.tgz

sudo sh ./configure

sudo make

sudo make install

相关推荐
pursue.dreams8 分钟前
Ubuntu安装Jenkins完整教程
linux·ubuntu·jenkins
非典型代码13 分钟前
Jenkins发不出邮件
运维·servlet·jenkins
b***251116 分钟前
储能电池组的生产流程|深圳比斯特自动化
运维·自动化
实心儿儿21 分钟前
Linux系统 —— 基础命令1
linux·运维·服务器
大龄Python青年40 分钟前
C#快入教程:Linux安装.NET
linux·c#·.net
抠脚学代码1 小时前
Linux开发-->驱动开发-->字符设备驱动框架
linux·数据结构·驱动开发
FreeBuf_1 小时前
SesameOp 恶意软件滥用 OpenAI Assistants API 实现与 C2 服务器的隐蔽通信
运维·服务器·网络
凤凰战士芭比Q1 小时前
部署我的世界-java版服务器-frp内网穿透
java·服务器
Elias不吃糖1 小时前
第四天学习总结:C++ 文件系统 × Linux 自动化 × Makefile 工程化
linux·c++·学习
噜啦噜啦嘞好1 小时前
Linux进程信号
linux·运维·服务器