Rise的自留地

记录生活中的点滴,分享编程技术和游戏开发经验。

0%

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#安装vcpkg和openssl
cd F:\Github
git clone https://github.com/microsoft/vcpkg --depth=1
cd vcpkg
./bootstrap-vcpkg.bat
./vcpkg install openssl:x64-windows-static

#设置环境变量
$env:VCPKG_ROOT = 'F:\Github\vcpkg'
$env:OPENSSL_DIR = "%VCPKG_ROOT%\installed\x64-windows-static"
$env:OPENSSL_INCLUDE_DIR="%VCPKG_ROOT%\installed\x64-windows-static\include"
$env:OPENSSL_LIB_DIR="%VCPKG_ROOT%\installed\x64-windows-static\lib"
$env:OPENSSL_STATIC = 'Yes'
$env:OPENSSL_NO_VENDOR=1

[System.Environment]::SetEnvironmentVariable('VCPKG_ROOT', $env:VCPKG_ROOT, [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('OPENSSL_DIR', $env:OPENSSL_DIR, [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('OPENSSL_INCLUDE_DIR', $env:OPENSSL_INCLUDE_DIR, [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('OPENSSL_LIB_DIR', $env:OPENSSL_LIB_DIR, [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('OPENSSL_STATIC', $env:OPENSSL_STATIC, [System.EnvironmentVariableTarget]::Machine)
[System.Environment]::SetEnvironmentVariable('OPENSSL_NO_VENDOR', $env:OPENSSL_NO_VENDOR, [System.EnvironmentVariableTarget]::Machine)

#安装choco和make
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
choco install make -y

说明

MacOS平台的ffmpeg编译脚本,包含x264、x265、fdk-aac、opus以及openssl和rtmp库。

注释中有相关包的下载地址,需要先下载解压。 如果需要openssl则把openssl的相关的脚本注释去掉,并在ffmpeg脚本参数–extra-libs中添加上 -lssl -lcrypto。 如果需要rtmp库,则必须启用openssl,并在ffmpeg脚本参数中启用–enable-rtmp,现在是禁用状态。(其实没必要启用,只要支持flv格式就推拉流)

Visual Studio 2022 Pro: TD244-P4NB7-YQ6XK-Y8MMM-YWV2J Enterprise: VHF9H-NXBBB-638P6-6JHCY-88JWH

Visual Studio 2019 Pro: NYWVH-HT4XC-R2WYW-9Y3CM-X4V3Y Enterprise: BF8Y8-GN2QH-T84XB-QVY3B-RC4DF

安装宝塔

1
2
3
4
5
sudo docker pull centos:centos7 #centos:centos8 centos:latest #下载centos镜像
sudo docker run -i -t -d --name baota --net=host --restart=always \
  --privileged=true -v /home/www:/www centos:centos7
sudo docker exec -it baota /bin/bash #进入容器系统
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh #正常安装宝塔

注意:为了能够保存(持久化)数据以及共享容器间的数据,docker一定使用-v挂载主机目录到容器,比如上面启动容器的 docker -v 参数。 宝塔默认密码使用 : bt default 查看,登录进去修改即可

进入 Settings -> Code Style -> Java或C/C++ ,在右边选择 “Code Generation” Tab,然后找到 Comment Code 那块,把 Line comment at first column Block comment at first column 去掉前面两个的复选框,这样注释就靠近代码块了。 选上Add a space at comment start就会在代码块前添加一个空格。

  • centos 7 安装前置依赖
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
sudo yum install git python-devel libffi-devel graphviz-devel elfutils-libelf-devel \
  readline-devel libedit-devel libxml2-devel protobuf-devel gtext-devel doxygen swig
sudo yum install -y centos-release-scl scl-utils-build
sudo yum install -y devtoolset-9 
source /opt/rh/devtoolset-9/enable
export CC=/opt/rh/devtoolset-9/root/bin/gcc
export CXX=/opt/rh/devtoolset-9/root/bin/g++

wget https://github.com/Kitware/CMake/releases/download/v3.20.0/cmake-3.20.0.tar.gz
tar xzvf cmake-3.20.0.tar.gz
cd cmake-3.20.0
./bootstrap --prefix=/usr/local
make -j8
sudo make install
  • ubuntu 18.04+ 安装前置依赖
1
2
sudo apt install git build-essential cmake python3-dev libncurses5-dev libxml2-dev \
  libedit-dev swig doxygen graphviz xz-utils
  • 下载&编译
1
2
3
4
5
6
git clone git@github.com:llvm/llvm-project.git -b release/11.x
cd llvm-project && mkdir build && cd build
cmake -G "Unix Makefiles" ../llvm -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local \
  -DLLVM_ENABLE_PROJECTS="clang;" -DLLVM_TARGETS_TO_BUILD="AArch64;X86;"
make -j8
sudo make install

如果只要编译clang,在cmake命令添加定义 -DLLVM_ENABLE_PROJECTS=clang; LLVM_ENABLE_PROJECTS可用的项目有 clang;clang-tools-extra;compiler-rt;debuginfo-tests;libc;libclc;libcxx;libcxxabi;libunwind;lld;lldb;mlir;openmp;parallel-libs;polly;pstl

linux和windows需要同时启用UTC,或者linux单独禁用UTC

修改Linux时区为UTC

1
2
sudo mv /etc/localtime  /etc/localtime.bak
sudo ln -s /usr/share/zoneinfo/UTC /etc/localtime

使用 ntpdate 更新系统时间

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# ubuntu 
sudo apt install ntpdate ntp -y
sudo timedatectl set-timezone UTC
sudo ntpdate -u time.windows.com
sudo hwclock --systohc # 写入硬件
# 启动ntpd服务
sudo systemctl enable ntp # ubuntu
sudo systemctl start ntp

# centos
sudo yum install ntpdate ntp -y # centos
sudo timedatectl set-timezone UTC
sudo ntpdate -u time.windows.com
sudo hwclock --systohc # 写入硬件
# 启动ntpd服务
sudo systemctl enable ntpd # centos
sudo systemctl start ntpd

Linux禁用UTC

1
2
sudo timedatectl set-local-rtc 1
sudo hwclock --localtime --systohc

windows启用UTC

1
reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1

linux和windows需要同时启用UTC,或者linux单独禁用UTC

修改Linux时区为UTC

1
2
sudo mv /etc/localtime  /etc/localtime.bak
sudo ln -s /usr/share/zoneinfo/UTC /etc/localtime

使用 ntpdate 更新系统时间

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
# ubuntu 
sudo apt install ntpdate ntp -y
sudo timedatectl set-timezone UTC
sudo ntpdate -u time.windows.com
sudo hwclock --systohc # 写入硬件
# 启动ntpd服务
sudo systemctl enable ntp # ubuntu
sudo systemctl start ntp

# centos
sudo yum install ntpdate ntp -y # centos
sudo timedatectl set-timezone UTC
sudo ntpdate -u time.windows.com
sudo hwclock --systohc # 写入硬件
# 启动ntpd服务
sudo systemctl enable ntpd # centos
sudo systemctl start ntpd

Linux禁用UTC

1
2
sudo timedatectl set-local-rtc 1
sudo hwclock --localtime --systohc

windows启用UTC

1
reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1