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

C Discussion :

erreur fonction NC_NOWRITE


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2014
    Messages : 71
    Par défaut erreur fonction NC_NOWRITE
    Bonjour a vous,

    On m'a demandé de compiler un code et de l'executer dans le cadre d'un projet, seulement j'obtiens les lignes d'erreurs ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    AUXFunc.c: In function ‘ReadNetCDF’:
    AUXFunc.c:25: error: ‘NC_NOWRITE’ undeclared (first use in this function)
    AUXFunc.c:25: error: (Each undeclared identifier is reported only once
    AUXFunc.c:25: error: for each function it appears in.)
    AUXFunc.c:25: error: ‘NC_NOERR’ undeclared (first use in this function)
    AUXFunc.c: In function ‘ReadNetCDF_int’:
    AUXFunc.c:52: error: ‘NC_NOWRITE’ undeclared (first use in this function)
    AUXFunc.c:52: error: ‘NC_NOERR’ undeclared (first use in this function)
    make: *** [AUXFunc.o] Erreur 1
    L'endroit du code concerné étant :

    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
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    #include "AUXFunc.h"
     
    float max(float a, float b)
    {
    	return( a>=b? a : b );
    }
     
    float min(float a, float b)
    {
    	return ( a>=b? b : a );
    }
     
    void CheckMemAllocationError(void *InVar, const char *InVarName)
    {
    	if (InVar==NULL)
    	{
    		printf("Error Allocating Memory: %s\n",InVarName);
    		exit(-1);
    	}
    }
     
    void ReadNetCDF(float * InVar, char *InVarName, char *filePath)
    {
    	int ncid,varid;
    	if (nc_open(filePath,NC_NOWRITE,&ncid)!=NC_NOERR)
    	{
    		printf("\n Error: Can not open %s.nc.\n",InVarName);
    		exit(-1);
    	}
    	else
    	{
    		if ( nc_inq_varid(ncid,InVarName,&varid)!=NC_NOERR )
    		{
    			printf("\n Error: Can not find %s variable in the file.\n",InVarName);
    			exit(-1);
    		}
    		else
    		{
    			printf("Reading %s:\n",InVarName);
    			if(nc_get_var_float(ncid,varid,InVar)!=NC_NOERR)
    			{
    				printf("\n Fatal Error: Can not read %s.\n",InVarName);
    				exit(-1);
    			}			
    		}
    	}		
    }
    Pourriez-vous m'eclairer sur ce qui pose problème?
    Merci d'avance !

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 398
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 398
    Par défaut
    Je pense que ton compilo est mal configuré, car sinon tu devrais aussi avoir les warnings "implicit declaration of nc_open" pour ne pas avoir inclus <netcdf.h>...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2014
    Messages : 71
    Par défaut
    Si, la librairie est bien incluse dans le header :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    #include <stdio.h>
    #include <stdlib.h>
    #include <netcdf.h>

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2014
    Messages : 71
    Par défaut
    Au fait c'était tout bête, le chemin pour les librairies spécifié dans le makefile était incorrect ... j'ai corrigé ça, et j'ai du coup moins d'erreurs :
    La seule qui reste est la suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    undefined reference to `__ctype_b'

    Je me suis alors renseigné pour savoir ce que c'était (apparement une histoire de patchs), mais je n'arrive pas à avancer plus avec les résultats google ... quelqu'un sait ce à quoi cela est dû et comment régler le problème?

    Merci d'avance

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2014
    Messages : 71
    Par défaut
    J'ai aussi essayé d'ajouter le patch au main (je ne sais pas si c'est ce qu'il faut faire) mais on m'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    patch: **** Only garbage was found in the patch input.

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/11/2006, 21h10
  2. [Forum] Erreur fonction mysql_result()
    Par reda93 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 01/08/2006, 10h13
  3. Réponses: 2
    Dernier message: 01/06/2006, 14h54
  4. [DOM XML] Erreur fonction load() d'un objet dom??
    Par ribrok dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 04/10/2005, 11h43
  5. méssage d'erreur fonction d'agrégat
    Par developpeur_mehdi dans le forum Langage SQL
    Réponses: 4
    Dernier message: 10/03/2004, 12h42

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