IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Linux Discussion :

Compilation impossible -


Sujet :

Linux

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 139
    Points : 50
    Points
    50
    Par défaut Compilation impossible -
    Bonjour,

    J'essaye en vain de compiler un programme sous linux... Après de multiples recherches Google, je ne suis pas parvenu à trouver quelle bibliothèque est manquante !

    Voici mon Makefile
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    NAME=app_notify
     
    CC=gcc
    CFLAGS=$(shell ./cflags.sh)
     
    OSARCH=$(shell uname -s)
     
    ifeq ($(OSARCH),Darwin)
      CFLAGS+= -D__Darwin__
      SOLINK=-dynamic -bundle -undefined suppress -force_flat_namespace
      TESTLINK=-undefined suppress -force_flat_namespace
      MODULES_DIR=/Library/Asterisk/modules
    	CC=gcc -arch ppc -arch i386
    else
      SOLINK=-shared -Xlinker -x
      MODULES_DIR=/usr/lib/asterisk/modules
    endif
     
    RES=$(NAME).so
     
    app_notify.so : app_notify.o
    	$(CC) $(SOLINK) -o $@ $<
     
    all: $(RES) sampleClient
     
    clean:
    	rm -f $(NAME).o $(NAME).so notifyClient.o notifyClient sampleClient
     
    install: all
    	if [ -f $(NAME).so ]; then \
    		install -m 755 $(NAME).so $(MODULES_DIR) ; \
    	fi
     
    reload: install
    	asterisk -rx "unload ${RES}"
    	asterisk -rx "load ${RES}"
    Et les erreurs à la compilation
    usr/include/asterisk/channel.h:1362: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘attribute_pure’
    /usr/include/asterisk/channel.h:1379: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘attribute_const’
    /usr/include/asterisk/channel.h:1593: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
    /usr/include/asterisk/channel.h:1601: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
    /usr/include/asterisk/channel.h:1619: error: expected identifier or ‘(’ before ‘do’
    /usr/include/asterisk/channel.h:1619: error: expected declaration specifiers before ‘while’
    /usr/include/asterisk/channel.h:1642: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
    /usr/include/asterisk/channel.h:1669: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘{’ token
    In file included from app_notify.c:23:
    /usr/include/asterisk/pbx.h:70: error: storage class specified for parameter ‘ast_state_cb_type’
    /usr/include/asterisk/pbx.h:86: error: storage class specified for parameter ‘ast_switch_f’
    /usr/include/asterisk/pbx.h:94: error: expected specifier-qualifier-list before ‘ast_switch_f’
    /usr/include/asterisk/pbx.h:268: error: expected specifier-qualifier-list before ‘uint64_t’
    /usr/include/asterisk/pbx.h:357: error: expected declaration specifiers or ‘...’ before ‘ast_state_cb_type’
    /usr/include/asterisk/pbx.h:370: error: expected declaration specifiers or ‘...’ before ‘ast_state_cb_type’
    In file included from app_notify.c:24:
    /usr/include/asterisk/module.h:274: error: storage class specified for parameter ‘ast_module_info’
    In file included from /usr/include/errno.h:36,
    from app_notify.c:31:
    /usr/include/bits/errno.h:43: error: storage class specified for parameter ‘__errno_location’
    In file included from app_notify.c:31:
    /usr/include/errno.h:55: error: storage class specified for parameter ‘program_invocation_name’
    /usr/include/errno.h:55: error: storage class specified for parameter ‘program_invocation_short_name’
    /usr/include/errno.h:69: error: storage class specified for parameter ‘error_t’
    In file included from /usr/include/sys/socket.h:28,
    from app_notify.c:33:
    Il y a 300 lignes d'erreurs, je n'ai donc pas tout mis !

    Autres infos, je suis sous Debian 2.6.26-2-686.

    Merci d'avance pour votre aide.

    Guillaume.

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    dans le soft de ton programme, tu as un espace entre le main et la premiere accolade comme suit :

    au lieu de

  3. #3
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 925
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 925
    Points : 220 593
    Points
    220 593
    Billets dans le blog
    128
    Par défaut
    Bonjour,

    Pour nous donner plus d'indication, il faudrait que tu nous donnes les premières erreurs, et non les dernières :p
    Il doit te manquer un ';' ou une accolade fermante. Dans un fichier .h peut être. Vérifie que les struct on bien le ';' après l'accolade fermante ...
    Ou alors un problème de namespace...

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 388
    Points : 502
    Points
    502
    Par défaut
    Citation Envoyé par Ashin Voir le message
    dans le soft de ton programme, tu as un espace entre le main et la premiere accolade comme suit :

    au lieu de
    Il n'y a aucune difference entre ces deux syntaxes si? Le C ne prends pas en compte les espaces et les retours a la ligne.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Points : 376
    Points
    376
    Par défaut
    si sur certains compilos

  6. #6
    Membre émérite Avatar de nicolas.sitbon
    Profil pro
    Inscrit en
    Août 2007
    Messages
    2 015
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 2 015
    Points : 2 280
    Points
    2 280
    Par défaut
    Citation Envoyé par Ashin Voir le message
    si sur certains compilos
    Certainement pas, et s'il y en a un, ce n'est pas un compilateur C.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 388
    Points : 502
    Points
    502
    Par défaut
    Citation Envoyé par Ashin Voir le message
    si sur certains compilos
    L'indentation, les espaces, les retours chariots,... ne sont jamais pris en compte par un compilateur C tout ce qui l'intéresse c'est les accolades, les parenthèses et les points virgules, etc...

Discussions similaires

  1. [D7] mise à jour de composants => compilation impossible
    Par Magnus dans le forum Composants VCL
    Réponses: 6
    Dernier message: 27/09/2005, 15h53
  2. [D2005]Compilation impossible avec version Personnal
    Par fab56 dans le forum Delphi .NET
    Réponses: 4
    Dernier message: 16/08/2005, 20h10
  3. [servlet][debutant] compilation impossible
    Par omega dans le forum Servlets/JSP
    Réponses: 2
    Dernier message: 02/03/2004, 12h48
  4. [Débutant]Classe d'Authentification : compilation impossible
    Par acyclique dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 23/08/2003, 20h42
  5. Compilation impossible
    Par Michaël dans le forum GTK+ avec C & C++
    Réponses: 6
    Dernier message: 20/08/2003, 15h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo