Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

I tried to do `-DCMAKE_CXX_STANDARD=17` but I still get 14 - Why? (trying to regenerate and rebuild after `git pull`)

Open
#196 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Bug
Clarity
Needs clarification
Activity status
Stale
Tech stack
cmake, cpp
Domain
build-system

Research direction

Start by tracing the reported CMake configuration through CMakeLists.txt and thirdparty/CMakeLists.txt, including the variables shown as unused. Compare the requested C++ standard, MSVC runtime, and Boost setup with the generated configuration. Done means explaining why those values are ignored or overridden and identifying the expected configuration behavior.

Written by the indexing model from the issue text.

Description

I ran this command:

cmake .. -DCMAKE_INSTALL_PREFIX=../install -DCMAKE_BUILD_TYPE=Release -DJINJA2CPP_DEPS_MODE=external-boost -DJINJA2PP_MSVC_RUNTIME_TYPE=/MT -DCMAKE_CXX_STANDARD=17 -G "Visual Studio 16 2019" -A x64

When trying to generate project files again after running git pull. But I got this message:

-- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
-- The C compiler identification is MSVC 19.25.28612.0
-- The CXX compiler identification is MSVC 19.25.28612.0
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe - works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.25.28610/bin/Hostx64/x64/cl.exe - works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Jinja2Cpp C++ standard: 14
-- Selected MSVC runtime type for Jinja2C++ library: '/MT'
-- Jinja2C++ library type: STATIC
-- Selected Jinja2C++ thirdparty libraries runtime type: '/MT'
-- 'extnernal-boost' dependencies mode selected for Jinja2Cpp. All dependencies are used as submodules except of boost
-- Found Git: C:/Program Files/Git/cmd/git.exe (found version "2.26.2.windows.1")
-- Project 'expected_lite', package 'expected-lite' version: '0.3.0'
-- Project 'variant_lite', package 'variant-lite' version: '1.2.2'
-- Project 'optional_lite', package 'optional-lite' version: '3.2.0'
-- Project 'string_view_lite', package 'string-view-lite' version: '1.3.0'
-- Version: 6.1.2
-- Build type: Release
-- CXX_STANDARD: 14
CMake Warning (dev) at thirdparty/json/rapid/CMakeLists.txt:12 (PROJECT):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
    PROJECT_VERSION_MAJOR
    PROJECT_VERSION_MINOR
    PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

-- RapidJSON found. Headers: C:/Jinja2Cpp/thirdparty/json/rapid/include
-- Using the multi-header code from C:/Jinja2Cpp/thirdparty/json/nlohmann/include/
CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:272 (message):
  The package name passed to `find_package_handle_standard_args` (GTest) does
  not match the name of the calling package (gtest).  This can lead to
  problems in calling code that expects `find_package` result variables
  (e.g., `_FOUND`) to follow a certain pattern.
Call Stack (most recent call first):
  C:/Program Files/CMake/share/cmake-3.17/Modules/FindGTest.cmake:205 (FIND_PACKAGE_HANDLE_STANDARD_ARGS)
  thirdparty/CMakeLists.txt:47 (find_package)
  CMakeLists.txt:172 (include)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Could NOT find GTest (missing: GTEST_LIBRARY GTEST_INCLUDE_DIR GTEST_MAIN_LIBRARY)
-- gtest not found, using submodule
-- Found PythonInterp: C:/Users/Osman/AppData/Local/Programs/Python/Python38/python.exe (found version "3.8.2")
-- infix: EXPECTED-LITE target: expected-lite
-- infix: VARIANT-LITE target: variant-lite
-- infix: OPTIONAL-LITE target: optional-lite
-- infix: STRING-VIEW-LITE target: string-view-lite
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    JINJA2PP_MSVC_RUNTIME_TYPE


-- Build files have been written to: C:/Jinja2Cpp/build

It's using C++14 even though I did specify C++17. And if it did take my command for using /MT and instead of '/MD'`, why is it saying that that variable wasn't used? What happened there?

Also, is there a way to specify what version of Boost I want it to use? I built and installed Boost version 1.73.0 just yesterday, but I forgot to rid of the 1.72 installation first. Is that going to cause a problem?

Dominant language
C++
Stars
602
Forks
115
Avg merge
1h 46m
Merged PRs (30d)
206

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from jinja2cpp/Jinja2Cpp

All issues in jinja2cpp/Jinja2Cpp

Similar issues

More C++ issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.