记录Centos7 漫漫配置路
记录Centos7 漫漫配置路
- 一、 配置源
- 二、 clinfo
- 三、 PCL 配置
- 1. 依赖
- 2. eigen
- 3. boost
- 4. flann
- 5. pcl
- 四、YAML-CPP
- 五、 miniconda 安装 python3.6 和 pytorch
- 六、libbot 配置
- 1. 容易安装的依赖
- 2. 需要源码安装的依赖
- 3. [libbot](https://github.com/libbot2/libbot2)
简单地说:centos7很多依赖包都没有…有的版本也很旧 基本就在源码安装…
一、 配置源
一下东西就和我说docker有问题 源有问题,例如这种报错:
curl#7 - “Failed to connect to 2: Network is unreachable”
[Errno 14] curl#6 - “Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error”
只好重新配源 不看不知道啊!/etc/yum.repos.d/里面的源太多了!
清华,阿里,还有个什么163的
cd /etc/yum.repos.d/
# 1. 备份之前的源
mkdir repo_bak
sudo mkdir repo_bak
sudo mv *.repo repo_bak/
#2. 拉一下阿里源
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
sudo wget -O /etc/yum.repos.d/epel-7.repo http://mirrors.aliyun.com/repo/epel-7.repo
# 3. 我到这一步做sudo yum makecache还是不行,所以根据网上别人的方法,需要把CentOS-Base.repo 里面的releaseserver替换成7
sudo vim CentOS-Base.repo
:%s/$releaseserver/7/g# 4. 重建缓存
sudo yum clean all
sudo yum makecache
sudo yum install -y epel-release
二、 clinfo
# 1. opencl-headers
sudo yum update
sudo yum install epel-release ocl-icd -y
wget http://rpmfind.net/linux/epel/7/x86_64/Packages/o/opencl-headers-2.2-1.20180306gite986688.el7.noarch.rpm
chmod +x opencl-headers-2.2-1.20180306gite986688.el7.noarch.rpm
sudo yum install -y opencl-headers-2.2-1.20180306gite986688.el7.noarch.rpm
# 2. clinfo
git clone https://github.com/Oblomov/clinfo.git
cd clinfo
make
sudo make install
clinfo
验证完支持OpenCL~
三、 PCL 配置
官方配置网站:https://pcl.readthedocs.io/projects/tutorials/en/latest/compiling_pcl_posix.html
github代码链接:
1. 依赖
## 1.1 安装高版本gcc gc++
## yum下载的是4.8 版本太低·
sudo yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++
vim ~/.zshrc
## 插入 source /opt/rh/devtoolset-9/enable
source ~/.zshrc
## 1.2 flann依赖
sudo yum install -y lz4-devel.x86_64
## 1.3 scl
sudo yum install centos-release-scl
## 1.4 clang
sudo yum install clang-devel.x86_64
## libusb-1.0
sudo yum install libusb-devel libusbx-devel
sudo yum install libudev libudev-devel
# mpi
sudo yum install mpich-3.0-devel.x86_64
sudo yum install qt5-qtbase-devel
# metslib
wget http://35.200.10.19/centos/7/epel/x86_64/Packages/metslib-devel-0.5.3-4.el7.noarch.rpm
sudo rpm -ivh metslib-devel-0.5.3-4.el7.noarch.rpm
# QHULL
sudo yum install qhull-devel
#VTK
sudo yum install vtk vtk-devel
2. eigen
wget https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.zip
cd eigen-3.4.0
mkdir build # 新建一个build文件夹
cd build # 进入build文件夹
cmake .. # 用cmake生成Makefile
sudo make install
3. boost
## 3.1 拉取源码
wget https://archives.boost.io/release/1.85.0/source/boost_1_85_0.tar.gz
tar -zxvf boost_1_85_0.tar.gz
## 3.2 下载boost 所需依赖
sudo yum -y install gcc gcc-c++ python python-devel libicu libicu-devel zlib zlib-devel bzip2 bzip2-devel
# 启动 boost 安装指南脚本./bootstrap.sh
# 安装boost 全部 模块
sudo ./b2 install --with=all
4. flann
## 4.1拉取源码
git clone https://github.com/mariusmuja/flann.git
cd flann
mkdir build
cd build
## 4.2修改cmakelist
vim ../CMakeLists.txt
# 在project(xxx)之后添加以下两行 指定c++11
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
## 4.3 编译 安装
cmake ..
make -j8
5. pcl
PCL配置官网
wget https://github.com/PointCloudLibrary/pcl/archive/refs/tags/pcl-1.14.1-rc1.zip
cd pcl-pcl-1.14.1-rc1/
mkdir build
cd build
cmake ..
make -j8
sudo make install
题外话:PCL后续使用的时候遇到了一个问题,cmake和make的时候都不会报错,只有运行需要引用pcld的程序时有可能会报错:libgomp 需要4.5版本的但是没有找到对应的
最后排查发现,使用的是/usr/local里的libgomp,也不知道谁编译的放过去的,
试错之路:
试图修改软连接,
成功之路:
最后发现 /usr/lib64 系统就有自带的 libgomp,但是由于/usr/local 里的优先级更高,所以获取的是 /usr/local 里的。
方案1:(简单粗暴但有可能影响别人)
cd ~
mkdir old_so_local
sudo mv /usr/local/lib64/libgomp.so.* ~/old_so_local
方案2:只影响自己
在CMakeLists.txt里 需要生成的可执行程序的target_link_libraries后加以下内容
set_target_properties(可执行程序名称 PROPERTIES LINK_FLAGS "-Wl,-rpath,/usr/lib64")
示例:
add_executable(OcSerial tests/main.cpp planner/ocSerial.cpp)
target_link_libraries(OcSerial ${PCL_LIBRARIES} )
set_target_properties(OcSerial PROPERTIES LINK_FLAGS "-Wl,-rpath,/usr/lib64")
四、YAML-CPP
git clone https://gitee.com/mirrors/yaml-cpp.git
cd yaml-cpp
mkdir build
cd build
cmake ../ -DYAML_BUILD_SHARED_LIBS=on ..
make -j4
sudo make install
五、 miniconda 安装 python3.6 和 pytorch
cd ~# 拉取miniconda2 (脑子抽了没下miniconda3)wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda2-4.7.12.1-Linux-x86_64.shchmod +x Miniconda2-4.7.12.1-Linux-x86_64.sh./Miniconda2-4.7.12.1-Linux-x86_64.sh # 修改zshrc xxx为用户名
export PATH=$PATH:/usr/local/cmake/bin:/home/xxx/miniconda2/bin
# 修改完之后重启一个终端
source ~/.zshrc
# 新建环境
conda create -n py36 python=3.6
conda init zsh
conda activate py36
# 更新pip
pip install --upgrade pip
终端输入nvidia-smi 查看cuda能支持的最高版本
nvidia-smi输出的CUDA Version是指该显卡驱动能支持的最高CUDA Toolkit版本。
具体来说,nvidia-smi显示的CUDA Version是当前驱动的最高支持版本。由于CUDA是向下兼容的,所以最高支持版本以下的CUDA版本都是支持的。例如,如果nvidia-smi显示最高版本支持为11.4,那么11.4以及11.4以下的版本都是支持的。
首先根据python版本确定需要的pytorch版本
python3.6-> 最高支持torch 1.10
前往网址pytorch 版本选择
找到1.10 对应的cuda11.1的版本
# 下载torch torchvision
pip install torch==1.10.0+cu111 torchvision==0.11.0+cu111 torchaudio==0.10.0 -f https://download.pytorch.org/whl/torch_stable.html
六、libbot 配置
Requirements
GLib 2.0+
CMake >=3.1
LCM (http://lcm.googlecode.com) 💡
Java (Sun JDK or OpenJDK strongly preferred)
Python
GTK+ 2.0+ (required by bot2-vis)
OpenGL (required by bot2-vis)
GLUT
PyGTK
1. 容易安装的依赖
#java
sudo yum install java-1.8.0-openjdk-devel
#GLib 2.0+
sudo yum install glib2-devel
sudo yum install glibc-static.x86_64
udo yum install build-essential
sudo yum install autoconf automake libtool
sudo yum install gdk-pixbuf2-devel.x86_64
# GTK+ 2.0+ (required by bot2-vis)
sudo yum install gtk2-devel.x86_64
# GLUT
sudo yum install freeglut-devel.x86_64
2. 需要源码安装的依赖
# 1. lcm 官网:http://lcm-proj.github.io/lcm/
git clone https://github.com/lcm-proj/lcm.git# 2. 安装cmake3.1以上版本
# 因为: yum install的cmake版本小于3.1 会报错
sudo yum remove cmake
wget https://github.com/Kitware/CMake/releases/download/v3.17.2/cmake-3.17.2.tar.gz
tar -zxvf cmake-3.17.2.tar.gz
cd cmake-3.17.2
./bootstrap --prefix=/usr/local/cmake -- -DCMAKE_BUILD_TYPE:STRING=Release
make
sudo make install
## 然后修改~/.zshrc
export PATH=/usr/local/cmake/bin:$PATH## 3. 缺少 lcm-python
# 本机python2.7 pip lcm 没有
# 下载了conda 和python3.6 (见四、) 并且更新了pip之后
pip install lcm
cmake .. -DCMAKE_BUILD_TYPE=Debug
make -j8
sudo make install
wget https://www.lua.org/ftp/lua-5.4.1.tar.gz
tar -zxvf lua-5.4.1.tar.gz
yum install -y readline-devel
make linux test
sudo make install
3. libbot
git clone https://github.com/libbot2/libbot2.git
cd libbot2
sudo make BUILD_PREFIX=/usr/local
sudo yum install -y glib-devel.x86_64
相关文章:

记录Centos7 漫漫配置路
记录Centos7 漫漫配置路 一、 配置源二、 clinfo三、 PCL 配置1. 依赖2. eigen3. boost4. flann5. pcl 四、YAML-CPP五、 miniconda 安装 python3.6 和 pytorch六、libbot 配置1. 容易安装的依赖2. 需要源码安装的依赖3. [libbot](https://github.com/libbot2/libbot2) 简单地说…...

论文 | OpenICL: An Open-Source Framework for In-context Learning
主要内容: 2. 提供多种 ICL 方法: 3. 完整的教程: 4. 评估和验证: 背景: 随着大型语言模型 (LLM) 的发展,上下文学习 (ICL) 作为一种新的评估范式越来越受到关注。问题: ICL 的实现复杂…...

尚硅谷rabbitmq 2024 Federation配置 第60节答疑
rabbitmq联邦队列怎么做 要在 RabbitMQ 中设置联邦队列(Federated Queues),你需要遵循以下步骤。联邦队列允许你在不同的 RabbitMQ 实例之间共享队列,从而实现消息的分布式处理和高可用性。 ### 步骤 1:安装 RabbitMQ…...

Ubuntu编译MySQL驱动连接QT
1、安装MySQL 安装MySQL软件以及驱动。 sudo apt-get install mysql-serversudo apt install mysql-clientsudo apt-get install libmysqlclient-dev 2、编译qmysql驱动 2.1、修改mysql.pro 找到Qt源码中的mysql.pro项目文件,一般位于:/opt/Qt/5.15…...

时间序列预测(七)——梯度消失(Vanishing Gradient)与梯度爆炸(Exploding Gradient)
目录 一、定义 二、产生原因 三、解决方法: 梯度消失与梯度爆炸是深度学习中常见的训练问题,它们主要发生在神经网络的反向传播过程中,使得模型难以有效学习。 一、定义 1、梯度消失(Vanishing Gradient)…...

ARM assembly 12: GCD(最大公约数)计算
首先,我们看看GCD(Greatest Common Divisor)的CPP实现 int gcd(int a, int b) {if(b 0) return a;return gcd(b, a%b); }基于下面的gcd.s文件,我们尝试实现gcd函数 //gcd.s .global main .extern fopen, fprintf, fclose, printf, atoi.section .dat…...

「实战应用」如何用图表控件LightningChart可视化天气数据?(一)
LightningChart.NET完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学…...

基于深度学习的细粒度图像分析综述【翻译】
🥇 版权: 本文由【墨理学AI】原创首发、各位读者大大、敬请查阅、感谢三连 🎉 声明: 作为全网 AI 领域 干货最多的博主之一,❤️ 不负光阴不负卿 ❤️ 文章目录 基础信息0 摘要1 INTRODUCTION2 识别与检索 RECOGNITION VS. RETRIEVAL3 问题和…...

yolo笔记
目录 Anaconda安装Pytorchyolov5下载部署labelimg安装 Anaconda安装 官网链接 https://www.anaconda.com/ 官网链接链接: 官网链接https://www.anaconda.com/ 直接下最新版 (网站会自动检测系统,我是在Windows环境截图的) bash Anaconda3-XXXX-Linux-x86_64.sh一…...

Android平台RTSP|RTMP播放器PK:VLC for Android还是SmartPlayer?
好多开发者,希望在Android端低延迟的播放RTMP或RTSP流,本文就目前市面上主流2个直播播放框架,做个简单的对比。 VLC for Android VLC for Android 是一款功能强大的多媒体播放器,具有以下特点和功能: 广泛的格式支持…...

IDEA下面的Services不见了(解决方案)
大家使用IDEA有时候新打开个项目这个东西不会自动出现如何解决 配置方法: 右上角打开进入Edit Configurations 进入后我们看到里面是没有SpringBoot相关内容的 点击加号选择SpringBoot 然后Apply Ok即可,现在IDEA下面就会出现Service了,打…...

【pyspark学习从入门到精通7】DataFrames_2
目录 创建 DataFrames 生成我们自己的 JSON 数据 创建 DataFrame 创建临时表 简单的 DataFrame 查询 DataFrame API 查询 SQL 查询 创建 DataFrames 通常,您会通过使用 SparkSession(或在 PySpark shell 中调用 spark)导入数据来创建 …...

Server-Sent Event(SSE) GPT场景实现
关于SSE的基本概念可以看一下阮一峰老师的这篇文章:Server-Sent Events教程。 现在比较常见的场景是gpt回答的时候类似下图这种打字机的情况,因为AI一般响应时间会比较长,使用这种方式能让人别等那么久,是一个相对比较良好的用户…...

美国Honeywell霍尼韦尔气体分析侦测器传感器MIDAS-K-HCL说明书
上海德奥达 ---Honeywell霍尼韦尔气体分析侦测器传感器MIDAS-K-HCL是一款用于检测氯化氢气体的高性能传感器。以下是该传感器的技术参数和描述:技术参数:-测量范围:0-50ppm-灵敏度:0.5ppm-响应时间:≤30秒-电源&…...
L1练习-鸢尾花数据集处理(分类/聚类)
背景 前文(《AI 自学 Lesson1 - Sklearn(开源Python机器学习包)》)以鸢尾花数据集的处理为例,本文将完善其代码,在使用 sklearn 的部分工具包基础上,增加部分数据预处理、数据分析和数据可视化…...

javaweb以html方式集成富文本编辑器TinyMce
前言: 单一的批量图片上传按钮,禁用tinymce编辑器,但是还可以操作图片编辑; 多元化格式的富文本编辑要求; 采用tinymce实现。 附: tinymce中文手册网站: http://tinymce.ax-z.cn/download-all.…...

大学生福音!用GPT-4o几分钟内轻松读懂一篇论文!
文章目录 一、读论文智能体:PDFAI操作指导阅读论文上传论文并分析进一步研究导出可用代码 二、感受 一、读论文智能体:PDFAI 操作指导 ChatGPT 4o国内直接访问地址:https://share.xuzhugpt.cloud/ 上plus的车 输入购买的授权码即可。 默认…...

微信小程序昵称获取
<view class"shouquan_list"> <label>昵称</label> <input type"nickname" value"{{nichengshoudong}}" bindinput"bindKeyInputnicheng" placeholder"请输入昵称" placeholder-style"color:r…...

SQL进阶技巧:如何找出开会时间有重叠的会议室?| 时间区间重叠问题
目录 0 场景描述 1 数据准备 2 问题分析 方法1:利用 lateral view posexplode()函数将表展开成时间明细表 方法2:利用数学区间讨论思想求解 3 小结 如果觉得本文对你有帮助,想进一步学习SQL语言这门艺术的,那么不妨也可以选…...

Educational Codeforces Round 170 (Rated for Div. 2) D 题解
to sum of:前三题都是究极水题,补补D题吧,dp太钛肽弱了.. Problem - D - Codeforces--Attribute Checks 思路:首先得坚定地确定m^2,然后剩下的复杂度思考怎么优化.. key:每一个0只考虑影响到下一个0之间的数字!! 定义dp[i][j]为,在有i个能力点时.点了…...

NeRS: Neural Reflectance Surfaces for Sparse-view 3D Reconstruction in the Wild
阅读记录: 1. 2.优点1:我们的方法仅依赖于近似的相机位姿估计和粗略的类别级形状模板。 3.我们的关键见解是,我们可以强制执行基于表面的 3D 表示,而不是允许广泛用于体积表示的无约束密度。重要的是,这允许依赖于视…...

【Linux】su 命令的运行原理以及su切换用户默认继承环境配置
一、su 命令的运行原理 原理解释: su(switch user)命令用于在Linux和Unix系统中切换用户身份。 当你执行 su 命令时,系统会创建一个新的进程,通常是一个新的 shell 实例。这个新进程会以目标用户的身份运行&#…...

libtorch环境配置
环境配置 建议在linux上配置对应环境 可以在autoDL上租一个服务器来搭建,带有pytorch的环境 https://www.autodl.com/home 我自己的win电脑上安装了pytorch,但是配置时会报错,于是到ubuntu上配置 电脑上装有pytorch的就不需要再下载libtorc…...

【C语言】define宏定义与const修饰限定
两者都是将字符替换为相应的数值。 区别在于: #define宏定义纸进行字符串替换,无类型检查 const修饰符限定变量为只读变量 #include <stdio.h> #define PI 3.14159 //符号常量 /* 功能:宏定义与const修饰符限定 时间:20…...

基于深度学习的基于视觉的机器人导航
基于深度学习的视觉机器人导航是一种通过深度学习算法结合视觉感知系统(如摄像头、LiDAR等)实现机器人在复杂环境中的自主导航的技术。这种方法使机器人能够像人类一样使用视觉信息感知环境、规划路径,并避开障碍物。与传统的导航方法相比&am…...

苍穹外卖学习笔记(二十三)
拒单 OrderController /*** 拒单*/PutMapping("/rejection")ApiOperation("拒单")public Result rejection(RequestBody OrdersRejectionDTO ordersRejectionDTO) throws Exception {orderService.rejection(ordersRejectionDTO);return Result.success(…...

vLLM 推理引擎性能分析基准测试
文章目录 分析步骤案例案例描述测试数据集 原始数据〇轮测试(enable-64)一轮测试(enable-128)二轮测试(enable-256)三轮测试(enable-512)四轮测试(enable-2048࿰…...

图像增强论文精读笔记-Kindling the Darkness: A Practical Low-light Image Enhancer(KinD)
1. 论文基本信息 论文标题:Kindling the Darkness: A Practical Low-light Image Enhancer 作者:Yonghua Zhang等 发表时间和期刊:2019;ACM MM 论文链接:https://arxiv.org/abs/1905.04161 2. 研究背景和动机 现有…...

HALCON数据结构之字符串
1.1 String字符串的基本操作 *将数字转换为字符串或修改字符串 *tuple_string (T, Format, String) //HALCON语句 *String: T $ Format //赋值操作*Format string 由以下四个部分组成: *<flags><field width>.<precision><conversion 字符&g…...

string模拟优化和vector使用
1.简单介绍编码 utf_8变长编码,常用英文字母使用1个字节,对于其它语言可能2到14,大部分编码是utf_8,char_16是编码为utf_16, char_32是编码为utf_32, wchar_t是宽字符的, utf_16是大小为俩个字节&a…...