More Related Content
JellyBeanのソースをとりあえず眺めてみた(手抜き) C#のコード解析ってなんだ@20160825 CenterCLR.学生 #1 Visual Studio Codeで始めるTypeScript What's hot (20)
.NET Standard で PostgreSql を使ってみた .NET Core 5 ~ Windows, Linux, OS X そして Docker まで ~ Cocos2d js セットアップ for windows Let's make rest server by golang TypeScript と Visual Studio Code DEV-002_.NET Core/ASP.NET Core が実現するクロスプラットフォーム .NET の今と未来 TypeScript and Visual Studio Code 20220208 さくらレンサバにlaravelをインストール 「コンポーネント/アプリケーション開発分離の重要性 ― VCL/FMXとExt JSの類似点の考察から見るその効果」 開発環境アンケートまとめ(Ginza.rb 第13回) Similar to ライブラリ インストール マネージャ For Visual C/C++ (20)
新しい Visual Studio & .NET と新時代のアーキテクチャ サーバーだけじゃない!Linux デスクトップを使い倒そう その3 ― 今話題の Kotlin から Ruby、C++ 1x…の開発環境を整える App017 power shellの新しい相棒_visual_studio_ App017 power shellの新しい相棒_visual_studio Netラボ2012年6月勉強会 マイクロソフトのオープンソース戦略を考える IBM Rational Team Concertに触れてみた 2015 0227 OSC-Spring Tokyo NETMF Empower Every App, Every Developer ~ 統合開発プラットフォーム Visual Studio の進化 ~ The Twelve-Factor (A|M)pp with C# 今から始める、Windows 10&新.NETへの移行戦略 Windows Server 2019 で Container を使ってみる 運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み Linux & Mac OS でも動く! ~ オープンソース & クロスプラットフォーム .NET の歩き方 ~ わんくま名古屋 #37 (20151114) Windows 10 UWP アプリ開発入門(実践編) .NET Coreから概観する.NETのOSSへの取り組み オレたちとVisual Studioとの関係を話そう More from Hiroshi Miura (20)
Wireless display-on-linux Aqt install for Qt勉強会@ Tokyo R #2 2019年6月 Libreoffice and translation Starting OpenStreetMap Japan 2008 in SotM2008 Iwfst 2005.Position Paper Kof2005 Presentation - OSSの教育効果と人材育成への挑戦 Sinsai.info, CrisisMap and the next Sinsai.info Symposium: OSM now 日本国際地図学会 20110808 震災とジオメディア Infotalk#33 "みんなでつくる震災復興支援プラットホームSinsai.infoを実現する技術とチーム運営" unihandecode: An Unicode transliteration library SotM2011 crisis mapping and sinsai.info Building production server on docker How GNSS changes mapping? "Up" with vagrant and docker Japan OSS promotion Forum symposium - Neaoss wg2 activity ライブラリ インストール マネージャ For Visual C/C++
- 1. ライブラリ インストール マネージャ For Visual
C/C++
らぐ小江戸 発表資料
2018 年 3 月 10 日
OpenStreetMap Foundation Japan
Hiroshi Miura
- 2. 2
Windows での OSS 導入
Microsoft Windows で OSS を導入したい
方法 OSSの種類 例
単品アプリケーションのイ
ンストーラー
デスクトップ アプリ GIMP
ツールキットインストー
ラー
開発ツール群 Cygwin msys2
アプリケーションのコレク
ションインストーラー
ユーティリティやデスク
トップアプリ、依存するラ
イブラリ
OSGEO4W
- 3. 3
Windows の C++ の課題
● C++ には標準化されたパッケージマネージャがない
● JavaのMavenCentralやPythonのPyPiに相当するものがないのでつらい
● ビルドシステムがライブラリごとにバラバラ
● Automake/Autoconf, GNU Make, CMake, SCONS, XCode, Visual Studio, NMake ...
● 依存ライブラリもばらばら
● Go言語のgo getや Pythonのpip install したい
- 4. 4
Windows での OSS 導入の問題
アプリやライブラリ開発のための依存 OSS の導入
開発環境 方法 問題
Cygwinやmsys2/mingw cygwinやmsys2のインストー
ラー
パッケージが無い場合は、
ソースからビルドが必要
Visual Studio C/C++ ●ソースから一つ一つビルド ●OSSの最新版が存在しない
●手間が半端ない
Visual Studio .NET NuGET .net ライブラリをパッケージ
導入可能
- 5. 5
Vcpkg - Windows のパッケージ管理基盤 OSS
Microsoft の MIT ライセンスの OSS プロジェクト
パッケージをインストールできる
> git clone https://github.com/Microsoft/vcpkg
> cd vcpkg
> .vcpkg_bootstrap.bat
> .vcpkg.exe install zlib:x64-windows
- 6. 6
Vcpkg: a tool to acquire and build C++ open source
libraries on Windows
- 7. 7
Vcpkg – じつは Windows の ports 相当
インストールを指定すると、ソースファイルをプロジェクトからダ
ウンロードして Visual C++ でビルドが始まる。
Ports: BSD ベースのオペレーティングシステムでソフトウェアの
インストールやバイナリパッケージ作成する方法
vcpkg プロジェクトには、 ports フォルダーがあり各ソフトウエ
アのインストール方法が入っている
Qt など、依存ライブラリが大量にあるプロジェクトは 5 時間とか
かかる
- 8. 8
デモ
Azure で Windows を利用します。
<小ネタ>
MSDN Subscription 改め、 Visual Studio Subscription を 1 年
6 万円弱で購入すると、毎月$ 50 相当の Azure クーポン
と、 Azure で Windows 10 Enterprise と VS Enterprise が使え
る
→ わたしは無料枠( 1 年または 22000 円)の範囲内で利用中
- 9. 9
Vcpkg - 貢献しました
ターゲット 貢献内容 備考
kealib GIS系のライブラリの一つに
ついて、追加提案
CMakeのビルドスクリプトの
修正を含む
hdf5 GIS系のライブラリの一つに
ついて、修正提案
依存ライブラリ指定のバグを
修正
szip 圧縮ライブラリの修正提案 他のプログラムからインス
トール状態が誤って検出され
る
freexl, spatialite, readosm ダウンロードURLが変わった
のを修正提案
PR #2879, #2880, #2881,
#2882
Vcpkg core AppVeyorでの自動CIの提案 現在、提案実施中
PR #2877
libgeotiff GIS系のライブラリについて
追加提案
PR #2784, #2831
rasterlite2 GIS系のライブラリについて
追加の開発
現在、開発実施中
- 10. 9
Vcpkg - 貢献しました
ターゲット 貢献内容 備考
kealib GIS系のライブラリの一つに
ついて、追加提案
CMakeのビルドスクリプトの
修正を含む
hdf5 GIS系のライブラリの一つに
ついて、修正提案
依存ライブラリ指定のバグを
修正
szip 圧縮ライブラリの修正提案 他のプログラムからインス
トール状態が誤って検出され
る
freexl, spatialite, readosm ダウンロードURLが変わった
のを修正提案
PR #2879, #2880, #2881,
#2882
Vcpkg core AppVeyorでの自動CIの提案 現在、提案実施中
PR #2877
libgeotiff GIS系のライブラリについて
追加提案
PR #2784, #2831
rasterlite2 GIS系のライブラリについて
追加の開発
現在、開発実施中