Giter VIP home page Giter VIP logo

Comments (18)

smcallis avatar smcallis commented on June 18, 2024

Can you paste the full output? That might give us more to go on.

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

This sounds like an issue with windows paths having backslashes in them, it's the \U in \Users that's causing the trouble:

https://stackoverflow.com/questions/13737370/cmake-error-invalid-escape-sequence-u

So I think there needs to be some more quoting of the paths somewhere.

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

I don't have a windows machine setup for development, so this'll require a little back and forth, but as a first thing let's try changing this line: https://github.com/google/s2geometry/blob/master/src/python/CMakeLists.txt#L10

from:

set(S2GEOMETRY_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX})

to:

cmake_path(SET S2GEOMETRY_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}")

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

Yes you'd have to clone it manually and edit the file, you can follow the direction for building a wheel here. (Sorry, windows compilation has been a lower priority for S2 in general).

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

Now we're fully out of my depth. You'll have to make sure you have a working version of visual studio installed too to compile on Windows.

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

You'll have to have Abseil installed as well to compile.

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

smcallis avatar smcallis commented on June 18, 2024

Without a working windows development box I don't think I'll be able to be much more help. If you can get a working configuration that builds, it might be worth submitting a PR to update the build files so they're more cross platform compatible.

from s2geometry.

satoti avatar satoti commented on June 18, 2024

from s2geometry.

satoti avatar satoti commented on June 18, 2024

Hi I tried installing Abseil using cmake and I get the following error. The steps are in the tutorial here

cmake --build . --target all
MSBuild version 17.7.2+d6990bcfa for .NET Framework
MSBUILD : error MSB1009: Project file does not exist.
Switch: all.vcxproj

Also here is the full output during the previous make step:

cmake -DABSL_BUILD_TESTING=ON -DABSL_USE_GOOGLETEST_HEAD=ON -DCMAKE_CXX_STANDARD=17 ..
-- Building for: Visual Studio 17 2022
-- The CXX compiler identification is MSVC 19.37.32824.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.37.32822/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
CMake Warning at CMakeLists.txt:82 (message):
  A future Abseil release will default ABSL_PROPAGATE_CXX_STD to ON for CMake
  3.8 and up.  We recommend enabling this option to ensure your project still
  builds correctly.


-- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17
-- Performing Test ABSL_INTERNAL_AT_LEAST_CXX17 - Success
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - not found
-- Found Threads: TRUE
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.27/Modules/ExternalProject.cmake:3136 (message):
  The DOWNLOAD_EXTRACT_TIMESTAMP option was not given and policy CMP0135 is
  not set.  The policy's OLD behavior will be used.  When using a URL
  download, the timestamps of extracted files should preferably be that of
  the time of extraction, otherwise code that depends on the extracted
  contents might not be rebuilt if the URL changes.  The OLD behavior
  preserves the timestamps from the archive instead, but this is usually not
  what you want.  Update your project to the NEW behavior or specify the
  DOWNLOAD_EXTRACT_TIMESTAMP option with a value of true to avoid this
  robustness issue.
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.27/Modules/ExternalProject.cmake:4345 (_ep_add_download_command)
  CMakeLists.txt:6 (ExternalProject_Add)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring done (1.3s)
-- Generating done (0.1s)
-- Build files have been written to: C:/Users/c1910526/source/abseil-cpp/build/googletest-external
MSBuild version 17.7.2+d6990bcfa for .NET Framework

  1>Checking Build System
  Creating directories for 'googletest'
  Building Custom Rule C:/Users/c1910526/source/abseil-cpp/build/googletest-external/CMakeLists.txt
  Performing download step (download, verify and extract) for 'googletest'
  -- Downloading...
     dst='C:/Users/c1910526/source/abseil-cpp/build/googletest-external/googletest-prefix/src/main.zip'
     timeout='none'
     inactivity timeout='none'
  -- Using src='https://github.com/google/googletest/archive/main.zip'
  -- Downloading... done
  -- extracting...
       src='C:/Users/c1910526/source/abseil-cpp/build/googletest-external/googletest-prefix/src/main.zip'
       dst='C:/Users/c1910526/source/abseil-cpp/build/googletest-src'
  -- extracting... [tar xfz]
  -- extracting... [analysis]
  -- extracting... [rename]
  -- extracting... [clean up]
  -- extracting... done
  No update step for 'googletest'
  No patch step for 'googletest'
  No configure step for 'googletest'
  No build step for 'googletest'
  No install step for 'googletest'
  No test step for 'googletest'
  Completed 'googletest'
  Building Custom Rule C:/Users/c1910526/source/abseil-cpp/build/googletest-external/CMakeLists.txt
-- The C compiler identification is MSVC 19.37.32824.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.37.32822/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Found Python3: C:/msys64/ucrt64/bin/python3.10.exe (found version "3.10.12") found components: Interpreter
-- Configuring done (36.1s)
-- Generating done (11.6s)
-- Build files have been written to: C:/Users/c1910526/source/abseil-cpp/build

from s2geometry.

jmr avatar jmr commented on June 18, 2024

Sorry, I don't really know anything about Windows. If I search for [cmake all.vcxproj], I find:

https://discourse.cmake.org/t/msbuild-error-msb1009-project-file-does-not-exist-switch-all-build-vcxproj/4107

https://stackoverflow.com/questions/71437697/cmake-msbuild-error-msb1009-project-file-does-not-exist

Try some of those suggestions.

from s2geometry.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.