Linux使用Clang链接libc++运行时

在Linux上,一般情况下都会使用GCC和libstdc++,因为他们之间有特殊优化,如果使用Clang编译,性能不会比GCC高,因为默认情况下Clang编译出来的程序也是链接的libstdc++,而Clang的正统在libc++上 运行环境 docker run -it --rm ubuntu b


Podman配置arm环境

在x86环境运行arm环境的容器 Windows Docker 在windows上 Docker Desktop 已经内置了 binfmt_misc,参考Multi-platform images | Docker Docs 因此只需要安装Docker Desktop就能运行 arm32或者arm6


gcc docker 编译环境

使用docker gcc编译,静态链接运行时 编写Dockerfile FROM gcc:13 RUN apt update \ && apt install gcc clang make ninja-build cmake gdb git -y \ && apt clean 使用VSCod


Linux终端切换输出屏幕

使用 curses.h需要安装额外的库 // 开始 initscr(); curs_set(0); // 隐藏光标 // 结束 curs_set(1); // 显示光标 endwin(); 使用 printf ANSI Escape Codes (github.com) printf("\e[?


WSL自启动ssh

WSL自启动ssh服务 打开计算机管理 选择启动程序 程序路径:%windir%\System32\bash.exe 参数:-c "echo 密码|sudo -S service ssh start" 找到刚刚创建的任务,点击属性</


Linux清理内存缓存

清空缓存 清空缓存 仅清除页面缓存(PageCache) sync; echo 1 > /proc/sys/vm/drop_caches 清除目录项和inode sync; echo 2 > /proc/sys/vm/drop_caches 清除页面缓存,目录项和inode sync; echo


Linux安装zsh

安装 zsh是针对当前用户环境的,如果要设置主题,需要在 HOME 目录单独配置 # 安装zsh sudo apt install zsh # 安装 oh my zsh sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh


pthread中断

中断/终止线程执行 #include <memory.h> #include <pthread.h> #include <signal.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <thread>


查看系统共享内存

查看系统共享内存 Windows 下载 AccessChk AccessChk - Windows Sysinternals | Microsoft Docs 管理员权限执行命令 accesschk.exe -osv > objects.txt 打开 objects.txt 文件 搜索 Type:


Linux挂载Windows共享路径

挂载Windows共享路径 安装 nfs-utils yum install nfs-utils -y 挂载路径 mount -t cifs -o username='Gwkang',password='passwd' //192.168.0.100/Work ~/work


WSL配置

WSL配置 旧版 WSL 的手动安装步骤 | Microsoft Docs WSL 中的高级设置配置 | Microsoft Docs 修改安装路径 停止运行 wsl --shutdown 查看已安装的linux发行版本 wsl -l


Linux修改、打包依赖路径(rpath)

1. 通过环境变量修改 # 必须是绝对路径 export LD_LIBRARY_PATH=$(pwd) 2. 编译时指定rpath # 将rpath指定为当前目录 gcc test.c -L . -lhello -Wl,-rpath,'.' 3. 通过chrpath或patchelf修改 su


CMake编译Android iOS库

CMake编译Android/iOS库 CMakeLists.txt project(RayStreamNet) cmake_minimum_required(VERSION 3.1) add_compile_options(-fvisibility=hidden -std=c++14 -fPIC


程序设置开机自启

程序设置开机自启 Windows // "Key" 是自启名称 // "Value" 程序路径 // 添加注册表 reg add HKEY_CURRENT_USER\\Software\\Microsoft\\Windows\\CurrentVersion\\Run /v "Key" /d "Val


proxy iptables

proxy iptables dnsmasq 配置 https://github.com/cokebar/gfwlist2dnsmasq 通过 dnsmasq 将dns请求转发到程序中,dnsmasq_gfwlist.conf 里的端口和程序监听端口保持一致 vi /etc/dnsmasq.conf


nginx配置代理

nginx配置 TCP转发代理 stream { # 统一放置,方便管理 # include tcpConf/*.conf; # 访问8080/tcp将会直接转发到2324/tcp upstream tcp_proxy {


CentOS 配置网卡

root用户执行 dhclient 会自动分配一个ip,假如是 192.268.31.100 sudo vi /etc/sysconfig/network-scripts/ifcfg-ens*修改网卡配置 BOOTPROTO = static (默认是dhcp) ONBOOT = yes (默认是n


Linux 修改/查看文件描述符限制

文件描述符 查看进程id pidof processName 更改文件描述符限制(临时) ulimit -n 10240 更改文件描述符限制(永久,不一定是设置的值) vi /etc/security/limits.conf * soft nofile 10240 * hard nofile 102