Ich sehe die folgenden Fehler, die von Visual Studios Intellisense ausgegeben werden:
Code: Select all
command-line error: invalid number: --wchar_t_keyword
Code: Select all
command-line error: invalid number: --use_pch
vollständiger Code
Fehler
Ich verstehe, dass diese normalerweise auftreten, wenn Sie falsche Kompilierungsbefehle für Ihren Compiler verwenden, z. B. -Wall anstelle von /W4 bei Verwendung von MSVC.
Ich verwende jedoch von MSVC definierte Befehle, daher weiß ich nicht, warum sie transformiert werden.
Code: Select all
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()
Außerdem gibt es keine Probleme beim Erstellen des Projekts. Es liegt lediglich daran, dass Visual Studios Intellisense diese Fehler meldet (und daher in den Quelldateien keine schöne Farbformatierung aufweist).
Für Vorschläge wäre ich dankbar. Ich habe versucht, die Befehle hinter einem if (MSVC)-Wrapper zu platzieren, ohne Erfolg.
Der Code im angehängten Repo kann das Problem für mich reproduzieren: https://github .com/fo000xx/cmake-intellisense-test
Ich habe versucht, die Argumente in eine if-Anweisung (MSVC) zu packen und stattdessen auf Dinge wie add_compile_options umzusteigen target_compile_options.
Ich habe den .vs-Intellisense-Cache geleert (und ein brandneues Verzeichnis zum Testen und Replizieren erstellt)
Ich sehe die folgenden Fehler, die von Visual Studios Intellisense ausgegeben werden:
[code]command-line error: invalid number: --wchar_t_keyword[/code]
[code]command-line error: invalid number: --use_pch[/code]
vollständiger Code
Fehler
Ich verstehe, dass diese normalerweise auftreten, wenn Sie falsche Kompilierungsbefehle für Ihren Compiler verwenden, z. B. -Wall anstelle von /W4 bei Verwendung von MSVC.
Ich verwende jedoch von MSVC definierte Befehle, daher weiß ich nicht, warum sie transformiert werden.
[code]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()
[/code]
Außerdem gibt es keine Probleme beim Erstellen des Projekts. Es liegt lediglich daran, dass Visual Studios Intellisense diese Fehler meldet (und daher in den Quelldateien keine schöne Farbformatierung aufweist).
Für Vorschläge wäre ich dankbar. Ich habe versucht, die Befehle hinter einem if (MSVC)-Wrapper zu platzieren, ohne Erfolg.
[b]Der Code im angehängten Repo kann das Problem für mich reproduzieren: https://github .com/fo000xx/cmake-intellisense-test[/b]
Ich habe versucht, die Argumente in eine if-Anweisung (MSVC) zu packen und stattdessen auf Dinge wie add_compile_options umzusteigen target_compile_options.
Ich habe den .vs-Intellisense-Cache geleert (und ein brandneues Verzeichnis zum Testen und Replizieren erstellt)