170 похожих чатов

Всем привет. Я недавно установил Linux и VS Code. попытался

использовать clang в качестве основного компилятора и clangd в качестве замены для C/C++ расширения, но не задалось, налоело возится и решил попробовать что-то ещё.

Какие хорошие расширения, компиляторы и так далеее вы можете порекоментовать для разработки на C/C++ , чтобы иметь выбор, помимо стандартного GCC ?

23 ответов

40 просмотров

есть gcc и кланг) Ещё поставь себе clang-tidy и с cmake уже можно жить

visual studio, cmake и clang 👹

Андрей- Автор вопроса
Aniki Hi$ok@ 🌈 Z 🐀
есть gcc и кланг) Ещё поставь себе clang-tidy и с ...

Как я и говорил, clang не видит стандартные библиотеки C++ и мне надоело с этим возится , а замену GCC я ищу для разнообразия)

Иван Музыка
visual studio, cmake и clang 👹

Похоже я так и сделаю, в жопу эти CLionы🤡

Cppshizoid
?

Да забей)

Иван Музыка
visual studio, cmake и clang 👹

> visual studio > под линуксом 🍿

Андрей- Автор вопроса
Aniki Hi$ok@ 🌈 Z 🐀
ты что-то пропустил, у меня все работало

Можете дать тогда список пакетов, который нужно установить для нормальной работы clang с C++ через apt? Может быть, я что-то пропустил? У установил (sudo apt install) clang, clangd, libc++-dev (может ещё что-то, я уже не помню) , что ещё нужно установить или сделать?

Андрей- Автор вопроса
Maus Grau
Что в выводе с ключом -v?

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.

Андрей
Ubuntu clang version 14.0.0-1ubuntu1.1 Target: x86...

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

Андрей
Ubuntu clang version 14.0.0-1ubuntu1.1 Target: x86...

#include <...> search starts here:... Там есть заголовочные файлы?

Андрей- Автор вопроса
Maus Grau
#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 версии

Андрей- Автор вопроса
Maus Grau
А gcc какой версии? Можно попробовать установить l...

g++ находит библиотеки, но мне бы хотелось использовать clang

Андрей
У меня Linux Mint

Все равно попробуй, оно установит все, чего не хватает

Андрей- Автор вопроса
havfsq
Какая у тебя версия убунту? Попробуй: sudo apt ins...

Помогло! Это помогло, теперь 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" ] }

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта