docker基础命令
初次启动container(容器),会从image(镜像)生成一个新的容器来启动。
container是image的实例,container中的修改在独立的空间进行,不会改动image,当然可以同步container到image。
docker run
等价于create container & docker start
, 创建新容器,并启动它。
docker start
启动已存在的容器
Ubuntu安装docker
Ubuntu下用Qemu安装Ubuntu
Qemu在Linux安装新系统一次成功,在window下卡启动报告~
安装 qemu
apt-get instll qemu qemu-utils qemu-system-x86
新建虚拟机,安装系统
qemu-img create -f qcow2 ubunut18_x86_64.img 10G
qemu-img info ubunut18_x86_64.img
qemu-system-x86_64 --enable-kvm -m 1G -smp 2 -boot order=dc -hda /home/u0u0/works/qemu-images/ubuntu18.img -cdrom /home/u0u0/ubuntu-18.04.5-live-server-amd64.iso
查询头文件是哪个包提供的
$sudo apt-get install apt-file
$sudo apt-file update
$apt-file search "/usr/include/limits.h"
云计算相关基础介绍
编译ffmpeg库
win10下用WSL编译
环境
- win10安装WSL
- 安装Ubuntu 20.04 LTS
sudo apt-get install yasm make
编译
"D:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvars32.bat"
bash
./configure --toolchain=msvc --arch=x86_32 --enable-x86asm --enable-shared --enable-w32threads --disable-doc --disable-static --enable-optimizations --disable-debug --prefix=output
make install
Mac 编译
m1机器编译arm64
./configure --arch=arm64 --disable-shared --enable-pthreads --disable-doc --enable-static --enable-optimizations --disable-debug --prefix=output_arm64
make install
intel机器编译x86_64
./configure --arch=x86_64 --disable-shared --enable-pthreads --disable-doc --enable-static --enable-optimizations --disable-debug --prefix=output_x86_64
make install
合并
lipo -create output_arm64/lib/libavcodec.a output_x86_64/lib/libavcodec.a -output /prebuilt/mac/libavcodec.a
strip -S /prebuilt/mac/libavcodec.a
golang path 库不适配win,用path/filepath替代
golang path 库不适配win,用path/filepath替代
坑
golang Sleep的精度无法用来写驱动
now1 := time.Now()
time.Sleep(18 * time.Microsecond)
now2 := time.Now()
fmt.Println(now2.Sub(now1))
---- output ----
30.938µs
33.749µs
26.979µs
26.146µs
25.52µs
25.209µs
27.292µs
25µs
150.52µs
28.021µs
27.656µs
25.52µs
146.77µs
27.709µs
25µs
142.447µs
149.843µs
ubuntu 20安装gcc7
安装gcc7和g++7
sudo apt install gcc-7 g++-7
添加配置
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9 --slave /usr/bin/gcov gcov /usr/bin/gcov-9
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 70 --slave /usr/bin/g++ g++ /usr/bin/g++-7 --slave /usr/bin/gcov gcov /usr/bin/gcov-7
切换gcc版本
sudo update-alternatives --config gcc