#1 Le 25/02/2013, à 15:36
- MacArony
Problème avec codeblocks et le protocole modbus
Bonsoir,
Voilà je suis en train d'essayer d'établir une communication en modbus sur un Schneider M340 via TCP/IP
J'ai installé la libmodbus et libmodbus-dev (du depot) sur ubuntu 12.04 et même en donnant modbus dans le linker de codeblocks ça ne fonctionne pas.
J'ai essayé sur une debian avec la lib compilé du site http://www.libmodbus.org, même soucis.
Pourtant j'ai bien mis #include <modbus.h> comme c'est indiqué dans la documentation sur le site.
j'ai l'erreur suivante "erreur fatale : modbus.h : aucun dossier ou fichier de ce type" quelle que soit les options du linker (modbus ou libmodbus)
Merci d'avance pour votre aide.
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#2 Le 25/02/2013, à 16:00
- compte supprimé
Re : Problème avec codeblocks et le protocole modbus
Ben je viens testé avec codeblocks, pas de problèmes ça compile , dans linker settings : `pkg-config --libs libmodbus` et dans compiler settings et other options : `pkg-config --cflags libmodbus` .(un makefile standart évite ce genre de problème , surtout si le projet nest pas énorme)
#3 Le 25/02/2013, à 16:20
- MacArony
Re : Problème avec codeblocks et le protocole modbus
là il me dit quand je mets pkg-config --cflags libmodbus dans le compiler settings / other options : gcc :erreur : unrecognized option '--cflags'
et ensuite libmodbus : aucun dossier ou fichier de ce type.
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#4 Le 25/02/2013, à 18:17
- compte supprimé
Re : Problème avec codeblocks et le protocole modbus
T'as bien enlevé la lib que tu avais linké à la main? ce sera plus propre; et tu as bien mis : `pkg-config --cflags libmodbus` sans oublier les quotes ? pareille pour --libs
Et le mieux c'est de choisir le projet (par défaut il te met sur debug) comme ça, ces options sont valables aussi pour la release.
Avec le paquet des dépôts il n'y a pas de problèmes.
Dernière modification par sogyam (Le 25/02/2013, à 18:36)
#5 Le 26/02/2013, à 09:01
- MacArony
Re : Problème avec codeblocks et le protocole modbus
oui j'ai enlevé et j'ai mis ce que tu as écrit, mais il renvoi toujours une erreur "gcc: erreur fatale: pas de fichier à l'entrée compilation terminée." Et dans le fichier Build log il utilise la commande
gcc -Wall 'pkg-config --cflags libmodbus' -g -c /home/user/projet/modbus/main.c -o obj/debug/main.o
pour le compiler.
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#6 Le 26/02/2013, à 09:29
- MacArony
Re : Problème avec codeblocks et le protocole modbus
en fait ce que tu m'as donné ça casse toute la compilation.
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#7 Le 26/02/2013, à 09:40
- MacArony
Re : Problème avec codeblocks et le protocole modbus
Il faut mettre `pkg-config --cflags --libs libmodbus` et là ça marche (a peu près)
edit : voila il faut mettre libmodbus dans le linker et `pkg-config --cflags --libs libmodbus` avec les quotes dans compiler settings > other option.
Dernière modification par MacArony (Le 26/02/2013, à 09:43)
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#8 Le 26/02/2013, à 10:33
- compte supprimé
Re : Problème avec codeblocks et le protocole modbus
je sais pas ce que tu as foutu, ce que je t'ai donné est la méthode standart et ça marche impec chez moi ... Et tout les projets codeblocks que j'ai vu, linkent comme ça !! mais bon si ça marche pour toi ...
nb: tiens le premier exemple d'utilisation d'une lib avec codeblocks, utilisant pkg-config, trouvé sur internet : wiki d'opencv
Faudrait pas induire des lecteurs du post en erreur, c'est tout.
Dernière modification par sogyam (Le 26/02/2013, à 10:52)
#9 Le 26/02/2013, à 11:36
- MacArony
Re : Problème avec codeblocks et le protocole modbus
ok
Mais la doc est claire :
#include <modbus.h>
cc `pkg-config --cflags --libs libmodbus` files
c'est écrit ici : http://libmodbus.org/site_media/html/libmodbus.html juste que je savais pas ce que voulais dire ce "cc" maintenant je sais
Linux was fast enough on this machine. But in street racing parlance, with PC-BSD I’m burning rubber in all four gears.
Lenovo Yoga L380 : Elementary 7.0
HP Proliant N54L : OpenMediaVault 6
Apple Mac Mini 2009 : Catalina
Hors ligne
#10 Le 26/02/2013, à 11:59
- compte supprimé
Re : Problème avec codeblocks et le protocole modbus
oui quand tu utilises gcc en ligne de commande, par ex :
gcc file.c -o mon_soft `pkg-config --cflags --libs libmodbus`
mais tu veux utiliser codeblocks,donc c'est différent !! et passer par le clicodrome ...
Dernière modification par sogyam (Le 26/02/2013, à 12:08)