Use precompiled binaries of required C++ libraries instead of downloading source and compiling them.
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 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 ファイルあり
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
lxqt/qtermwidget#688 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 92/100
cpinitiative/usaco-guide#6665 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
mpfaffenberger/privateer_reimagined#658 ·
メンテナーはふだん 1 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 85/100
microsoft/onnxruntime#33018 ·
メンテナーはふだん 2 日以内に返信
-
Type: bug
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 2 日以内に返信