Как включить папку библиотек в C? - PullRequest
0 голосов
/ 10 марта 2019

Я пытаюсь включить папку, содержащую комбинацию из примерно 60 .h и .hpp файлов.Эта папка содержит библиотеки для программирования роботов с Wallaby (мини-компьютероподобным устройством) для соревнований по баскетболу.include находится там же, где и main.c (внутри code).До сих пор мой заголовок для включения библиотек выглядит так:

#include "../code/include/accel.h"

Так же, как accel.h, у меня есть 60 других файлов .h и .hpp внутри include.Итак, что касается моего вопроса, нужно ли мне печатать все 60 строк заголовка?или есть способ включить папку include.

Я использую Clion для этого проекта, если я не могу включить саму папку, кто-нибудь знает о ярлыке в Clion для включения всех файлов в include.

Iтакже думал об использовании какого-то заполнителя для имени папки и указывал только тип файла.Так, например: #include "../code/include/(generic placeholder name).h".Я понятия не имею, существует ли что-то подобное.

Я бы также попросил вас иметь в виду, что я новичок в программировании, поэтому, пожалуйста, оставьте ваши ответы простыми.

Это простодля дополнительной информации:
Wallaby - это мини-компьютер, к которому вы подключаете свои датчики, моторы, сервоприводы и камеры, чтобы управлять роботом для соревнований по баскетболу.Обычно к Wallaby можно подключиться либо через Wifi Direct, либо по кабелю, и писать программы на нем напрямую через онлайн-интерфейс (не совсем уверенный в названии этого слова, но вы просто вводите IP-адрес в браузере, и он вызываетинтерфейс, где вы можете создавать проекты и код).Весь код, написанный в этом интерфейсе, сохраняется непосредственно на Wallaby.Здесь оператор включения по умолчанию - #include <kipr/botball.h>, поэтому я предполагаю, что в botball.h (который находится в хранилище Уоллаби) объединены все эти 60 библиотек.Я получил папку include, которую я использую от GitHub .Эта ссылка была предоставлена ​​мне одним из организаторов Botball.Итак, главное, что я пытаюсь загрузить библиотеку, это то, что я могу писать и успешно компилировать код, даже когда я не подключен к Уоллаби.Надеюсь, что это обеспечивает некоторый соответствующий контекст.

Спасибо за ваши ответы!

Ответы [ 2 ]

0 голосов
/ 10 марта 2019

Что бы я сделал, это

Создание (возможно, с помощью инструментов сценариев или специальной программы) файла "all.h", который включает все остальные заголовочные файлы

#ifndef ALL_INCLUDED
#define ALL_INCLUDED
#include "accel.h"
#include "bccel.h"
//...
#include "zccel.h"
#endif

Включите "all.h" в ваш основной файл

#include "../code/include/all.h"

Вы можете создавать "all.h" автоматически каждый раз, когда создаете код.

0 голосов
/ 10 марта 2019

CLion - это IDE для Clang и GCC.Этим компиляторам поручено искать пути для включаемых файлов, указав -I<path> аргументы командной строки.Может быть указано любое число, и они ищутся в указанном порядке, и первое найденное совпадение - это файл, который включается.

Я не знаком с CLion специально, но, без сомнения, у него есть диалог где-то, где выможет установить пути поиска файла заголовка.


Редактировать: Кажется, что CLion может не сделать это так просто.Я понимаю, что вы должны добавить через CMake: https://cmake.org/cmake/help/v3.0/command/include_directories.html#command:include_directories,, но после этого IDE не распознает заголовок в редакторе и предупредит вас о нераспознанных файлах и не предоставит возможности для понимания кода.Я верю, что он все равно будет строить.

...