Skip to content

[vcpkg] Reset to known-good build scripts#10864

Closed
strega-nil wants to merge 2 commits intomicrosoft:masterfrom
strega-nil:fix-bootstrap
Closed

[vcpkg] Reset to known-good build scripts#10864
strega-nil wants to merge 2 commits intomicrosoft:masterfrom
strega-nil:fix-bootstrap

Conversation

@strega-nil
Copy link
Contributor

Should fix #10847.

@strega-nil
Copy link
Contributor Author

@timautry @Farwaykorse could you build these and see if these actually do fix your issue?

@ghost
Copy link

ghost commented Apr 16, 2020

I replaced the

  • toolsrc/CMakeLists.txt,

  • scripts/bootstrap.sh with the ones here

  • and renamed toolsrc/cmake/utilities.cmake to utilities.cmake.txt

  • reran the ./bootstrap-vcpkg.sh with the following errors about VCPKG_DISABLE_METRICS in the attached:
    bootstrap-vcpkg.log
    CMakeError.log
    CMakeOutput.log

  • I can help as I am able off and on as I may need to rest due to my disability or do other household chores, etc.

@strega-nil
Copy link
Contributor Author

strega-nil commented Apr 16, 2020

@timautry this should actually work -.- I'm sorry, thanks for being my test case

@ghost
Copy link

ghost commented Apr 16, 2020

The latest change works... Yeah :)
bootstrap-vcpkg.log

@Farwaykorse
Copy link
Contributor

Cloned in a new directory; checked-out fix-bootstrap; ran ./bootstrap-vcpkg.sh

54ec9b2 builds and links.

@strega-nil
Copy link
Contributor Author

@Farwaykorse, @timautry can you also try the following?

git clone https://github.com/strega-nil/vcpkg
cd vcpkg
git checkout new-buildsystem
./boostrap-vcpkg.sh

?

@Farwaykorse
Copy link
Contributor

Farwaykorse commented Apr 16, 2020

I noticed the current HEAD of vcpkg CMake output Line 12

-- Detecting how to use the C++ filesystem library - <experimental/filesystem>

But when I run the functions in an other CMake project it shows:

-- Detecting how to use the C++ filesystem library - <filesystem>

So I tried changing the CMake version in the vcpkgTools.xml, to CMake v3.17.1.
This worked!

Changing it back to v3.14.0, again resulted in it trying to use <experimental/filesystem> and a failed build.

This seems like a CMake bug.

@Farwaykorse
Copy link
Contributor

Farwaykorse commented Apr 16, 2020

@Farwaykorse, @timautry can you also try the following?

git clone https://github.com/strega-nil/vcpkg
cd vcpkg
git checkout new-buildsystem
./boostrap-vcpkg.sh

?

ffac377 builds and links

@ghost
Copy link

ghost commented Apr 16, 2020

I created new instance vcpkg.devl from above instructions and it compiled and linked fine.
bootstrap-vcpkg-new-buildsystem.log

@Farwaykorse
Copy link
Contributor

The detection to use <filesystem> works properly for CMake 3.15.0 and newer.
Since there is already a PR to update CMake to 3.17.1 #10767 this should be fixed soon.

@timautry can you try if it works for your issue too?

git clone https://github.com/Farwaykorse/vcpkg
cd vcpkg
git checkout update_cmake_linux
./boostrap-vcpkg.sh

@strega-nil
Copy link
Contributor Author

@Farwaykorse I think the issue with openSUSE is unrelated -- it looks like the issue was attempting to link with a G++ that was different from the compiler.

@ghost
Copy link

ghost commented Apr 16, 2020

@Farwaykorse - I still get a failed to link using the version you have provided using
bootstrap-vcpkg.cmake.test.log
cmake 3.17.1
attached

@strega-nil strega-nil closed this Apr 16, 2020
@strega-nil
Copy link
Contributor Author

Superseded by #10867

@strega-nil strega-nil deleted the fix-bootstrap branch April 16, 2020 23:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

./bootstrap-vcpkg.sh fails to link vcpkg and create executable binary with latest update

2 participants