软件安装基本内容和Dockerfile中的情况
软件安装
适配
软件属性依赖--查询--验证--升级--卸载
验证与数字签名--数字签名检查
原厂发布的GPG数字签名的公钥文件
Dockerfile
ARG ENV RUN COPY ENTRYPOINT CMD
Linux:
wget cd mv cp unzip tar mkdir
echo ln -s
apt-get update apt-get install apt-key adv
rm
./configure make make install cmake ldconfig
&& >
文件地址
/var/lib/apt/lists/*
Dockerfile
构建跨硬件架构(multi-arch)的docker镜像
Multi architecture Docker镜像
Docker 通过使用 manifest lists 技术来实现Multi architecture Docker镜像
软件管理器按安装
1.Centos-- OpenHarmony--yum
RedHat-Package-Manager<RPM>--以数据库记录的方式将软件安装到Linux操作系统的软件管理机制
SRPM
一般使用--开发使用--dev
软件源--软件仓库
/etc/yum.repos.d/
01.编辑repo文件
02.
03.yum clean all和yum makecache命令
2.Ubuntu --apt
cd /etc/apt/
mv sources.list{,_bak}
01.写入源地址
内容写入 sources.list
02.添加 pubkey--签名
curl -s -L https://test/repository/raw/keys/nvidia-container-runtime/gpgkey | sudo apt-key add -
或者 -- 将证书文件下载到本地,然后添加证书:
curl -s https://test/repository/raw/keys/pubkey/ros-new.asc | sudo apt-key add -
sudo apt-add-repository "deb https://test/repository/apt-ros $(lsb_release -sc) main"
03.apt-get update
说明
apt 添加第三方库-- 添加第三方库,首先要获取该仓库的公共密钥
# setup sources.list
echo "deb http://packages.ros.org/ros/ubuntu bionic main" > /etc/apt/sources.list.d/ros1-latest.list
# setup keys -- Ubuntu 的密钥服务器获取
apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys C1CF***654
"add-apt-repository" 脚本添加 ppa 到当前的库中并且自动导入公钥
add-apt-repository 是由 python-software-properties 这个工具包提供的所以要先安装python-software-properties 才能使用 add-apt-repository
否则会显示“command not found”
安装方法:apt-get install python-software-propertie
源码编译安装
概念:
01. $PATH是运行可执行文件时的搜索路径
02.#头文件搜索目录--由g++的配置prefix指定的
①先搜索 当前目录
②然后搜索 -I指定的目录
③再搜索 gcc环境变量 CPLUS_INCLUDE_PATH(C程序使用的是C_INCLUDE_PATH)
④最后搜索 gcc内定目录
03.动态链接库
1.动态库管理工具ldconfig和ldd
ldd (list, dynamic, dependencies),即为:列出动态库依赖关系
ldconfig 是系统动态库连接管理工具
/lib和/usr/lib里面加东西,是不用修改/etc/ld.so.conf的,但是完了之后要调一下ldconfig
主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(
/etc/ld.so.cache /etc/ld.so.conf 修改完成后需要执行ldconfig
1.Autoconf工具是autotools系列工具中的一个,运行之后可对configure.in脚本配置文件进行处理进而生成configure可执行文件
1)./configure:
configure是一个脚本,一般由Autoconf工具生成,它会检验当前的系统环境,看是否满足安装软件所必需的条件
configure脚本最后会生成一个Makefile文件
automake用来生成Makefile.in文件
2.Cmake
3.catkin_make
catkin_make是在catkin工作区中构建代码的便捷工具。 catkin_make遵循catkin工作区的标准布局
其他情况
gtm.zip 出现了解压替换的情况出现,(192 MB/s) - ‘gtm.zip’ saved
Archive: gtm.zip
replace gtm-1.0.2/.cproject? [y]es, [n]o, [A]ll, [N]one, [r]ename:
--说明有重复,查看历史版本中是否有操作,确认--查看的版本和使用的版本
W: GPG error: https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64
InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A4B469963BF863CC
E: The repository 'https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64
InRelease' is not signed.
由于没有公钥,无法验证下列签名:
apt-get:处理repository数字签名无效、过期、没有签名:
即 如何强制 apt-get update?
如题:方式 1:使用apt-get命令行选项:apt-get update --allow-insecure-repositories