Заголовочные файлы Linux в CLion
кто знает как можно подсунуть .h файлы линукса в CLion при написании кода на Windows, чтобы можно было переходить к сигнатурам и было меньше красного в коде?
Ответы (2 шт):
Я такое делал только в VSCode+Clangd, но раз гугл подсказывает, что Clion тоже использует Clangd, должно сработать и в нем.
- На компьютере с виндой делаете папку, куда копируете файловую систему вашего линукса (можно попробовать удалить все кроме хедеров, но лучше пусть сначала все заработает).
- Если у вас их еще нет, в корне проекта создаете
compiler_commands.jsonилиcompile_flags.txt, как описано здесь. - В этом файле, к обычным флагам добавляете как минимум
--sysroot=папка/с/линуксом --target=платформа(имя платформы можно спросить уclang++ --versionна линуксе, например у меня -x86_64-pc-linux-gnu).
Если повезет, то все будет работать из коробки. У меня сразу не заработало, но там линукс был необычный - тогда может понадобится методом тыка или добавлять флаги клангу, или патчить хедеры, пока не пропадут ошибки.
Для этого необходимо задать тулчейн, который задействуется для кросс компиляции. Это можно сделать в настройках → Build Execution Deployment → Toolchains. Как альтернативу кросс компиляции, можно использовать Full remote mode. Однако этот режим работает хуже, чем обычный.
