Rechercher : dans
Par :

Erreur de segmentation, sous linux Gentoo

Dernière réponse le 21 mar 2009 à 19:25:47 Sawyer4, le 21 mar 2009 à 16:12:44 
 Signaler ce message aux modérateurs

Bonjour à tous,

J'ai enfin réussit à compiler mon programme sous linux, il tourne sous QT 4 ^^
Et donc ce midi je le lance : toutes les 50ms il liste les fichiers d'un répertoire dans une Qlist <QString> et il les traitent en fonction de leur contenu pour ensuite les supprimer. Les fichiers je les ajoutes moi même dans le répertoire avec les bons droits et users, et j'y écrit n'importe koi afin que le programme les signals comme illisible, l'indique dans le log et les supprimes.

Cependant dès lors que j'ajoute un fichier à l'intérieur du dossier, des fois il le traite et très souvent il m'indique une "Erreur de segmentation"

J'ai beaucoup cherché sur internet, du coté des allocations de mémoires mais rien n'y fait c'est pourquoi je demande votre aide ^^

Pour ceux qui peuvent m'aider je poste ma fonction ou ça coince selon moi à cause du "Remove" :

[quote]
/*TRAITEMENT */
void serveur::Traitement(){
int i=0;
QList <QString> ligne;
for(i=0;i<liste.size();i++){

//On recupere le fichier et on le traite
QFile file(RACINE+liste[i]);

if (file.open(QFile::ReadOnly)) {

QTextStream in(&file);
while ( !in.atEnd() ){
ligne << in.readLine();
}

file.close();

if(ligne[0] == "RENAME"){
if(!RENAME(RACINE_SITE+ligne[1], RACINE_SITE+ligne[2])){ COPY(RACINE+liste[i], RACINE+"erreur/"+liste[i]); addLog("Nom du fichier "+ligne[1]+" modifié échoué"); }else{ addLog("Nom du fichier "+ligne[1]+" modifié avec succés"); }
}

if(ligne[0] == "COPY"){
if(!COPY(RACINE_SITE+ligne[1], RACINE_SITE+ligne[2])){ addLog("COPIE de "+ligne[1]+" échouée"); }else{ addLog("COPIE de "+ligne[1]+" réussie"); }
}

if(ligne[0] == "BDD"){
if(!MysqlAction(ligne[1])){ addLog("::OK:: Requête Msql : "+ligne[1]); }else{ addLog(" ::ERROR:: Requête Msql : "+ligne[1]); addLog("Erreur :: "+QString(mysql_error(&mysql))); }
}

if(ligne[0] == "ENCODE"){
if(!FFmpeg(ligne[1])){ addLog("::OK:: Requete d'encodage Video : "+ligne[1]); }else{ addLog("::ERROR:: Requete d'encodage Video : "+ligne[1]); }
}

//Dans tous les cas on supprime le fichier
remove((RACINE+liste[i]).toStdString().c_str());
liste.removeAt(i);

}
if(ligne[0] != "RENAME" && ligne[0] != "COPY" && ligne[0] != "BDD" && ligne[0] != "ENCODE"){
addLog("Fichier "+liste[i]+" -- Illisible");
}

}

}
/quote

Merci d'avance à tous les lecteurs et à ceux qui m'aideront

Merci ^^, Cordialement Sawyer

Configuration: Windows XP
Firefox 3.0.3

Meilleures réponses pour « Erreur de segmentation, sous linux Gentoo » dans :
Linux – Gentoo – Affichage et gestion des Runlevels Voir Cette astuce présente une façon pour gérer les scripts d’initialisation et les runlevels sous Gentoo. La distribution Gentoo de Linux se compose de 4 niveaux principaux de runlevels : boot default nonetwork single Pour les manipuler, il est...
Linux – Gentoo - Installation et configuration de JAVA Voir Linux – Gentoo - Installation et configuration de JAVA La distribution Gentoo de linux propose une panoplie d’environnements JRE et JDK. Pour les installer il suffit de précéder comme suit Installation de la JDK Pour lancer l’installation il faut...
[Langage C] C/C++ Erreur de segmentation VoirQu'est ce qu'une erreur de segmentation Vous êtes en train de développer une application sous Linux en C/C++. Tout va bien, ça compile, les oiseaux chantent. Donc vous lancez votre application pour la tester. Et vous obtenez l'un de ces deux...
Linux - Gentoo - Installation et configuration de VSFTPD VoirVSFTPD est un serveur FTP simple d’installation et très facile à utiliser. Installation et mise en place Pour l’installer sous Gentoo, il faut lancer la commande : emerge vsftpd Une fois installé, il est possible de lancer le Daemon via...
Linux - Gentoo - Installation de Apache2/PHP VoirComme toutes les installations au niveau de Gentoo, Portage se chargera de l'installation des packages et la gestion dépendances. Installation d'Apache2 L'installation d'Apache2 démarrera avec l'exécution de la commande emerge apache Pour...
Linux - Le shell VoirIntroduction au shell L'interpréteur de commandes est l'interface entre l'utilisateur et le système d'exploitation, d'où son nom anglais «shell», qui signifie «coquille». Le shell est ainsi chargé de faire l'intermédiaire le système...
Linux - L'installation de logiciels VoirLes différents types d'archives Basiquement il existe plusieurs façons de récupérer une application fonctionnant sous Linux : Sous forme de paquetage RPM. Il s'agit d'un fichier portant l'extension .rpm permettant une installation automatique,...
Intranet - Installation de la distribution Linux Mandrake VoirPrésentation de l'installation Le serveur peut fonctionner avec n'importe quelle distribution de Linux, mais nous avons choisi d'utiliser la distribution Mandrake, qui a l'avantage d'être simple à installer et de comporter une multitude...

1

 Sawyer4, le 21 mar 2009 à 19:25:47

Re tous le monde,

En espérant avoir eu des visites ^^

Sur ceux j'ai résolu mon message, dont voici la réponse : http://www.siteduzero.com/...

Merci à tous, bonne journée et soirée

Répondre à Sawyer4
Collection CommentÇaMarche.net