# third-party-libraries **Repository Path**: yyx_dev/third-party-libraries ## Basic Information - **Project Name**: third-party-libraries - **Description**: third-party-libraries - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-02-22 - **Last Updated**: 2025-09-26 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 第三方库 常用的第三方C++库 ## clangd macos ```bash brew install clangd ``` ubuntu ```bash sudo apt-get install clangd-12 -y sudo update-alternatives --install /usr/bin/clangd clangd /usr/bin/clangd-12 100 ``` ## gcc macos ```bash brew install gcc ``` ubuntu ```bash sudo add-apt-repository ppa:ubuntu-toolchain-r/test sudo apt-get update sudo apt-get install gcc-13 -y sudo apt-get install g++-13 -y ll /usr/bin/g++* /usr/bin/gcc* sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-13 60 sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-13 60 gcc -v g++ -v ``` [ubuntu升级gcc](https://blog.csdn.net/quxuexi/article/details/121501679) centos ```bash sudo yum install -y centos-release-scl scl-utils-build sudo yum install -y devtoolset-7-gcc devtoolset-7-gcc-c++ scl enable devtoolset-7 bash ``` ## boost macos ```bash brew install boost ``` ubuntu ```bash sudo apt-get install libboost-all-dev -y ``` centos ```bash sudo yum install -y boost-devel ``` ## cpp-httplib macos ```bash brew install cpp-httplib ``` linux ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/httplib.h sudo mv httplib.h /usr/include ``` ## mysql connector c macos ```bash brew install mysql-client ``` ubuntu ```bash sudo apt install libmysqlclient-dev -y ``` centos ```bash rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022 # 如果出现GPG key不匹配的问题 yum install -y libodb-mysql-devel.x86_64 yum install -y soci-mysql-devel.x86_64 ``` windows [Connector/C++](https://dev.mysql.com/downloads/connector/cpp/) ## mysql connector c++ macos ```bash brew install mysql-connector-c++ ``` ubuntu ```bash sudo apt-get install libmysqlcppconn-dev ``` windows [Connector/C++](https://dev.mysql.com/downloads/connector/cpp/) ## jsoncpp macos ```bash brew install jsoncpp ``` ubuntu ```bash sudo apt install libjsoncpp-dev -y ``` centos ```bash sudo yum install jsoncpp-devel ``` ## ctemplate macos ```bash brew install ctemplate ``` ubuntu ```bash sudo apt install libctemplate-dev -y ``` centos ```bash sudo yum install ctemplate -y ``` ## bundle macos 不支持 linux ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/bundle/bundle.h wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/bundle/libbundle.so sudo mv bundle.h /usr/include/ sudo mv libbundle.so /usr/lib/ ``` ## openssl macos ```bash brew install openssl ``` ubuntu 一般自带不必安装 ```bash sudo apt install libssl-dev ``` centos ```bash sudo yum install openssl-devel ``` ## cppjieba ```bash cd ~/third-party-libraries sudo cp -r cppjieba /usr/include # cppjieba是提取的头文件安装即可 ``` ## fastgithub ### linux-x64终端 ```bash export http_proxy=http://127.0.0.1:38457 https_proxy=https://127.0.0.1:38457 # 设置系统代理为http://127.0.0.1:38457 sudo ./fastgithub ``` ### linux-x64服务 ```bash export http_proxy=http://127.0.0.1:38457 https_proxy=https://127.0.0.1:38457 # 设置系统代理为http://127.0.0.1:38457 sudo ./fastgithub start // 以systemd服务安装并启动 sudo ./fastgithub stop // 以systemd服务卸载并删除 ``` ## nlohmann macos ```bash brew install nlohmann-json ``` ubuntu ```bash sudo apt install nlohmann-json3-dev ``` header only (windows) ```bash sudo cp nlohmann/json.hpp /usr/include ``` ## {fmt} header only (ubuntu) ```bash cd ~/third-party-libraries sudo cp -r fmt /usr/include # 添加宏 FMT_HEADER_ONLY 以仅头文件使用 ``` ## nodejs ```bash wget https://nodejs.org/dist/v20.10.0/node-v20.10.0-linux-x64.tar.xz tar -xvf node-v20.10.0-linux-x64.tar.xz cd node-v20.10.0-linux-x64 sudo mv bin/* /usr/local/bin sudo mv include/* /usr/local/include sudo mv lib/* /usr/local/lib npm config set prefix "C:\nodejs" npm config set registry https://registry.npmmirror.com ``` ## sqlite_orm ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/sqlite_orm/sqlite_orm.h sudo mv sqlite_orm.h /usr/include ``` ## snappy macos ```bash brew install snappy ``` ubuntu ```bash sudo apt install libsnappy-dev ``` centos ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/snappy/snappy.h wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/snappy/snappy-c.h wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/snappy/libsnappy.a wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/snappy/libsnappy.so sudo mv snappy.h /usr/include sudo mv snappy-c.h /usr/include sudo mv libsnappy.a /usr/lib sudo mv libsnappy.so /usr/lib ``` ## opencv ubuntu 源码编译 ```bash sudo apt-get install cmake -y sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg-dev libswscale-dev libtiff5-dev -y sudo apt-get install libgtk2.0-dev -y sudo apt-get install pkg-config -y wget https://github.com/opencv/opencv/archive/4.9.0.zip unzip 4.9.0.zip cd 4.9.0/ mkdir build && cd build cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local .. make -j8 sudo make install pkg-config --modversion opencv ``` 直接下载 ``` sudo apt update sudo apt install libopencv-dev -y ``` ## protobuf macos ```bash brew install protobuf ``` ubuntu ```bash sudo snap install protobuf --classic sudo rm -rf /snap/bin/proto* sudo cp -r /snap/protobuf/current/bin/* /usr/bin sudo cp -r /snap/protobuf/current/include/* /usr/include sudo cp -r /snap/protobuf/current/lib/* /usr/lib ``` ## redis macos ```shell brew install redis ``` ubuntu ```shell sudo apt install lsb-release curl gpg curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/ sources.list.d/redis.list sudo apt update sudo apt install redis ``` ## redis-plus-plus ubuntu ```shell sudo apt install libhiredis-dev -y sudo cp -r redis++/include/* /usr/include sudo cp -r redis++/lib/* /usr/lib ``` ## go ubuntu ```shell sudo apt update sudo apt install golang-go -y go version go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct go install -v golang.org/x/tools/gopls@v0.14.2 ``` macos ```shell brew install go ``` ## redis-lua ```shell wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/redis.lua ``` ## lua ubuntu ```shell lua5.4 liblua5.4-dev ``` [手动编译成库方法](https://blog.csdn.net/qq_36616667/article/details/106253583) ## mysql 默认下载MySQL8。mysql的root用户只能由系统root用户免密登录,无法配置其密码,其他用户照常需要密码登录。 ```bash sudo apt update sudo apt install mysql-server -y sudo mysql_secure_installation sudo mysql SHOW VARIABLES LIKE 'validate_password%'; set global validate_password.check_user_name=0; set global validate_password.policy=0; set global validate_password.special_char_count=0; SHOW VARIABLES LIKE 'validate_password%'; CREATE USER 'yyx'@'%' IDENTIFIED BY 'YYXyyx123456'; GRANT ALL PRIVILEGES ON *.* TO 'yyx'@'%'; FLUSH PRIVILEGES; sudo vim /etc/mysql/my.cnf [mysql] default-character-set=utf8 [mysqld] bind-address=0.0.0.0 default-storage-engine=innodb sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf (注释掉下面内容) bind-address=127.0.0.1 sudo ufw status sudo ufw enable sudo ufw allow 80 sudo ufw allow 22/tcp sudo ufw allow 3306 sudo ufw reload ``` ## vim ubuntu ```shell sudo add-apt-repository ppa:jonathonf/vim sudo apt update sudo apt install vim vim --version ``` ## easysock ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/easysock.h sudo mv easysock.h /usr/include ``` ## easyfs ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/easyfs.h sudo mv easyfs.h /usr/include ``` ## easylog ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/easylog.h sudo mv easylog.h /usr/include ``` ## Vue ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/vue.js ``` ## Axios ```bash wget https://gitee.com/yourfriendyo/third-party-libraries/raw/master/axios.js ``` ## 新机配置 ### 免密sudo ```bash export EDITOR=vi visudo # %admin ALL=(ALL) ALL 下面添一行 yyx ALL=(ALL:ALL) NOPASSWD: ALL ``` ### 设置主机名 ```bash sudo hostnamectl set-hostname ali-cloud ``` ### 设置新用户 ```bash adduser yyx ``` ### 下载配置 ```bash git clone https://gitee.com/yourfriendyo/config.git cat config/README.md cd ~ rm -rf .config rm -rf .bashrc mv config .config ln -s .config/bashrc .bashrc ln -s .config/zshrc .zshrc ln -s .config/gitconfig .gitconfig ln -s .config/gitignore .gitignore ln -s .config/tmux.conf .tmux.conf ln -s .config/clangd/clangd .clangd ln -s .config/clangd/clang-tidy .clang-tidy ln -s .config/clangd/clang-format .clang-format #ln -s .config/vim .vim #ln -s .config/vimrc .vimrc ```