-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/nav 70 gtfs reader only required fields #3
Feature/nav 70 gtfs reader only required fields #3
Conversation
Brunner246
commented
Jun 16, 2024
- implement gtfs reader strategy
- setup unit tests
- setup benchmark
- in a next step the data has to be prepared for the raptor algorithm
… reader strategies
…start creating more test cases
…start creating more test cases
… open closed principle with keeping the `GtfsReader` generic
… to SRP - create bridge implementation for spdlog logging framework
…sed by the raptor algorithm
… step for the raptor algorithm - modify file reader strategy to try to read as performant as possible
use this as a reference for vcpkg https://www.jetbrains.com/help/clion/package-management.html |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks @Brunner246, nice work!
Unfortunately I was not able to build the project directly on macOS:
❯ /Users/munterfi/.vcpkg-clion/vcpkg/vcpkg integrate install
Applied user-wide integration for this vcpkg root.
CMake projects should use: "-DCMAKE_TOOLCHAIN_FILE=/Users/munterfi/.vcpkg-clion/vcpkg/scripts/buildsystems/vcpkg.cmake"
raptorxx on feature/NAV-70-GTFS-Reader-only-Required-Fields via △ v3.28.4
❯ mkdir build
raptorxx on feature/NAV-70-GTFS-Reader-only-Required-Fields via △ v3.28.4
❯ cd build
raptorxx/build on feature/NAV-70-GTFS-Reader-only-Required-Fields
❯ cmake ..
-- The C compiler identification is AppleClang 15.0.0.15000309
-- The CXX compiler identification is AppleClang 15.0.0.15000309
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_VISIBILITY - Success
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY
-- Performing Test COMPILER_HAS_HIDDEN_INLINE_VISIBILITY - Success
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR
-- Performing Test COMPILER_HAS_DEPRECATED_ATTR - Success
CU_LIST_DIR UO: /Users/munterfi/repos/naviqore/raptorxx/schedule
BINARY_DIR:/Users/munterfi/repos/naviqore/raptorxx/build/schedule
-- CMAKE_SOURCE_DIR: /Users/munterfi/repos/naviqore/raptorxx/schedule/test/test-data/
CMake Error at schedule/benchmarks/CMakeLists.txt:9 (find_package):
Could not find a package configuration file provided by "benchmark" with
any of the following names:
benchmarkConfig.cmake
benchmark-config.cmake
Add the installation prefix of "benchmark" to CMAKE_PREFIX_PATH or set
"benchmark_DIR" to a directory containing one of the above files. If
"benchmark" provides a separate development package or SDK, be sure it has
been installed.
-- Configuring incomplete, errors occurred!
Also if I provided the custom CMAKE_TOOLCHAIN_FILE as suggested by vcpkg:
raptorxx/build on feature/NAV-70-GTFS-Reader-only-Required-Fields via C v15.0.0-clang via △ v3.28.4
❯ DCMAKE_TOOLCHAIN_FILE=/Users/munterfi/.vcpkg-clion/vcpkg/scripts/buildsystems/vcpkg.cmake && cmake build ..
CMake Warning:
Ignoring extra path from command line:
"/Users/munterfi/repos/naviqore/raptorxx/build/build"
CU_LIST_DIR UO: /Users/munterfi/repos/naviqore/raptorxx/schedule
BINARY_DIR:/Users/munterfi/repos/naviqore/raptorxx/build/schedule
-- CMAKE_SOURCE_DIR: /Users/munterfi/repos/naviqore/raptorxx/schedule/test/test-data/
CMake Error at schedule/benchmarks/CMakeLists.txt:9 (find_package):
Could not find a package configuration file provided by "benchmark" with
any of the following names:
benchmarkConfig.cmake
benchmark-config.cmake
Add the installation prefix of "benchmark" to CMAKE_PREFIX_PATH or set
"benchmark_DIR" to a directory containing one of the above files. If
"benchmark" provides a separate development package or SDK, be sure it has
been installed.
-- Configuring incomplete, errors occurred!
In the log of vcpkg, there seems to be some sort of version conflict:
❯ cat /Users/munterfi/repos/naviqore/raptorxx/cmake-build-debug/vcpkg-manifest-install.log
waiting to take filesystem lock on /Users/munterfi/.vcpkg-clion/vcpkg/.vcpkg-root...
error: /Users/munterfi/repos/naviqore/raptorxx/vcpkg.json was rejected because it uses "version>=" and does not have a "builtin-baseline". This can be fixed by removing the uses of "version>=" or adding a "builtin-baseline".
See `vcpkg help versioning` for more information.
Therefore I set the version in the CMakeLists.txt
at the root of the project to the same version in the vcpkg.json
:
project(raptorxx VERSION 1.0.0)
Baam! Now it works and all tests pass. Maybe unix systems are more strict in consistent versioning... ? 😄
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Brunner246, perfect, thanks!