【GPU驱动开发】-LLVM和Clang环境部署

news2024/12/28 18:36:59

前言

不必害怕未知,无需恐惧犯错,做一个Creator!

一、下载LLVM源码

官网下载源码
https://github.com/llvm/llvm-project/releases/
包含所有llvm版本的下载内容

win源码传到ubuntu

  1. 首先将虚拟机关机,在虚拟机设置中,选择选项面板,选择共享文件夹,选择总是启用
    在这里插入图片描述

  2. 将win下的共享文件夹加入的指定目录下:在/mnt目录下输入

sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
  1. 复制llvm_project到ubuntu系统下
cp -rf llvm-project /home/abc/

二、相关环境准备

Gcc和g++编译器安装

sudo apt-get install build-essential

cmake安装

sudo apt  install cmake

ninjia安装

sudo apt install ninja-build

git安装

sudo apt install git

三、LLVM编译

创建一个构建文件夹并在其中进行构建

mkdir .my_build
cd .my_build

使用ninja进行构建和编译

cmake -DCMAKE_BUILD_TYPE=Debug -DLLVM_ENABLE_PROJECTS=clang -G Ninja ../
ninja all

添加到环境变量
在 Ubuntu 系统中,你可以通过修改 ~/.bashrc 文件来将 LLVM 的 bin 目录添加到 PATH 环境变量中,以及将 LLVM 的 lib 目录添加到 LD_LIBRARY_PATH 环境变量中。在文件末尾添加以下行:
export PATH=/path/to/llvm/bin: P A T H e x p o r t L D L I B R A R Y P A T H = / p a t h / t o / l l v m / l i b : PATH export LD_LIBRARY_PATH=/path/to/llvm/lib: PATHexportLDLIBRARYPATH=/path/to/llvm/lib:LD_LIBRARY_PATH

配置CMake
如果您使用CMake构建项目,确保CMake能够找到LLVM。
cmake -DLLVM_DIR=/home/zq/桌面/llvm-project/llvm/install/lib/cmake/llvm

后添加Clang
如果一开始没有clang加入到构建中,则修改llvm/build目录下的CMakeCache.txtd
LLVM_ENABLE_PROJECTS:STRING=clang
在上述行后面添加clang,在重新使用ninja构建编译

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1424481.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

机器学习:梯度下降法(Python)

LinearRegression_GD.py import numpy as np import matplotlib.pyplot as pltclass LinearRegression_GradDesc:"""线性回归,梯度下降法求解模型系数1、数据的预处理:是否训练偏置项fit_intercept(默认True)&…

【Tomcat与网络8】从源码看Tomcat的层次结构

在前面我们介绍了如何通过源码来启动Tomcat,本文我们就来看一下Tomcat是如何一步步启动的,以及在启动过程中,不同的组件是如何加载的。 一般,我们可以通过 Tomcat 的 /bin 目录下的脚本 startup.sh 来启动 Tomcat,如果…

node.js(nest.js控制器)学习笔记

nest.js控制器: 控制器负责处理传入请求并向客户端返回响应。 为了创建基本控制器,我们使用类和装饰器。装饰器将类与所需的元数据相关联,并使 Nest 能够创建路由映射(将请求绑定到相应的控制器)。 1.获取get请求传参…

使用 Enigma Protector 无需管理员权限即可注册 ActiveX/COM 组件

我们的客户对如何保护 .NET 应用程序免遭破解和转储提出了许多问题。在本文中,我们将尝试描述保护此类特定文件的所有薄弱环节和细节。 The Enigma Protector 是一款专门设计用来为应用程序添加高强度保护的强大工具。它旨在防止非法复制、反编译和修改代码等操作&…

数据结构与算法面试系列-03

1. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米?第10次反弹多高? 程序代码 package com.jingxuan.system;public class Sphere {public static void main(String[] args) {double s = 0;double t = 100;for (int i…

搜维尔科技:第九届元宇宙数字人大赛,参赛小组报名确认公告!

各位参赛选手大家好,近期已收到新增报名信息如下表,请各位参赛选手确认,如果信息有误或信息不完整请电话联系赛务组工作人员进行更正 随着元宇宙时代的来临,数字人设计成为了创新前沿领域之一。为了提高大学生元宇宙虚拟人角色策划…

多线程代码案例之线程池

作者简介: zoro-1,目前大二,正在学习Java,数据结构,javaee等 作者主页: zoro-1的主页 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 创建线程池 public class Poo…

Java面试题宝典(万字长文)

Java 基础 1. JDK 和 JRE 有什么区别? JRE是Java运行环境,即(Java Runtime Environment),也就是Java平台。所有的Java程序都要在JRE下才能运行。 JDK是开发工具包,即(Java Development Kit&am…

经典mysql实操和行专列操作

1.删除除了学号字段以外,其它字段都相同的冗余记录,只保留一条!(也就是要删除王五和赵六中一条重复数据只留一条) 要求的预期效果: 原始数据创建表结构: CREATE TABLE tb_student (id int(16) NOT NULL,na…

科技云报道:云原生PaaS,如何让金融业数字化开出“繁花”?

科技云报道原创。 在中国金融业数字化转型的历史长卷中,过去十年无疑是一部磅礴的史诗。 2017年,南京银行第一次将传统线下金融业务搬到了线上。那一年,它的互联网金融信贷业务实现了过去10年的业务总额。 2021年,富滇银行通过…

【大数据安全】数据管理安全安全分析隐私保护

目录 一、数据管理安全 (一)数据溯源 (二)数字水印 (三)策略管理 (四)完整性保护 (五)数据脱敏 二、安全分析 (一)大数据安全…

数据库技术栈 —— B树与B+树

数据库技术栈 —— B树与B树 一、复习二、MySQL中的B树应用 一、复习 B树是多路平衡查找树的意思 参考文章或视频链接[1] 【王道计算机考研 数据结构】 二、MySQL中的B树应用 这篇文章里的计算题还是讲的不错的。 参考文章或视频链接[1] 《探究MySQL的索引结构选型》

Wireshark网络协议分析 - Wireshark速览

在我的博客阅读本文 文章目录 1. 版本与平台2. 快速上手2.1. 选择网络接口进行捕获(Capture)2.2. 以Ping命令为例进行抓包分析2.3. 设置合适的过滤表达式2.4. 数据包详情2.5. TCP/IP 四层模型 3. 参考资料 1. 版本与平台 Wireshark是一个开源的网络数据…

IDEA的properties默认编码是UTF-8但是不显示中文

问题描述 今天打开IDEA项目,发现messages_zh_CN.properties不显示中文了 但奇怪的是target下的文件就是展示的中文 而且我IDEA已经配置了编码格式是UTF-8了 使用nodepad打开源文件,也是展示编码格式是UTF-8 (打开target下的文件,…

QWT开源库使用

源代码地址:Qwt Users Guide: Qwt - Qt Widgets for Technical Applications Qwt库包含GUI组件和实用程序类,它们主要用于具有技术背景的程序。除了2D图的框架外,它还提供刻度,滑块,刻度盘,指南针&#xf…

EDR、SIEM、SOAR 和 XDR 的区别

在一个名为网络安全谷的神秘小镇,居住着四位守护者,他们分别是EDR(艾迪)、SIEM(西姆)、SOAR(索亚)和XDR(艾克斯)。他们各自拥有独特的能力,共同守…

Android组件化中的Arouter学习

假设现在有两个业务组件登录和问答模块之间需要进行通信,可能会想到用反射的方式,是可以但是会影响性能,而写的代码比较多类名这些要记清楚。 路由可以看做表,每个map对应一张表 我们可以试着这么写,完成MainActivity跳…

03. 【Linux教程】安装虚拟机

前面小节介绍了 Linux 和 GUN 项目,本小节开始学习如何在 Windows 上安装虚拟机,虚拟机安装之后可以在虚拟机中安装 Linux 相关的操作系统,常见的虚拟机软件有 VirtualBox、VMware 等等,本教程使用 VMware 虚拟机软件来演示如何安…

【Linux取经路】进程控制——进程等待

文章目录 一、进程创建1.1 初识 fork 函数1.2 fork 函数返回值1.3 写时拷贝1.4 fork 的常规用法1.5 fork 调用失败的原因1.6 创建一批进程 二、进程终止2.1 进程退出场景2.2 strerror函数2.3 errno全局变量2.4 程序异常2.5 进程常见退出方法2.6 exit 函数2.7 _exit 函数和 exit…

2024年股市走向!温州哪家证券公司股票开户佣金最低呢,最低可以多少?

​ 对于2024年股市的预测很难做出准确的判断,因为股市受到多种因素的影响,包括经济状况、政策变化、国际形势等。然而,我们可以根据当前的一些趋势和因素来对未来的股市做出一些预测。 首先,随着全球经济的逐步恢复&#xff0c…