microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
23.08k stars 6.37k forks source link

[vcpkg upgrade] Why I can't upgrade vcpkg #18926

Closed TheVeryDarkness closed 3 years ago

TheVeryDarkness commented 3 years ago

Nothing happened when I tried to upgrade.

PS C:\WINDOWS\system32> cd D:/vcpkg
PS D:\vcpkg> ./vcpkg upgrade
PS D:\vcpkg> ./vcpkg upgrade --no-dry-run
PS D:\vcpkg> ./vcpkg update
Using local portfile versions. To update the local portfiles, use `git pull`.
The following packages differ from their port versions:
    boost:x86-windows                1.75.0 -> 1.76.0
    boost-accumulators:x86-windows   1.75.0 -> 1.76.0
    boost-algorithm:x86-windows      1.75.0 -> 1.76.0
    boost-align:x64-windows          1.75.0 -> 1.76.0
    boost-align:x86-windows          1.75.0 -> 1.76.0
    boost-any:x64-windows            1.75.0 -> 1.76.0
    boost-any:x86-windows            1.75.0 -> 1.76.0
    boost-array:x64-windows          1.75.0 -> 1.76.0
    boost-array:x86-windows          1.75.0 -> 1.76.0
    boost-asio:x86-windows           1.75.0#1 -> 1.76.0
    boost-assert:x64-windows         1.75.0 -> 1.76.0
    boost-assert:x86-windows         1.75.0 -> 1.76.0
    boost-assign:x86-windows         1.75.0 -> 1.76.0
    boost-atomic:x86-windows         1.75.0#1 -> 1.76.0
    boost-beast:x86-windows          1.75.0 -> 1.76.0
    boost-bimap:x86-windows          1.75.0 -> 1.76.0
    boost-bind:x64-windows           1.75.0 -> 1.76.0
    boost-bind:x86-windows           1.75.0 -> 1.76.0
    boost-callable-traits:x64-windows 1.75.0 -> 1.76.0
    boost-callable-traits:x86-windows 1.75.0 -> 1.76.0
    boost-chrono:x86-windows         1.75.0#1 -> 1.76.0
    boost-circular-buffer:x64-windows 1.75.0 -> 1.76.0
    boost-circular-buffer:x86-windows 1.75.0 -> 1.76.0
    boost-compatibility:x64-windows  1.75.0 -> 1.76.0
    boost-compatibility:x86-windows  1.75.0 -> 1.76.0
    boost-compute:x86-windows        1.75.0 -> 1.76.0
    boost-concept-check:x64-windows  1.75.0#2 -> 1.76.0
    boost-concept-check:x86-windows  1.75.0#2 -> 1.76.0
    boost-config:x64-windows         1.75.0 -> 1.76.0
    boost-config:x86-windows         1.75.0 -> 1.76.0
    boost-container:x86-windows      1.75.0#1 -> 1.76.0
    boost-container-hash:x64-windows 1.75.0 -> 1.76.0
    boost-container-hash:x86-windows 1.75.0 -> 1.76.0
    boost-context:x86-windows        1.75.0#4 -> 1.76.0
    boost-contract:x86-windows       1.75.0#1 -> 1.76.0
    boost-conversion:x64-windows     1.75.0 -> 1.76.0
    boost-conversion:x86-windows     1.75.0 -> 1.76.0
    boost-convert:x86-windows        1.75.0 -> 1.76.0
    boost-core:x64-windows           1.75.0 -> 1.76.0
    boost-core:x86-windows           1.75.0 -> 1.76.0
    boost-coroutine:x86-windows      1.75.0#1 -> 1.76.0
    boost-coroutine2:x86-windows     1.75.0 -> 1.76.0
    boost-crc:x64-windows            1.75.0 -> 1.76.0
    boost-crc:x86-windows            1.75.0 -> 1.76.0
    boost-date-time:x86-windows      1.75.0#1 -> 1.76.0
    boost-detail:x64-windows         1.75.0 -> 1.76.0
    boost-detail:x86-windows         1.75.0 -> 1.76.0
    boost-dll:x86-windows            1.75.0 -> 1.76.0
    boost-dynamic-bitset:x64-windows 1.75.0 -> 1.76.0
    boost-dynamic-bitset:x86-windows 1.75.0 -> 1.76.0
    boost-endian:x64-windows         1.75.0 -> 1.76.0
    boost-endian:x86-windows         1.75.0 -> 1.76.0
    boost-exception:x86-windows      1.75.0#1 -> 1.76.0
    boost-fiber:x86-windows          1.75.0#1 -> 1.76.0
    boost-filesystem:x86-windows     1.75.0#1 -> 1.76.0
    boost-flyweight:x86-windows      1.75.0 -> 1.76.0
    boost-foreach:x86-windows        1.75.0 -> 1.76.0
    boost-format:x64-windows         1.75.0 -> 1.76.0
    boost-format:x86-windows         1.75.0 -> 1.76.0
    boost-function:x64-windows       1.75.0 -> 1.76.0
    boost-function:x86-windows       1.75.0 -> 1.76.0
    boost-function-types:x64-windows 1.75.0 -> 1.76.0
    boost-function-types:x86-windows 1.75.0 -> 1.76.0
    boost-functional:x64-windows     1.75.0 -> 1.76.0
    boost-functional:x86-windows     1.75.0 -> 1.76.0
    boost-fusion:x64-windows         1.75.0 -> 1.76.0
    boost-fusion:x86-windows         1.75.0 -> 1.76.0
    boost-geometry:x86-windows       1.75.0 -> 1.76.0
    boost-gil:x86-windows            1.75.0 -> 1.76.0
    boost-graph:x86-windows          1.75.0#1 -> 1.76.0
    boost-graph-parallel:x86-windows 1.75.0 -> 1.76.0
    boost-hana:x64-windows           1.75.0 -> 1.76.0
    boost-hana:x86-windows           1.75.0 -> 1.76.0
    boost-heap:x64-windows           1.75.0 -> 1.76.0
    boost-heap:x86-windows           1.75.0 -> 1.76.0
    boost-histogram:x86-windows      1.75.0 -> 1.76.0
    boost-hof:x64-windows            1.75.0 -> 1.76.0
    boost-hof:x86-windows            1.75.0 -> 1.76.0
    boost-icl:x86-windows            1.75.0 -> 1.76.0
    boost-integer:x64-windows        1.75.0 -> 1.76.0
    boost-integer:x86-windows        1.75.0 -> 1.76.0
    boost-interprocess:x86-windows   1.75.0 -> 1.76.0
    boost-interval:x64-windows       1.75.0 -> 1.76.0
    boost-interval:x86-windows       1.75.0 -> 1.76.0
    boost-intrusive:x64-windows      1.75.0 -> 1.76.0
    boost-intrusive:x86-windows      1.75.0 -> 1.76.0
    boost-io:x64-windows             1.75.0 -> 1.76.0
    boost-io:x86-windows             1.75.0 -> 1.76.0
    boost-iostreams:x86-windows      1.75.0#1 -> 1.76.0
    boost-iterator:x64-windows       1.75.0 -> 1.76.0
    boost-iterator:x86-windows       1.75.0 -> 1.76.0
    boost-json:x86-windows           1.75.0#1 -> 1.76.0
    boost-lambda:x64-windows         1.75.0 -> 1.76.0
    boost-lambda:x86-windows         1.75.0 -> 1.76.0
    boost-leaf:x64-windows           1.75.0 -> 1.76.0
    boost-leaf:x86-windows           1.75.0 -> 1.76.0
    boost-lexical-cast:x86-windows   1.75.0 -> 1.76.0
    boost-local-function:x64-windows 1.75.0 -> 1.76.0
    boost-local-function:x86-windows 1.75.0 -> 1.76.0
    boost-locale:x86-windows         1.75.0#1 -> 1.76.0
    boost-lockfree:x86-windows       1.75.0 -> 1.76.0
    boost-log:x86-windows            1.75.0#1 -> 1.76.0
    boost-logic:x64-windows          1.75.0 -> 1.76.0
    boost-logic:x86-windows          1.75.0 -> 1.76.0
    boost-math:x86-windows           1.75.0#1 -> 1.76.0
    boost-metaparse:x64-windows      1.75.0 -> 1.76.0
    boost-metaparse:x86-windows      1.75.0 -> 1.76.0
    boost-modular-build-helper:x64-windows 1.75.0#9 -> 1.76.0
    boost-move:x64-windows           1.75.0 -> 1.76.0
    boost-move:x86-windows           1.75.0 -> 1.76.0
    boost-mp11:x64-windows           1.75.0 -> 1.76.0
    boost-mp11:x86-windows           1.75.0 -> 1.76.0
    boost-mpl:x64-windows            1.75.0 -> 1.76.0
    boost-mpl:x86-windows            1.75.0 -> 1.76.0
    boost-msm:x86-windows            1.75.0 -> 1.76.0
    boost-multi-array:x64-windows    1.75.0 -> 1.76.0
    boost-multi-array:x86-windows    1.75.0 -> 1.76.0
    boost-multi-index:x86-windows    1.75.0 -> 1.76.0
    boost-multiprecision:x86-windows 1.75.0 -> 1.76.0
    boost-nowide:x86-windows         1.75.0#1 -> 1.76.0
    boost-numeric-conversion:x64-windows 1.75.0 -> 1.76.0
    boost-numeric-conversion:x86-windows 1.75.0 -> 1.76.0
    boost-odeint:x86-windows         1.75.0 -> 1.76.0
    boost-optional:x64-windows       1.75.0 -> 1.76.0
    boost-optional:x86-windows       1.75.0 -> 1.76.0
    boost-outcome:x64-windows        1.75.0 -> 1.76.0
    boost-outcome:x86-windows        1.75.0 -> 1.76.0
    boost-parameter:x64-windows      1.75.0 -> 1.76.0
    boost-parameter:x86-windows      1.75.0 -> 1.76.0
    boost-parameter-python:x86-windows 1.75.0 -> 1.76.0
    boost-pfr:x64-windows            1.75.0 -> 1.76.0
    boost-pfr:x86-windows            1.75.0 -> 1.76.0
    boost-phoenix:x86-windows        1.75.0 -> 1.76.0
    boost-poly-collection:x86-windows 1.75.0 -> 1.76.0
    boost-polygon:x64-windows        1.75.0 -> 1.76.0
    boost-polygon:x86-windows        1.75.0 -> 1.76.0
    boost-pool:x64-windows           1.75.0 -> 1.76.0
    boost-pool:x86-windows           1.75.0 -> 1.76.0
    boost-predef:x64-windows         1.75.0 -> 1.76.0
    boost-predef:x86-windows         1.75.0 -> 1.76.0
    boost-preprocessor:x64-windows   1.75.0 -> 1.76.0
    boost-preprocessor:x86-windows   1.75.0 -> 1.76.0
    boost-process:x86-windows        1.75.0 -> 1.76.0
    boost-program-options:x86-windows 1.75.0#1 -> 1.76.0
    boost-property-map:x86-windows   1.75.0 -> 1.76.0
    boost-property-tree:x86-windows  1.75.0 -> 1.76.0
    boost-proto:x86-windows          1.75.0 -> 1.76.0
    boost-ptr-container:x86-windows  1.75.0 -> 1.76.0
    boost-python:x86-windows         1.75.0#3 -> 1.76.0
    boost-qvm:x86-windows            1.75.0 -> 1.76.0
    boost-random:x86-windows         1.75.0#1 -> 1.76.0
    boost-range:x86-windows          1.75.0 -> 1.76.0
    boost-ratio:x64-windows          1.75.0 -> 1.76.0
    boost-ratio:x86-windows          1.75.0 -> 1.76.0
    boost-rational:x64-windows       1.75.0 -> 1.76.0
    boost-rational:x86-windows       1.75.0 -> 1.76.0
    boost-regex:x86-windows          1.75.0#2 -> 1.76.0
    boost-safe-numerics:x64-windows  1.75.0 -> 1.76.0
    boost-safe-numerics:x86-windows  1.75.0 -> 1.76.0
    boost-scope-exit:x64-windows     1.75.0 -> 1.76.0
    boost-scope-exit:x86-windows     1.75.0 -> 1.76.0
    boost-serialization:x86-windows  1.75.0#1 -> 1.76.0
    boost-signals2:x64-windows       1.75.0 -> 1.76.0
    boost-signals2:x86-windows       1.75.0 -> 1.76.0
    boost-smart-ptr:x64-windows      1.75.0 -> 1.76.0
    boost-smart-ptr:x86-windows      1.75.0 -> 1.76.0
    boost-sort:x86-windows           1.75.0 -> 1.76.0
    boost-spirit:x86-windows         1.75.0 -> 1.76.0
    boost-stacktrace:x86-windows     1.75.0#1 -> 1.76.0
    boost-statechart:x86-windows     1.75.0 -> 1.76.0
    boost-static-assert:x64-windows  1.75.0 -> 1.76.0
    boost-static-assert:x86-windows  1.75.0 -> 1.76.0
    boost-static-string:x64-windows  1.75.0 -> 1.76.0
    boost-static-string:x86-windows  1.75.0 -> 1.76.0
    boost-stl-interfaces:x64-windows 1.75.0 -> 1.76.0
    boost-stl-interfaces:x86-windows 1.75.0 -> 1.76.0
    boost-system:x86-windows         1.75.0#1 -> 1.76.0
    boost-test:x86-windows           1.75.0#1 -> 1.76.0
    boost-thread:x86-windows         1.75.0#1 -> 1.76.0
    boost-throw-exception:x64-windows 1.75.0 -> 1.76.0
    boost-throw-exception:x86-windows 1.75.0 -> 1.76.0
    boost-timer:x86-windows          1.75.0#1 -> 1.76.0
    boost-tokenizer:x64-windows      1.75.0 -> 1.76.0
    boost-tokenizer:x86-windows      1.75.0 -> 1.76.0
    boost-tti:x64-windows            1.75.0 -> 1.76.0
    boost-tti:x86-windows            1.75.0 -> 1.76.0
    boost-tuple:x64-windows          1.75.0 -> 1.76.0
    boost-tuple:x86-windows          1.75.0 -> 1.76.0
    boost-type-erasure:x86-windows   1.75.0#1 -> 1.76.0
    boost-type-index:x64-windows     1.75.0 -> 1.76.0
    boost-type-index:x86-windows     1.75.0 -> 1.76.0
    boost-type-traits:x64-windows    1.75.0 -> 1.76.0
    boost-type-traits:x86-windows    1.75.0 -> 1.76.0
    boost-typeof:x64-windows         1.75.0 -> 1.76.0
    boost-typeof:x86-windows         1.75.0 -> 1.76.0
    boost-ublas:x86-windows          1.75.0 -> 1.76.0
    boost-units:x86-windows          1.75.0 -> 1.76.0
    boost-unordered:x86-windows      1.75.0 -> 1.76.0
    boost-utility:x64-windows        1.75.0 -> 1.76.0
    boost-utility:x86-windows        1.75.0 -> 1.76.0
    boost-uuid:x86-windows           1.75.0 -> 1.76.0
    boost-variant:x64-windows        1.75.0 -> 1.76.0
    boost-variant:x86-windows        1.75.0 -> 1.76.0
    boost-variant2:x64-windows       1.75.0 -> 1.76.0
    boost-variant2:x86-windows       1.75.0 -> 1.76.0
    boost-vmd:x64-windows            1.75.0 -> 1.76.0
    boost-vmd:x86-windows            1.75.0 -> 1.76.0
    boost-wave:x86-windows           1.75.0#1 -> 1.76.0
    boost-winapi:x64-windows         1.75.0 -> 1.76.0
    boost-winapi:x86-windows         1.75.0 -> 1.76.0
    boost-xpressive:x86-windows      1.75.0 -> 1.76.0
    boost-yap:x64-windows            1.75.0 -> 1.76.0
    boost-yap:x86-windows            1.75.0 -> 1.76.0
    bzip2:x64-windows                1.0.8#1 -> 1.0.8#2
    bzip2:x86-windows                1.0.8#1 -> 1.0.8#2
    openssl:x86-windows              1.1.1k#5 -> 1.1.1k#6
    python3:x86-windows              3.9.5 -> 3.9.5#1
    vcpkg-cmake:x64-windows          2021-02-28#3 -> 2021-06-25#4

To update these packages and all dependencies, run
    .\vcpkg upgrade

To only remove outdated packages, run
    .\vcpkg remove --outdated

As you can see, there are a lot of packages that can be upgraded

PhoebeHui commented 3 years ago

AFAIK, 'vcpkg upgrade' currently has some bugs, and does not support manifest mode currently. It failed here since boost is a special port, the dependency structure is different to others, we add a workaround to vcpkg which execute './vcpkg remove boost-uninstall --recurse' to remove the old one, then reinstall it manually again.

TheVeryDarkness commented 3 years ago

AFAIK, 'vcpkg upgrade' currently has some bugs, and does not support manifest mode currently. It failed here since boost is a special port, the dependency structure is different to others, we add a workaround to vcpkg which execute './vcpkg remove boost-uninstall --recurse' to remove the old one, then reinstall it manually again.

I've run that command, and those packages are uninstalled, but it seems I can't install boost now.

PS C:\WINDOWS\system32> cd d:/vcpkg
PS D:\vcpkg> ./vcpkg install boost-math
Computing installation plan...
PS D:\vcpkg> ./vcpkg version
Vcpkg package management program version 2021-05-05-e8977e69d9a3fb462d9ad42013d83a7682706659

See LICENSE.txt for license information.
PS D:\vcpkg> ./vcpkg install boost-math:x64-windows
Computing installation plan...
PS D:\vcpkg>
PhoebeHui commented 3 years ago

@TheVeryDarkness, could you execute 'git pull' and bootstrap-vcpkg.bat to get vcpkg latest source, and try again?

TheVeryDarkness commented 3 years ago

@PhoebeHui I've done that, and now git is on 6809996808414cf7b5ea631ca0660093c0c5b102, while vcpkg's version is still 2021-05-05-e8977e69d9a3fb462d9ad42013d83a7682706659, and I can't install boost, either. Is vcpkg the lastest version?

PhoebeHui commented 3 years ago

@TheVeryDarkness, what's the Visual studio version do you use? could you execute './vcpkg install boost-math --debug', and provide us the output? what's the cmake revision do you use? may same issue with https://github.com/microsoft/vcpkg/issues/18636 https://github.com/microsoft/vcpkg/issues/18718?

dg0yt commented 3 years ago

Computing installation plan... [end of job]

This typically indicates a known issue with CMake 3.21. Install CMake 3.20.

PhoebeHui commented 3 years ago

@TheVeryDarkness , the crash issue has been fixed in vcpkg latest release, please 'git pull' & 'bootstrap-vcpkg.bat' and try again.

PhoebeHui commented 3 years ago

@TheVeryDarkness, please reopen this issue if it still be a problem for you.