Библиотека в 2 местах, ошибка компиляции

Тема в разделе "Arduino & Shields", создана пользователем Den Kiva, 17 ноя 2019.

  1. Den Kiva

    Den Kiva Нерд

    Добрый день!
    При скачивании и подключении различных библиотек ( в частности DHT.h )
    появляется ошибка при компиляции. см. прикрепленное фото.
    Устанавливаю при скачивании библиотеки в папку C:\Program Files (x86)\Arduino\libraries
    Но.....
    При подключении библиотеки через zip ..... ставиться в C:\Users\User\Documents\Arduino\libraries
    Подчас они сами автоматом дублируются из:
    C:\Program Files (x86)\Arduino\libraries
    в
    C:\Users\User\Documents\Arduino\libraries

    То есть два места установка, они конфликтуют, попытки их где то оставить, где то удалить, не к чему не приводит.
    Раньше всегда ставил в C:\Program Files (x86)\Arduino\libraries и всё было хорошо.

    Прошу подсказать решение!
     

    Вложения:

  2. Tomasina

    Tomasina Сушитель лампочек Модератор

    Удалите из обеих мест, перезагрузите IDE, установите из zip
     
  3. Den Kiva

    Den Kiva Нерд

    Такой вопрос.
    Куда правильнее их ставить, если вручную?
    C:\Program Files (x86)\Arduino\libraries
    или
    C:\Users\User\Documents\Arduino\libraries



     
  4. NikitOS

    NikitOS Король шутов Администратор

    В любое место, где нет русских символов в пути.
    Можно хоть в корень диска, даже лучше будет
     
  5. Den Kiva

    Den Kiva Нерд

    Раньше просто закидывал библиотеку в папку C:\Program Files (x86)\Arduino\libraries и всё работало
    А сейчас Arduino IDE библиотеку ищет само по всему компьютеру ? так как при ошибках компиляции он выдаёт все схожие библиотеки найденные им в разных местах компьютера ( или изначально есть в настройках путь к библиотекам ? )

    Сейчас косяк основной такой и мне совершенно не ясный.
    Постоянно возникают ошибки с компиляцией и ругается на библиотеки.

    Например нашел КОД в интернете где надо подключить DHT.h
    Забиваю в поиске ( скачать DHT.h ) выходит GitHub, но название библиотеки и папки скачивается например avr-dht22-master или DHT_sensor_library, надо ли папку переименовать в DHT.h или оставить как есть ? в самой библиотека внутри есть DHT.h, но само название папки библиотеки иное. ( про пробелы и русские буквы понимаю )

    теперь распаковываю их в C:\Program Files (x86)\Arduino\libraries и при компиляции кода, он опять ругается на не возможность подключить этот самый DHT.h ( хотя проде скачал avr-dht22-master ) и в папке dht.h есть......

    И только если зайти в саму папку библиотеки и открываю примеры, то только отттуда совершенно другой ( схожий код из примера ) запускается....

    Но мне ведь надо подключить библиотеку, а не исправлять постоянно примеры, под мои задачи, потому что опять надо другие библиотеки подключить и они опять ругаются.

    До хера вопросов, но кроме как тут спросить, не пойму где читать изучать, статьи и их чтение, ютуб, не помогает.
     
    Последнее редактирование: 17 ноя 2019
  6. NikitOS

    NikitOS Король шутов Администратор

    Вам же сказали - удалите IDE и все что с ним связано, затем заново поставьте

    Библиотеки устанавливаются через IDE. Скетч -> Подключить библиотеку -> Добавить .zip библиотеку
    Там же есть менеджер библиотек, через который можно найти и скачать библиотеку. Только название написать
     
  7. Den Kiva

    Den Kiva Нерд

    Ок, повторю ряд вопросов.
    1. Как Arduino IDE определяет место для поиска библиотек?
    2. Есть ли настройки в IDE, где прописывается адреса расположения библиотек на компьютере?
    3. Например: надо подключить DHT.h скачали библиотеку "avr-dht22-master" внутри её есть DHT.h ( вопрос ) нужно ли наименовании самой папки библиотеки переименовать из avr-dht22-master переименовать в DHT.h ?
    На данный момент это не понятно, прошу разъяснить.

     
  8. NikitOS

    NikitOS Король шутов Администратор

    Библиотеки в папке libraries, которая находится в папке со скетчами. В настройках указывается.
    Имя архива любое, IDE ищет файлы в нем.
     
  9. b707

    b707 Гуру

    пути поиска библиотек прописаны в настройках. таких мест может быть не одно, а несколько (у меня на компе, например, таких папок пять)
    библиотеки переименовывать не нужно, имя папки библиотеки не имеет ни малейшего значения.
    Из этого, кстати, следует еще вот что - если в попытке "замаскировать" библиотеку от Ардуино ИДЕ вы переименуете папку с либой avr-dht22-master в что-то типа "Foobar" - ИДЕ все равно найдет внутри файл DHT.h и подгрузит библиотеку.
    "Замаскировать библиотеку" можно лишь одним путем - физически удалив ее из каталога библиотек.
     
  10. alexeyf

    alexeyf Нерд

    Здравствуйте По каакому пути сохраняет IDE ошибки при компиляции? Когда нажимаешь Сохранить
     
  11. Ariadna-on-Line

    Ariadna-on-Line Гуру

    А что это за настройки ? Где их можно посмотреть ?
    Буквально на днях задавал похожий вопрос. Тоже не находился файл библиотеки. Оказалось дело было в выбранной плате Ардуино (платформе). Для платы Digispark файл не находился, а для платы Uno - он - нашелся ! ))))
     
    Последнее редактирование: 18 дек 2023
  12. alexeyf

    alexeyf Нерд

    Имеются в виду не настройки библиотек а то место где они прописаны. Левый верхний угол Файл —> настройки —> в верхней строке С:\ user\ ….. и так далее
     
  13. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Там настройка расположения папки скетчей, а не библиотек.
     
  14. alexeyf

    alexeyf Нерд

    По умолчанию c: \ user\ имя пользователя\ documenrs\\Arduino\ libraries
    У меня так Посмотрите , что у Вас зайдите по тому пути и найдете все папки библиотек
     
  15. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Где папки библиотек у меня - я и так знаю. Просто вы так уверенно утверждаете то - чего в моей версии (1.18.13) не наблюдается.
    Заодно вопрос - Есть ли смысл мне обновляться, например до версии 1.18.19 ? Есть там что-то реально более удобное ? ПС. До 2.ххх мне обновиться не удастся - она требует 64-бит.
     
  16. alexeyf

    alexeyf Нерд

    Вы не внимательны
    «У меня так Посмотрите , что у Вас зайдите по тому пути и найдете все папки библиотек»

    Вот у меня на 32 разрядной win Xp тоже 1.18.13 и все по аналогии. Что у Вас я не экстрасенс
     

    Вложения:

    • IMG_0137.jpeg
      IMG_0137.jpeg
      Размер файла:
      1,6 МБ
      Просмотров:
      42
  17. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Там находятся папки библиотек, но отнюдь не всех. Папка libraries существует еще минимум в 2-3х местах.
     
  18. alexeyf

    alexeyf Нерд

    Ну наконец то
     
  19. b707

    b707 Гуру

    Если Вы много работаете с разными платами - то есть, в .19 платы организованы в категории, а в .13 - все одним длиннющим списком. Если часто переключаете ИДЕ между, скажем, ЕСП32, СТМ32 и РП2040 - 19-ая значительно удобнее.
    Скорее всего есть и еще отличия, но это главное, что мне бросилось в глаза.