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

相关推荐
wanhengidc9 小时前
云手机存在哪些技术瓶颈
运维·服务器·安全·智能手机·生活
水天需01010 小时前
Vim 标签页(Tab)操作详解
linux
管理大亨10 小时前
ELK + Redis Docker 企业级部署落地方案
大数据·运维·elk·elasticsearch·docker·jenkins
IT199510 小时前
C++使用“长度前缀法”解决TCP“粘包 / 拆包”问题
服务器·网络·c++·tcp/ip
德迅云安全—珍珍10 小时前
物理服务器、云服务器、裸金属服务器的区别
运维·服务器
DeeplyMind10 小时前
第5章:并发与竞态条件-15:Atomic Variables
linux·驱动开发·ldd
好记忆不如烂笔头abc10 小时前
超微服务器的ipmi调整风扇运行模式
运维·服务器
一个响当当的名号10 小时前
ASP.NET 期末突击
运维·服务器
秋深枫叶红10 小时前
嵌入式第三十五篇——linux系统编程——exec族函数
linux·前端·学习
@Wufan10 小时前
ubuntu服务器子用户(无sudo权限)安装/切换多个版本cuda
linux·服务器·ubuntu·cuda