Код: Выделить всё
command-line error: invalid number: --wchar_t_keyword
Код: Выделить всё
command-line error: invalid number: --use_pch
ошибка
Я понимаю, что они обычно появляются, когда вы используете неправильные команды компиляции для вашего компилятора, например. -Wall вместо /W4 при использовании MSVC.
Однако я использую команды, определенные MSVC, поэтому не знаю, почему он их преобразует.
Код: Выделить всё
target_precompile_headers(project1 PRIVATE src/stdafx.h)
target_compile_options(project1 PRIVATE /permissive)
# struct alignment 1 byte
target_compile_options(project1 PRIVATE /Zp)
# treat wchar_t as built in type
target_compile_options(project1 PRIVATE /Zc:wchar_t)
if (CMAKE_BUILD_TYPE STREQUAL "Release")
# C/C++ -> Optimization -> String Pooling
target_compile_options(project1 PRIVATE /GF)
# C/C++ -> Optimization -> Omite Frame Pointers
target_compile_options(project1 PRIVATE /Oy)
# Only explicit inline function expansion
target_compile_options(project1 PRIVATE /Ob1)
endif()
Любые предложения будут оценены по достоинству. Я пытался поместить команды в обертку if (MSVC), но безрезультатно.
Код в прикрепленном репозитории может воспроизвести проблему для меня: https://github .com/fo000xx/cmake-intellisense-test
Я пытался обернуть аргументы в оператор if (MSVC), а также перейти на такие вещи, как add_compile_options вместо target_compile_options.
Я очистил кеш .vs intellisense (а также создал новый каталог для тестирования и репликации)
Подробнее здесь: https://stackoverflow.com/questions/793 ... tellisense