microsoft / vcpkg

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

[libjpeg-turbo] Build error on x64-windows #35884

Open HarryPotterGeo opened 9 months ago

HarryPotterGeo commented 9 months ago

Copy issue body from C:/Users/译璞/vcpkg/installed/vcpkg/issue_body.md

Cheney-W commented 9 months ago

Please see #30604 for how to report an issue.

github-actions[bot] commented 8 months ago

This is an automated message. Per our repo policy, stale issues get closed if there has been no activity in the past 28 days. The issue will be automatically closed in 14 days. If you wish to keep this issue open, please add a new comment.

Cybula-real commented 8 months ago

Package: libjpeg-turbo:x64-windows@3.0.1

Host Environment

To Reproduce

vcpkg install libjpeg-turbo Failure logs

-- Using cached libjpeg-turbo-libjpeg-turbo-3.0.1.tar.gz.
-- Cleaning sources at C:/DEV/vcpkg/buildtrees/libjpeg-turbo/src/3.0.1-4324fbd2eb.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source C:/DEV/vcpkg/downloads/libjpeg-turbo-libjpeg-turbo-3.0.1.tar.gz
-- Applying patch add-options-for-exes-docs-headers.patch
-- Applying patch workaround_cmake_system_processor.patch
-- Using source at C:/DEV/vcpkg/buildtrees/libjpeg-turbo/src/3.0.1-4324fbd2eb.clean
-- Using cached nasm-2.16.01-win64.zip.
CMake Error at scripts/cmake/vcpkg_extract_archive.cmake:19 (message):
  C:/DEV/vcpkg/downloads/tools/nasm was an extraction target, but it already
  exists.
Call Stack (most recent call first):
  scripts/cmake/vcpkg_find_acquire_program.cmake:203 (vcpkg_extract_archive)
  ports/libjpeg-turbo/portfile.cmake:23 (vcpkg_find_acquire_program)
  scripts/ports.cmake:170 (include)
Cheney-W commented 8 months ago

I can't reproduce this issue in my side with the latest vcpkg 2024-01-11-710a3116bbd615864eef5f9010af178034cb9b44 and VS2022 17.8.6. Could you please try to remove the vcpkg\downloads folder and reinstall the port again?

Cybula-real commented 8 months ago

That fixed the issue, thanks

Veratil commented 8 months ago

This happened to me as well. Moving the downloads/tools/nasm folder is what solved it. vcpkg_extract_archive completely bails if the destination folder exists, which doesn't 100% seem like the correct action to me (but may be I'm not sure). Looks like this error was added with #34881.

Further info: I had downloads/tools/nasm-2.15.05 and vcpkg was trying to install nasm-2.16.01. So just having the downloads/tools/nasm folder shouldn't have errored in my opinion.