记录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

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

引领智慧文旅新纪元,开启未来旅游新境界

融合创新科技,重塑旅游体验,智慧文旅项目定义旅游新未来 在全球化的浪潮中,旅游已成为连接世界的重要纽带。智慧文旅项目,不仅仅是一次技术的革新,更是对旅游行业未来发展的一次深刻思考。信鸥科技通过运用云计算、大数…

多功能点击器(文末附Gitee源码)——光遇自动弹奏

之前提到的多功能点击器,使用场景比较多,之前玩光遇喜欢在里面弹琴,想到用这个点击器也能自动弹琴,跟别的自动弹琴脚本不一样,这个比较简单容易操作。 借这个光遇自动弹琴使用教程再讲解一下这个多功能点击头的使用方法…

Linux编辑器-vim的配置及其使用

vim是一种多模式的编辑器: 1.命令模式(默认模式):用户所有的输入都会当作命令,不会当作文本输入。 2.插入模式:写代码, 按「 i 」切换进入插入模式「 insert mode 」,按 “i” 进入…

【安当产品应用案例100集】023-企业内部对Oracle数据库动态凭据的管理

凭据(Credential),用于验证个人或系统身份的信息。在信息技术领域,凭据通常指的是用来证明用户身份的数据,以便系统能够确认用户是否具有访问资源或执行某些操作的权限。凭据的种类很多,比如用户名和密码、…

《安全历史第5讲——秦始皇统一度量衡与代码标准化》

秦始皇统一了六国后,中国由此进入了一个崭新的历史时期。而帝国初期的一项重要决策——统一度量衡,让中国领先了千年,至今都因此受益。度量衡的统一极大地促进了社会经济交流,提高了行政效率,并为科学技术的发展奠定了…

SUGAR:用于皮层表面配准的球形超快图注意力框架|文献速递-基于深度学习的医学影像分类,分割与多模态应用

Title 题目 SUGAR: Spherical ultrafast graph attention framework for cortical surface registration SUGAR:用于皮层表面配准的球形超快图注意力框架 01 文献速递介绍 基于表面的分析在解剖和功能神经影像学研究中变得越来越受欢迎(Coalson 等,…

【专题】智启未来:新质生产力引擎驱动下的智能制造行业革新报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p37856 在当今全球经济格局深刻变革的大背景下,制造业作为国家经济的基石,正处在高质量发展的关键历史时期。智能决策作为一股崭新的力量,正逐步成为推动制造业数智化转型的强大新动能。众多制造企…

jar 导入本地和远程私服 maven 仓库

jar 导入本地和远程私服 maven 仓库artemis-http-client 认证库 maven 坐标为: 执行 mvn 命令: mvn install:install-file -DfileD:\download\lib\artemis-http-client-1.1.12.RELEASE.jar -DgroupIdcom.hikvision.ga -DartifactIdartemis-http-clien…

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具

微信小程序:miniprogram-ci自动打包工具使用介绍以及支持配置环境变量、jekins打包、taro、uni-app三方工具 背景介绍 一直都是本地电脑运行微信开发者工具打包上传。多项目中新老版本对node版本要求不一致,老是切来切去。而且同一个人开发上传需要打包…

ETL技术在金蝶云星空与旺店通WMS集成中的应用

金蝶云星空数据集成到旺店通WMS的技术案例分享 在数字化转型的背景下,现代企业对系统间的数据集成需求日益增加。本篇文章将以“组装入库>其他入库单-1”方案为例,详细解析如何通过轻易云数据集成平台,实现金蝶云星空与旺店通WMS之间的数…

大数据-174 Elasticsearch Query DSL - 全文检索 full-text query 匹配、短语、多字段 详细操作

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

【软件工程】软件工程入门

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀软件开发必练内功_十二月的猫的博客-CSDN博客 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 1. 前…

海绵宝宝动画网页

适合学习、作业、小白 部分代码 <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>海绵宝宝-首页</title><link rel"stylesheet" type"text/css" href"css/style.css"/><me…

国外电商系统开发-运维系统应用和软件安装过程

安装流程图 注意&#xff1a;上面只是作者本人安装Apache的举例&#xff0c;如果您的安装步骤不相同都没关系&#xff0c;您完全可以自行定义。在这里只是为了演示而已。 现在&#xff0c;开始创建任务&#xff1a; 点击添加步骤任务&#xff1a; 现在&#xff0c;可以看到页面…

金融信用评分卡建模项目:AI辅助

最近我一直忙着开发一个信用评分卡建模工具&#xff0c;所以没有时间更新示例或动态。今天&#xff0c;我很高兴地跟大家分享&#xff0c;这个工具的基本框架已经完成了&#xff0c;并且探索性的将大语言模型&#xff08;AI&#xff09;整合了进去。目前ai在工具中扮演智能助手…

Gradio 全指南 | 轻松构建和托管机器学习界面

唠唠闲话 Gradio 是专为机器学习设计的轻量级 Python 库&#xff0c;它以简洁直观的方式将机器学习模型与用户界面相结合。利用 Gradio&#xff0c;用户可以轻松地通过图形界面输入数据并查看模型输出。此外&#xff0c;Gradio 还具备分享功能&#xff0c;极大地简化了模型在网…

c语言库文件

c语言库文件 动态库动态库制作首先生成动态库文件名使用动态库编译动态库运行删除动态库1.sudo su 静态库静态库制作需要将源文件.c转换成二进制文件.o&#xff08;重定向文件&#xff09;将重定向文件打包成静态库文件使用静态库文件 静态库和动态库的区别复杂工程设定工程目录…

MySQL【知识改变命运】07

MySQL 1&#xff1a;Group by 分组查询1.1&#xff1a;语法&#xff1a;1.2&#xff1a;练习 2&#xff1a;having⼦句3回顾&#xff1a;3&#xff1a;内置函数3.1 :⽇期函数 1&#xff1a;Group by 分组查询 可以根据某列&#xff0c;进行分组查询&#xff0c;比如学校里面的…

NAT:网络地址转换

基本知识 1.公有IP和私有IP 公有IP:全球唯一&#xff0c;可以在互联网中通信&#xff0c;付费使用 私有IP&#xff1a;本地唯一&#xff0c;不可以在互联网中使用&#xff0c;无需付费 私网地址范围 A类: 10.0.0.0-------10.255.255.255 B类&#xff1a;172.16.0.0------1…

汽车免拆诊断案例 | 2023款零跑C01纯电车后备厢盖无法电动打开和关闭

故障现象  一辆2023款零跑C01纯电车&#xff0c;累计行驶里程约为2万km&#xff0c;车主进厂反映&#xff0c;后备厢盖无法电动打开和关闭。 故障诊断  接车后试车&#xff0c;操作后备厢盖外侧、驾驶人侧及遥控钥匙上的后备厢盖开启按钮&#xff0c;可以听到后备厢盖解锁的…