# extend **Repository Path**: mskk/extend ## Basic Information - **Project Name**: extend - **Description**: 编译好的c/c++库 - **Primary Language**: C/C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-27 - **Last Updated**: 2026-01-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # extend ## 介绍 这是一个个人整理的 C++ 库集合。由于经常更换电脑,且 Windows 平台下的大多数 C++ 库都没有现成的预编译版本,因此将常用的库整理归档,以便快速部署开发环境。 本仓库主要收录了常用的开源 C++ 库,提供了头文件和预编译库文件,方便在 Windows 环境下快速使用。 ## 软件架构 - **头文件 (include/)**: 大部分库都提供了完整的头文件 - **预编译库 (lib/)**: 部分库提供了 Windows 平台下的预编译静态库 - **版本管理**: 统一使用较新且稳定的版本 ## 主要包含库 ### 1. FLTK 1.39 FLTK(Fast Light Toolkit)是一个轻量级的跨平台 GUI 工具库,由 Bill Spitzak 教授开发。 **特点**: - 体积小、速度快 - 跨平台支持(Windows、Linux、macOS) - 学习曲线平缓 **包含组件**: - 基础控件(按钮、输入框、滑块等) - 图像支持(BMP、JPEG、PNG、GIF 等) - OpenGL 支持 - 文件选择器、字体选择器等 **预编译库**: - `win32/` - 32位 Windows 库 - `x64/` - 64位 Windows 库 ### 2. Boost 1.86 Boost 是 C++ 最重要的扩展库集合,提供了大量高质量的通用组件。 **主要模块**: - 智能指针 (smart_ptr) - 容器和算法 - 文件系统 (filesystem) - 正则表达式 (regex) - 线程支持 (thread) - 序列化 (archive) - 网络编程 (asio) - 数值计算 (numeric) ### 3. Curl 8.8 libcurl 是一个强大的跨平台网络传输库,支持多种协议。 **支持的协议**: - HTTP/HTTPS - FTP/FTPS - SMTP/SMTPS - POP3/POP3S - IMAP/IMAPS - SCP - SFTP - Telnet - LDAP/LDAPS ### 4. gRPC 1.62.2 gRPC 是 Google 开发的高性能远程过程调用(RPC)框架。 **特点**: - 使用 Protocol Buffers 作为接口定义语言 - 支持多种语言 - 基于 HTTP/2 协议 - 双向流式支持 ### 5. Lua 5.4 Lua 是一个轻量级的脚本语言,设计目标是嵌入到应用程序中。 **特点**: - 语法简单、易于集成 - 执行效率高 - 可移植性强 - 常用于游戏开发、配置管理、脚本扩展 ### 6. OpenSSL 3.0.13 OpenSSL 是一个强大的安全套接字层(SSL)和传输层安全(TLS)协议实现库。 **主要功能**: - 加密算法(AES、RSA、ECC 等) - 证书管理(X.509) - SSL/TLS 协议支持 - 哈希函数(SHA、MD5 等) - 随机数生成 ## 使用方法 ### 包含头文件路径 在项目中添加以下头文件包含路径: - `FLTK1.39/include/` - `boost1.86/include/` - (其他库的头文件路径) ### 链接预编译库 对于需要链接的库,添加对应的库文件路径: - FLTK 库: `FLTK1.39/lib/win32/` 或 `FLTK1.39/lib/x64/` ### 编译示例 ```cpp // FLTK 示例 #include #include #include int main() { Fl_Window *window = new Fl_Window(300, 200, "Hello"); Fl_Button *button = new Fl_Button(100, 100, 100, 40, "Click Me"); window->end(); window->show(); return Fl::run(); } ``` ## 环境要求 - Windows 操作系统 - 支持 C++11 或更高标准的编译器 - CMake(部分库可能需要) - Perl(用于编译某些库) ## 目录结构 ``` extend/ ├── FLTK1.39/ │ ├── include/FL/ # FLTK 头文件 │ └── lib/ # 预编译库 │ ├── win32/ # 32位库 │ └── x64/ # 64位库 ├── boost1.86/ │ └── include/boost/ # Boost 头文件 └── LICENSE # 许可证文件 ``` ## 许可证 本仓库仅整理和收集开源库,各库的使用请遵循其各自的许可证: - **FLTK**: LGPL License - **Boost**: Boost Software License - **curl**: MIT/X derivative - **gRPC**: Apache License 2.0 - **Lua**: MIT License - **OpenSSL**: Apache License 2.0 ## 更新日志 - 2024: 初始版本 - 收录 FLTK 1.39、Boost 1.86、Curl 8.8、gRPC 1.62.2、Lua 5.4、OpenSSL 3.0.13 ## 作者 mskk ## 致谢 感谢各开源库的开发者和维护者,为 C++ 社区贡献了如此优秀的工具库。