Use precompiled binaries of required C++ libraries instead of downloading source and compiling them.
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 停滞
- 技术栈
- cpp
- 领域
- build-system, tooling
调研方向
从 issue 中链接的安装流程开始,检查 vcpkg 如何安装列出的 C++ 依赖项。将标准安装与导出的 7z 软件包方案进行比较,然后确定如何集成可复现的预编译库工作流。当全新设置能够避免重新构建依赖项,同时仍能成功构建和运行 FLINT 时,即视为完成。
由索引模型根据 Issue 内容生成。
描述
Is your feature request related to a problem? Please describe.
FLINT development environment takes 60+ mins to set up depending on the CPU and may take more time on older CPUs (2-3 hrs). When we use the command vcpkg.exe install gdal:x64-windows
vcpkg downloads the source code of GDAL which is 3.8 GB and then compiles it.
This is repeated for every library which is a dependency of FLINT.
After installing the libraries the source code of the libraries is never touched again and just consumes space for no reason. After installing all libraries the vcpkg folder it's size is around 15 GB which is a waste of space.
Describe the solution you'd like
After installing the libraries I used the vcpkg export --7zip command to export the libraries in a 7z file. With these exported libraries I was able to set up the FLINT development environment in a different directory in just 15 mins flat and I was able to build and run the solution without any issues. The size of the vcpkg folder with precompiled libraries is just 1.8 GB while the vcpkg folder with regular installation is of 15 GB.
You can download the precompiled libraries exported package here: https://drive.google.com/file/d/1Jkfu6Sbe0zoUkYv8aizrO80fZILcAGil/view?usp=sharing
To install it just extract all the contents of the file to the vcpkg folder (if it asks for replacing files select Replace All) and continue with the normal installation as given here.
You don't need to run the ix. command in step 1 of the installation vcpkg.exe install boost-test:x64-windows boost-program-options:x64-windows boost-log:x64-windows turtle:x64-windows zipper:x64-windows poco:x64-windows libpq:x64-windows gdal:x64-windows sqlite3:x64-windows boost-ublas:x64-windows
Comparison with precompiled libraries on the left with the standard installation process on the right.
This trick reduces bandwidth usage by 15 GB and saves installation time by 1-2 hrs by removing the overhead of vcpkg's installation of C++ FLINT dependencies.
More info about vcpkg export command vcpkg documentation
usage examples on Microsoft devblogs
- 主要语言
- C++
- 星标
- 2
- 派生
- 29
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
在浏览器里用你自己的 GitHub 账号启动这个项目的开发容器。
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
相似的 Issue
-
Component: Python API
难度 2/5 1-3 小时 新手友好度 70/100
Vector35/binaryninja-api#8649 ·
维护者通常 3 天内回复
-
ai_p2 comp-parquet-reader-v3
难度 2/5 半天 新手友好度 66/100
ClickHouse/ClickHouse#124986 ·
维护者通常 1 天内回复
-
bug product: very_good_flutter_plugin
难度 1/5 1-3 小时 新手友好度 78/100
VeryGoodOpenSource/very_good_templates#654 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
AcademySoftwareFoundation/OpenImageIO#5550 ·
维护者通常 2 天内回复