использовать clang в качестве основного компилятора и clangd в качестве замены для C/C++ расширения, но не задалось, налоело возится и решил попробовать что-то ещё.
Какие хорошие расширения, компиляторы и так далеее вы можете порекоментовать для разработки на C/C++ , чтобы иметь выбор, помимо стандартного GCC ?
есть gcc и кланг) Ещё поставь себе clang-tidy и с cmake уже можно жить
visual studio, cmake и clang 👹
Как я и говорил, clang не видит стандартные библиотеки C++ и мне надоело с этим возится , а замену GCC я ищу для разнообразия)
Похоже я так и сделаю, в жопу эти CLionы🤡
ты что-то пропустил, у меня все работало
Да забей)
> visual studio > под линуксом 🍿
Что в выводе с ключом -v?
Можете дать тогда список пакетов, который нужно установить для нормальной работы clang с C++ через apt? Может быть, я что-то пропустил? У установил (sudo apt install) clang, clangd, libc++-dev (может ещё что-то, я уже не помню) , что ещё нужно установить или сделать?
Ubuntu clang version 14.0.0-1ubuntu1.1 Target: x86_64-pc-linux-gnu Thread model: posix InstalledDir: /usr/bin Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/11 Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12 Selected GCC installation: /usr/bin/../lib/gcc/x86_64-linux-gnu/12 Candidate multilib: .;@m64 Selected multilib: .;@m64 "/usr/lib/llvm-14/bin/clang" -cc1 -triple x86_64-pc-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name main.cpp -mrelocation-model pic -pic-level 2 -pic-is-pie -mframe-pointer=all -fmath-errno -ffp-contract=on -fno-rounding-math -mconstructor-aliases -funwind-tables=2 -target-cpu x86-64 -tune-cpu generic -mllvm -treat-scalable-fixed-error-as-warning -debugger-tuning=gdb -v -fcoverage-compilation-dir=/home/euam/lc++ -resource-dir /usr/lib/llvm-14/lib/clang/14.0.0 -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++ -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/x86_64-linux-gnu -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/backward -internal-isystem /usr/lib/llvm-14/lib/clang/14.0.0/include -internal-isystem /usr/local/include -internal-isystem /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -fdeprecated-macro -fdebug-compilation-dir=/home/euam/lc++ -ferror-limit 19 -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fcolor-diagnostics -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o /tmp/main-72402d.o -x c++ main.cpp clang -cc1 version 14.0.0 based upon LLVM 14.0.0 default target x86_64-pc-linux-gnu ignoring nonexistent directory "/usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/x86_64-linux-gnu" ignoring nonexistent directory "/usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++/backward" ignoring nonexistent directory "/usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include" ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++ /usr/lib/llvm-14/lib/clang/14.0.0/include /usr/local/include /usr/include/x86_64-linux-gnu /usr/include End of search list. main.cpp:1:10: fatal error: 'iostream' file not found #include <iostream> ^~~~~~~~~~ 1 error generated.
Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!
#include <...> search starts here:... Там есть заголовочные файлы?
На пути /usr/bin/../lib/gcc/x86_64-linux-gnu/12/../../../../include/c++ (там также нету папки C++ ), куча каких-то непонятных файлов, потом есть папка include там кучу заголовочных файлов, но среди них нету iostream например. Допустим, их нету. Как их установить?
Какая у тебя версия убунту? Попробуй: sudo apt install g++-12
А gcc какой версии? Можно попробовать установить libstdc++ Что то типо: sudo apt install libstdc++-14-dev Либо установить g++ 12 версии
У меня Linux Mint
g++ находит библиотеки, но мне бы хотелось использовать clang
Но версия то какая у gcc?
Все равно попробуй, оно установит все, чего не хватает
Помогло! Это помогло, теперь clang++ видит библиотеки и компилирует код
дай угадаю- возился с инклудами решается в .vscode/settings.json: { "clangd.arguments": [ "-background-index", "--header-insertion=never" ], "clangd.fallbackFlags": [ "--std=c++17", "-I${workspaceFolder}/include", "-I${workspaceFolder}/external/glad/include", "-I${workspaceFolder}/external/glm", "-I${workspaceFolder}/external/lua/src" ] }
Обсуждают сегодня