戴建业:阅读习惯与人生未来(转载)
人有丑俊,书有浅深。就像人有种种色色一样,书也分不同的性质和层次。
人有丑俊,书有浅深。就像人有种种色色一样,书也分不同的性质和层次。
nlohmann/json 是一个用于解析 JSON 的开源 C++库,口碑一流,无需额外安装其他第三方库,还支持单个头文件模式,使用起来非常方便直观。
C++ 支持各种字符串和字符类型,并提供了表达每种类型字面值的方法。在源代码中,我们使用字符集来表示字符或字符串。同时我们还可以使用通用字符名和转义字符来通过基本的源字符集表示任何字符串。而原始字符串能够避免对转义字符进行转义,并可用于表示所有类型的字符串。
本文介绍在 CentOS7 环境下,使用 Certbot 申请免费的 Lets Encrypt SSL 证书,并自动续期。
本文介绍在 Windows 系统上实现使某个文件无法被用户或其他程序删除。
如何在 Vcpkg 命令行模式下安装 port 时如何指定版本。
截至 2023-05-22:vcpkg 仅支持在 manifest 模式下指定 port 的版本,在命令行模式下不支持指定 port 版本。
使用 Git 命令查看当前 Vcpkg 仓库的 baseline:
1 | git rev-parse HEAD |
创建vcpkg_json目录,并在该目录下创建vcpkg.json文件(以 openssl 为例):
1 | { |
使用如下命令安装:
1 | vcpkg install --triplet "x64-windows" "--x-manifest-root=D:\vcpkg_json\\" "--x-install-root=D:CODE\vcpkg\installed\\" |
Vcpkg 默认只支持从公共代码仓库进行下载编译,本文介绍如何使用 Vcpkg 从私有仓库进行源码下载/编译/安装。

VCPKG_KEEP_ENV_VARS值为GITHUB_TOKEN
GITHUB_TOKEN值为第一步生成的 TOKEN
在vcpkg\ports目录下,找到对应库的 portfile.cmake 文件,加入AUTHORIZATION_TOKEN参数。
1 | vcpkg_from_github( |
在向 Vcpkg 提交 port 时,我们会不断地对仓库进行修改和调试。如果采用REF方式指定源码版本,则需要不断地修改 REF 和 SHA512,调试起来比较繁琐,我们可以采用HEAD_REF的方式来简化调试流程。
在portfile.cmake文件中指定HEAD_REF,如:
1 | vcpkg_from_github( |
安装时指定--head参数:
1 | vcpkg install ashe:x64-windows-static --head |
依次执行如下命令:
1 | yum install -y wget |
1 | # 备份并下载阿里云的base和epel源 |
1 | yum clean all |
LLVM-Obfuscator 可用于混淆程序的代码逻辑,本文介绍如何使用 LLVM-Obfuscator 进行代码逻辑的混淆。