vcpkg 업데이트
vcpkg도 업데이트가 필요하군요. ^^
오픈 소스 라이브러리를 쉽게 빌드해 주는 "C++ Package Manager for Windows: vcpkg"
; https://www.sysnet.pe.kr/2/0/11409
명령어로 "vcpkg update"가 있긴 한데 실행해 보면,
c:\temp\vcpkg> vcpkg update
Using local portfile versions. To update the local portfiles, use `git pull`.
No packages need updating.
지시에 따라 git pull을 사용해야 합니다.
c:\temp\vcpkg> git pull
...[생략]...
완료된 후 다시 update를 하려고 해도,
c:\temp\vcpkg> vcpkg update
Warning: Different source is available for vcpkg (0.0.100 -> 2018.10.20). Use .\bootstrap-vcpkg.bat to update.
Using local portfile versions. To update the local portfiles, use `git pull`.
The following packages differ from their port versions:
ilmbase:x64-windows 2.2.0-1 -> 2.2.1-1
ilmbase:x86-windows 2.2.0-1 -> 2.2.1-1
libjpeg-turbo:x64-windows 1.5.2-2 -> 1.5.3-1
libjpeg-turbo:x86-windows 1.5.2-2 -> 1.5.3-1
libuv:x64-windows 1.18.0 -> 1.24.0
openssl:x86-windows 1.0.2n-1 -> 0
openssl:x64-windows 1.0.2n-1 -> 0
To update these packages and all dependencies, run
.\vcpkg upgrade
To only remove outdated packages, run
.\vcpkg remove --outdated
이번에는 bootstrap-vcpkg.bat를 실행하라고 합니다. ^^ 어쨌든 그대로 다시 실행하면 업데이트가 됩니다.
c:\temp\vcpkg> bootstrap-vcpkg.bat
Building vcpkg.exe ...
pch.cpp
archives.cpp
checks.cpp
chrono.cpp
cofffilereader.cpp
downloads.cpp
...[생략]..
그런데, vcpkg update 명령어가 좀 혼란스럽습니다. 지금 단계에서도 실행해 보면 다음과 같이 출력되는데,
c:\temp\vcpkg> vcpkg update
Using local portfile versions. To update the local portfiles, use `git pull`.
The following packages differ from their port versions:
ilmbase:x64-windows 2.2.0-1 -> 2.2.1-1
ilmbase:x86-windows 2.2.0-1 -> 2.2.1-1
libjpeg-turbo:x64-windows 1.5.2-2 -> 1.5.3-1
libjpeg-turbo:x86-windows 1.5.2-2 -> 1.5.3-1
libuv:x64-windows 1.18.0 -> 1.24.0
openssl:x64-windows 1.0.2n-1 -> 0
openssl:x86-windows 1.0.2n-1 -> 0
To update these packages and all dependencies, run
.\vcpkg upgrade
To only remove outdated packages, run
.\vcpkg remove --outdated
가만 보면 업데이트는 이미 되었지만 패키지 버전들이 최신의 것들이 있다는 정보가 출력됩니다. 이들을 모두 업그레이드하려면 "vcpkg upgrade"를 실행해야 한다고 하는데,
c:\temp\vcpkg> vcpkg upgrade
The following packages will be rebuilt:
ilmbase[core]:x64-windows
ilmbase[core]:x86-windows
libjpeg-turbo[core]:x64-windows
libjpeg-turbo[core]:x86-windows
libuv[core]:x64-windows
openssl[core]:x64-windows
openssl[core]:x86-windows
The following packages will be built and installed:
* openssl-windows[core]:x64-windows
* openssl-windows[core]:x86-windows
Additional packages (*) will be modified to complete this operation.
If you are sure you want to rebuild the above packages, run this command with the --no-dry-run option.
그래서 ^^; 결국 업그레이드도 다음과 같이 실행해야 합니다.
c:\temp\vcpkg> vcpkg upgrade --no-dry-run
정리해 보면, "vcpkg update" 명령어가 직접적으로 하는 일이 없습니다. 그냥 다른 명령어들을 사용하라고 알려주는 창구에 불과한 것입니다. 어쨌든, 위와 같이 다 해주면 아래와 같은 정도의 출력만을 남기게 됩니다.
c:\temp\vcpkg> vcpkg update
Using local portfile versions. To update the local portfiles, use `git pull`.
No packages need updating.
c:\temp\vcpkg> git pull
Already up to date.
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]