[RESOLU] syntaxe #include

Bjr,
J'ai quelques problèmes avec la syntaxe de la directive #include :

#include <key.h> //ok fait référence au dossier key

et

#include "key.h"  //ok fait référence aux fichiers locaux du programme

mais comment faire si on veut utiliser :

  • un sous répertoire au répertoire où se trouve le programme,
  • un répertoire parent au répertoire où se trouve le programme.
    Pour l'instant malgré les nombreux essais, le compilateur ne fait que de m'insulter.
    @+

Salut,

Il me semble que c'est comme ceci :

#include "path/relatif/key.h"

Enfin, c'est possible qu'il cherche dans le dossier librairies au lieu de charcher dans le dossier du programme avec cette syntaxe

icare:

  • un répertoire parent au répertoire où se trouve le programme.

Ceci n'est pas possible par contre

Pour un répertoire parent, essayer ".."

<> la recherche se fait dans les répertoires définis pour la chaîne de compilation
"" le chemin est relatif par rapport à l'emplacement des sources.
Donc pour un sous répertoire /repertoire/repertoire/fichier.h
Pour un répertoire parent ../repertoire/repertoire/fichier.h (mettre autant de ../ que nécessaire pour remonter dans l'arborescence.

Bsr,
Merci pour vos suggestions mais rien n'y fait.
Ça ne marche pas =(

Salut,

Pas mieux que fdufnews :slight_smile:
Quelle est l'arborescence de ton projet ? Quelles inclusions tentes-tu de faire ?

Bjr,
Je souhaite faire l'arborescence suivante :

..../dossier_fichier_arduino/
         fichier_prog.ino
         /dossier_lib_local
             fichier_ex.h
             fichier_ex.cpp

ou bien

..../dossier_fichier_arduino/
         fichier_prog.ino
..../dossier_lib_local
         fichier_ex.h
         fichier_ex.cpp

La seule chose que j'arrive à faire est :

..../dossier_fichier_arduino/
         fichier_prog.ino
         fichier_ex.h
         fichier_ex.cpp

Si vous avez une solution, je suis preneur
@+

Je viens de regarder un peu.
Je pense que cela ne peut pas fonctionner. C'est le principe retenu par les développeurs de l'IDE qui pose problème. Le source est modifié et compilé dans un répertoire temporaire. Par conséquent lors de la compilation le chemin relatif vers les include n'est plus valide. Si on met le chemin en absolu c'est lors de l'édition de lien qu'il y a un problème car les sources dans le chemin de l'inclusion ne sont pas compilés.
A mon avis le plus simple serait que tu places tes librairies dans le répertoire sketchbook/libraires qui lui est correctement géré par la chaîne de compilation et l'édition de lien.
Ou alors il faut que tu fasses ton fichier make et que tu compiles en ligne de commande.

Bonjour,

Avec l'ide arduino les #includes sont soumis à des contraintes très stricts.

  • Les librairies doivent être dans un sous dossier du dossier "librairies".
  • L'ide scan chaque librairie et fait une liste fichier .h -> dossier automatique au lancement.
    Par conséquent tu n'inclut jamais réellement un fichier dans un dossier particulier, c'est l'ide qui détecte tes include <xxx.h> et ajoute les dossier des librairies qui correspondent.
  • Les sous dossier ne sont pas géré par l'ide (sauf un dont je me rappelle plus le nom).

Ceci vaut pour les .h comme les .c .cpp, pas de sous dossier possible, même dans le dossier du .ino.

Bsr,
Merci pour toutes ces précisions, je vais rester avec la solution qui fonctionne.
Je laisse tous mes ???.h et ???.cpp dans le même dossier que truc.ino et je fais les #include "???.h"
Le but étant de ne pas être tributaire des librairies non de base d'Arduino.
Merci à tous

je peux plus de c'est bibliothèque de *****

je sais pas si il faut crée un autre topic ou non donc dans le doute je met ici

le message Plusieurs bibliothèque trouvées pour "LiquidCrystal.h"

j'ai toute essayer jusqu'a désinstaller toute les bibliothèque et instaler que LiquidCrystal.h j'ai suprimer tous les .h il me dit qui ne trouve pas je met que 1 il me remet Plusieurs bibliothèque trouvées pour "LiquidCrystal.h"

je peux plus je suis au bout de ma vie avec sa aider moi :cry:

Un, tu déterres un sujet. Vieux de 7 ans, juste pour passer tes nerfs.
Au moment de poster tu as eu un message d'alerte en rouge que tu aurais du respecter..

Deux, les autres y arrivent c'est donc que le problème ne vient pas de l'IDE mais de ton coté.
De nombreux aidants t'ont expliqué plusieurs fois la même chose, relis ce qu'il t'a été dit, si tu ne les écoutes pas ils vont se lasser et ne plus répondre à tes questions.
Supprime COMPLETEMENT TOUTES les anciennes installations, ce doit être un tel foutoir avec des tentatives désespérées et faite au hazard qu'AMHA toute réparation est perdue d'avance.

Recommence une installation propre en partant de zéro et en appliquant tout ce qu'il t'a été dit.
Et cela fonctionnera sans avoir besoin de jurer.

Et gardes bien en tête qu'une bibliothèque est très raement limitée à un fichier *.h à inclure, une bibliothèque c'est un (parfois plusieurs) fichiers h et un ou plusieurs fichiers cpp.
Dire au compilateur d'inclure un fichier h c'est lui dire qu'il lui faut compiler aussi tous les fichiers cpp associés au fichier h.
Ce n'est pas parce que l'IDE fait ce "complément" automatiquement qu'il faut l'ignorer, le connnaître évite de faire n'importe quoi.

C'est pour cette raison que les fichiers de bibliothèques que tu ajoutes doivent OBLIGATOIREMENT être installés là où on te l'a dit et pas ailleurs et surtout pas en double.

j'écoute mes je suis nul je comprend pas tous j'ai désinstaller tous ce qui a un raport avec arduino méme IDE j'ai tous rinstaler j'ai supprimer tous les librarie


C:\Users\killian\Documents\Arduino\libraries
et dans le doute celuis la aussi
C:\Program Files (x86)\Arduino\libraries


(j'ai aussi fait une recherche sur mon ordi de si il restais une bibliothèque en rapport ou non avec le LiquidCrystal)

je re test il ne trouve pas les bibliothèque (donc sa cest bon)

ensuite je vais je la réinstalle avec le gestionnaire de bibliothèque (il ce met bien dans
C:\Users\killian\Documents\Arduino\libraries

il me remet le message Plusieurs bibliothèque trouvées pour "LiquidCrystal.h"

dans le dossier il y a que 1 bibliothèque et que un .h le seul .h il me dit quil ne le trouve plus donc il y en a bien que 1??

(quand cest un vieux sujet comme sa il vos mieux recrée un nouveau ??)

Si tu actives l'affichage des messages détaillés tu verras le chemin vers les répertoires où le compilateur a trouvé les librairies.

Utilisation de la bibliothèque Wire version 1.0 dans le dossier: C:\Program Files
Utilisation de la bibliothèque RTClib version 1.3.3 dans le dossier: C:\Users\killian\Documents\Arduino\libraries\RTClib

Utilisation de la bibliothèque LiquidCrystal version 1.0.7 dans le dossier: C:\Program Files

je vien de regarder met il y a rien dans C:\Program Files qui a un raport avec arduino ou librerie

Bonjour,

68tjs:
Un, tu déterres un sujet. Vieux de 7 ans, juste pour passer tes nerfs.
Au moment de poster tu as eu un message d'alerte en rouge que tu aurais du respecter..

Pas sympa, 68tjs, de me traiter de vieux. :grin:

je met le message complet en 2 fois sa rentre pas sinon

Arduino : 1.8.11 (Windows 10), Carte : "Arduino Mega or Mega 2560, ATmega2560 (Mega 2560)"

C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\killian\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10811 -build-path C:\Users\killian\AppData\Local\Temp\arduino_build_559534 -warnings=none -build-cache C:\Users\killian\AppData\Local\Temp\arduino_cache_23946 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude-6.3.0-arduino17.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino5.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA-1.3.0.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose C:\Users\killian\Desktop\arduino\lcd\lcd.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\killian\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10811 -build-path C:\Users\killian\AppData\Local\Temp\arduino_build_559534 -warnings=none -build-cache C:\Users\killian\AppData\Local\Temp\arduino_cache_23946 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avrdude.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avrdude-6.3.0-arduino17.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.avr-gcc-7.3.0-atmel3.6.1-arduino5.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -prefs=runtime.tools.arduinoOTA-1.3.0.path=C:\Program Files (x86)\Arduino\hardware\tools\avr -verbose C:\Users\killian\Desktop\arduino\lcd\lcd.ino
Using board 'mega' from platform in folder: C:\Program
Using core 'arduino' from platform in folder: C:\Program
Detecting libraries used...
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o nul
Alternatives for Wire.h: [Wire@1.0]
ResolveLibrary(Wire.h)
  -> candidates: [Wire@1.0]
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o nul
Alternatives for RTClib.h: [RTClib@1.3.3]
ResolveLibrary(RTClib.h)
  -> candidates: [RTClib@1.3.3]
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o nul
Alternatives for LiquidCrystal.h: [LiquidCrystal@1.0.7]
ResolveLibrary(LiquidCrystal.h)
-> candidates: [LiquidCrystal@1.0.7]
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o nul
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src\\Wire.cpp" -o nul
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src\\utility\\twi.c" -o nul
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib\\RTClib.cpp" -o nul
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src\\LiquidCrystal.cpp" -o nul
Generating function prototypes...
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\preproc\\ctags_target_for_gcc_minus_e.cpp"
"C:\\Program Files (x86)\\Arduino\\tools-builder\\ctags\\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\preproc\\ctags_target_for_gcc_minus_e.cpp"
Compilation du croquis...
"C:\\Program Files (x86)\\Arduino\\hardware\\tools\\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -Wno-error=narrowing -MMD -flto -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10811 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\cores\\arduino" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\variants\\mega" "-IC:\\Program Files (x86)\\Arduino\\hardware\\arduino\\avr\\libraries\\Wire\\src" "-IC:\\Users\\killian\\Documents\\Arduino\\libraries\\RTClib" "-IC:\\Program Files (x86)\\Arduino\\libraries\\LiquidCrystal\\src" "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp" -o "C:\\Users\\killian\\AppData\\Local\\Temp\\arduino_build_559534\\sketch\\lcd.ino.cpp.o"
C:\Users\killian\Desktop\arduino\lcd\lcd.ino: In function 'void loop()':

lcd:36:4: error: 'setCursor' was not declared in this scope

    setCursor(15,1)

    ^~~~~~~~~

C:\Users\killian\Desktop\arduino\lcd\lcd.ino:36:4: note: suggested alternative: 'strerror'

    setCursor(15,1)

    ^~~~~~~~~

    strerror

Utilisation de la bibliothèque Wire version 1.0 dans le dossier: C:\Program Files
Utilisation de la bibliothèque RTClib version 1.3.3 dans le dossier: C:\Users\killian\Documents\Arduino\libraries\RTClib 
Utilisation de la bibliothèque LiquidCrystal version 1.0.7 dans le dossier: C:\Program Files
exit status 1

ce qui est étrange j'ai 2 setCursor dans mon code quand je les enléve sa marche il me met plusrien et il le téléverse normalement

quand c'est un vieux sujet comme sa il vos mieux recrée un nouveau ??

Oui parce qu'il est fort probable que les auteurs de sujets antédiluviens ne fréquentent plus ce forum.

Tu as la chance Icare, qui n'est ni vieux ni antédiluvien :grin:, est toujours fidèle au poste.

Mais même si tu ne maîtrise pas encore l'IDE tu ne peux que constater que ton problème n'a rien à voir avec la question initiale.

De la nécessité de lire les messages d'erreur correctement.
L'appel à la librairie LiquidCrystal ne pose aucun problème. Le compilateur t'indique bien qu'il a trouvé une et une seule librairie

Alternatives for LiquidCrystal.h: [LiquidCrystal@1.0.7]
ResolveLibrary(LiquidCrystal.h)
-> candidates: [LiquidCrystal@1.0.7]

Par contre l'erreur porte sur

C:\Users\killian\Desktop\arduino\lcd\lcd.ino: In function 'void loop()':

lcd:36:4: error: 'setCursor' was not declared in this scope

setCursor(15,1)

Tu invoques une méthode de LiquidCrystal sans mettre le nom de l'instance.
Tu ne donnes pas ton code donc on ne peut que supposer que tu as nommé l'instance lcd (ou LCD) et que la ligne en question devrait être quelque chose comme:

lcd.setCursor(15,1)