Ubuntu 编译指定版本的 curl 库

卸载原有版本的 curl apt-get --purge remove curl 下载所需版本的 curl wget https://curl.se/download/curl-7.47.1.tar.gz 解压并编译 tar -zxvf curl-7.47.1.tar.gz cd curl-7.47.1 ./configure shared make make install 编译好的可执行文件在 /usr/local/bin 目录下 编译好的动态库和静态库在 /usr/local/lib 目录下 创建可执行文件和动态链接库的软连接 参考: curl download archive ubuntu卸载安装curl Linux下更新curl版本

November 3, 2023 · 1 min · Rick Cui

Ubuntu 编译指定版本的 OpenSSL 库

重命名原有的 openssl 可执行文件 mv -f /usr/bin/openssl /usr/bin/openssl.old 下载所需版本的 openssl wget http://www.openssl.org/source/openssl-1.0.0s.tar.gz 解压并编译 tar zxvf openssl-1.0.0s.tar.gz cd openssl-1.0.0s ./config shared --prefix=/usr/local/openssl1.0 make && make install 生成的可执行文件在 /usr/local/openssl1.0/bin 目录下 生成的动态链接库在 /usr/local/openssl1.0/lib 目录下 在 /usr/bin 目录下创建可执行文件的软连接 在 /usr/lib/x86_64-linux-gnu/ 目录下创建动态链接库的软连接 参考: OpenSSL Old Releases Linux openssl 升级、降级 openssl动态库生成以及交叉编译

November 2, 2023 · 1 min · Rick Cui

Docker Ubuntu 16.04 Sonnar

一、安装 Docker Desktop 下载 Dockers Desktop 二、下载并运行 Ubuntu 镜像 创建容器并运行(Ubuntu 版本 16.04),如果本地没有相应版本的镜像,则会自动下载 docker run -it --name ubuntu16.04_sonar -v /D/Work/sonar:/data ubuntu:16.04 运行已安装的容器 docker start -i ubuntu16.04_sonar 三、配置 Ubuntu 环境 apt update && apt upgrade apt-get install build-essential apt install software-properties-common apt install vim 指定编码:C.UTF-8 locale locale -a cd ~ && vim .bashrc export LANG=C.UTF-8 source .bashrc 安装 python 2.7 pip2 python -V apt install python (python2) apt install python-pip 安装 python3...

October 30, 2023 · 1 min · Rick Cui

Android Studio Build 窗口中文乱码

中文乱码 Android Studio Version 4.2.1 打开 Android studio 全局搜索 双击 shift 搜索 Edit Custom VM Options,双击第一个 打开或者生成文件 studio64.exe.vmoptions 在文件后面添加 -Dfile.encoding=UTF-8 (要注意不能有空格,否则 studio 可能打不开) 直接保存,重启 Android Studio 参考: Android Studio Build窗口出现中文乱码问题

October 30, 2023 · 1 min · Rick Cui

C++——打印枚举常量字符串

#include <stdio.h>#define MY_INT 7777 #define STR(R) #R #define STR2(R) STR(R) enum MyType{ MyType_NULL, MyType_One, MyType_Two }; int main() { printf("%s\n", STR(MyType_One)); printf("%s\n", STR(HELLO_WORLD)); printf("%s\n", STR(MY_INT)); printf("%s\n", STR2(MY_INT)); const int arr[] = {1,2,3}; arr[1] = 4; // error: assignment of read-only location ‘arr[1]’ return 0; } 输出: MyType_One HELLO_WORLD MY_INT 7777 参考: c++中#与##的作用

April 12, 2023 · 1 min · Rick Cui