microsoft / vcpkg

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

[boost] build failure x64-windows-static #38498

Closed SKNo closed 1 week ago

SKNo commented 2 weeks ago

Operating system

Windows

Compiler

MSVC

Steps to reproduce the behavior

vcpkg install boost:x64-windows-static

Failure logs

E:\Lib\vcpkg>vcpkg install boost:x64-windows-static
Computing installation plan...
The following packages will be built and installed:
    boost:x64-windows-static@1.84.0#1
  * boost-cobalt:x64-windows-static@1.84.0#1
  * boost-parameter-python:x64-windows-static@1.84.0#1
  * boost-python[core,python3]:x64-windows-static@1.84.0#1
  * boost-redis:x64-windows-static@1.84.0#1
  * python3:x64-windows-static@3.11.8#1
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet x64-windows-static...
Compiler found: C:/Program Files/Microsoft Visual Studio/2022/Professional/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe
Restored 0 package(s) from E:\Lib\vcpkg_binary_cache\archives in 425 us. Use --debug to see more details.
Installing 1/6 boost-cobalt:x64-windows-static@1.84.0#1...
Building boost-cobalt:x64-windows-static@1.84.0#1...
-- Using cached boostorg-cobalt-boost-1.84.0.tar.gz.
-- Cleaning sources at E:/Lib/vcpkg/buildtrees/boost-cobalt/src/ost-1.84.0-f1b8232bac.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source E:/Lib/vcpkg/downloads/boostorg-cobalt-boost-1.84.0.tar.gz
-- Using source at E:/Lib/vcpkg/buildtrees/boost-cobalt/src/ost-1.84.0-f1b8232bac.clean
-- Found external ninja('1.11.0').
-- Configuring x64-windows-static
CMake Error at scripts/cmake/vcpkg_execute_required_process.cmake:112 (message):
    Command failed: "C:/Program Files/Microsoft Visual Studio/2022/Professional/Common7/IDE/CommonExtensions/Microsoft/CMake/Ninja/ninja.exe" -v
    Working Directory: E:/Lib/vcpkg/buildtrees/boost-cobalt/x64-windows-static-rel/vcpkg-parallel-configure
    Error code: 1
    See logs for more information:
      E:\Lib\vcpkg\buildtrees\boost-cobalt\config-x64-windows-static-dbg-CMakeCache.txt.log
      E:\Lib\vcpkg\buildtrees\boost-cobalt\config-x64-windows-static-rel-CMakeCache.txt.log
      E:\Lib\vcpkg\buildtrees\boost-cobalt\config-x64-windows-static-out.log

Call Stack (most recent call first):
  installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_configure.cmake:252 (vcpkg_execute_required_process)
  installed/x64-windows/share/vcpkg-boost/boost-install.cmake:55 (vcpkg_cmake_configure)
  ports/boost-cobalt/portfile.cmake:12 (boost_configure_and_install)
  scripts/ports.cmake:175 (include)

error: building boost-cobalt:x64-windows-static failed with: BUILD_FAILED
Elapsed time to handle boost-cobalt:x64-windows-static: 3 s
Please ensure you're using the latest port files with `git pull` and `vcpkg update`.
Then check for known issues at:
  https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+boost-cobalt
You can submit a new issue at:
  https://github.com/microsoft/vcpkg/issues/new?title=[boost-cobalt]+Build+error+on+x64-windows-static&body=Copy+issue+body+from+E%3A%2FLib%2Fvcpkg%2Finstalled%2Fvcpkg%2Fissue_body.md

config-x64-windows-static-out.log

Additional context

According to the log file it is searching for "boost_asio" I am totally confused : before today's git pull, I could install or upgrade all boost-xxx libraries by vcpkg install boost:x64-windows-static or vcpkg upgrade boost:x64-windows-static without any problem. Am I missing something? Thank you

SKNo commented 2 weeks ago

Also vcpkg upgrade/install boost:x64-windows, only upgrades/installs a small subset of boost libraries and sub-libraries from boost-accumulators to boost-yap are not automatically upgraded / installed. Should I upgrade/install one sub-library at time? Just try to figure it out. Thank you

Neumann-A commented 2 weeks ago

same issue as #38487

Please do not mix installed trees of different commits of vcpkg.

SKNo commented 2 weeks ago

I did not mix installed trees of different commits I use both shared and static libraries in my projects, I deleted buildtrees and tried to rebuild shared and static from scratch as suggeted. vcpkg install boost:x64-windows worked but didn't install most of boost libraries, vcpkg install boost:x64-windows-static failed as mentioned above Thank you

Neumann-A commented 2 weeks ago

The problem is that this works fine:

Installing 55/55 boost-cobalt:x64-windows-static@1.84.0#1...
Building boost-cobalt:x64-windows-static@1.84.0#1...
-- Downloading https://github.com/boostorg/cobalt/archive/boost-1.84.0.tar.gz -> boostorg-cobalt-boost-1.84.0.tar.gz...
-- Extracting source E:/vcpkg_cache/downloads/boostorg-cobalt-boost-1.84.0.tar.gz
-- Using source at E:/vcpkg_folders/various/buildtrees/boost-cobalt/src/ost-1.84.0-f1b8232bac.clean
-- Found external ninja('1.11.0').
-- Configuring x64-windows-static
-- Building x64-windows-static-dbg
-- Building x64-windows-static-rel
-- Installing: E:/vcpkg_folders/various/packages/boost-cobalt_x64-windows-static/share/boost-cobalt/copyright
-- Performing post-build validation
Stored binaries in 1 destinations in 1.1 s.
Elapsed time to handle boost-cobalt:x64-windows-static: 6.7 s
boost-cobalt:x64-windows-static package ABI: 01054a8a6ffa3b8edf490aae2e73d650f2d4bba5dd694b89eecb6998a1a55ed6
Total install time: 1 min
The package boost-cobalt is compatible with built-in CMake targets of FindBoost.cmake:

    find_package(Boost REQUIRED COMPONENTS cobalt)
    target_link_libraries(main PRIVATE Boost::cobalt)

or the generated cmake configs via:

    find_package(boost_cobalt REQUIRED CONFIG)
    target_link_libraries(main PRIVATE Boost::cobalt)

If I locally test it with a clean checkout

SKNo commented 2 weeks ago

Okay, I will delete all boost buildtrees and try again.

Neumann-A commented 2 weeks ago

vcpkg remove boost-uninstall --recurse would be enough for the triplets you want to upgrade

SKNo commented 2 weeks ago

vcpkg remove boost-uninstall --recurse would be enough for the triplets you want to upgrade Not working .. will do with a new clean checkout

Neumann-A commented 2 weeks ago

When was the last time you re-bootstrapped vcpkg itself? Normally you should do that after a git pull. IF vcpkg remove boost-uninstall --recurse does not work to remove all of boost for a given triplet you either haven't bootstrapped vcpkg again or your installed tree is messed up.

SKNo commented 2 weeks ago

I do re-bootstrap after each git pull. I guess my buildtree is messed up. I will do a new and clean checkout (will take lot of time to rebuild everything). I will confirm here if everything is Ok (permitting to close or keep issues open) Thank you

SKNo commented 2 weeks ago

@Neumann-A I confirm that after a clean and new checkout, all builds worked out correctly (I compile on a laptop, so took a long time) I have no idea what happend to my buildtrees (I have not done anything out of ordinary), so I leave it to you to keep this issue and the other one (https://github.com/microsoft/vcpkg/issues/38487) open or close. While I am here, I have a question wrt to the new ports, I see most (all?) of requests for new ports are going inactive (including mine https://github.com/microsoft/vcpkg/issues/35648 ) What is the new policy for the new ports? Thank you

MonicaLiu0311 commented 1 week ago

While I am here, I have a question wrt to the new ports, I see most (all?) of requests for new ports are going inactive (including mine #35648 ) What is the new policy for the new ports?

We are no longer actively adding new ports. If users want to add new ports, they can submit a Pull Request themselves. We will accept and review.

MonicaLiu0311 commented 1 week ago

Duplicate of #38487.