2015-03-24 1 views
3

que je reçois l'erreur ci-dessous dans Eclipse CDT en utilisant l'option Fonction Outils de profilage des graphes d'appelserreur Eclipse CDT en utilisant la fonction Option d'outils de profilage graphe d'appels

/tmp/org.eclipse.linuxtools.profiling.launch14272008124383356638983332386495.sh: 2: /tmp/org.eclipse.linuxtools.profiling.launch14272008124383356638983332386495.sh: Syntax error: Bad fd number 

Je googlé cette erreur. J'ai trouvé que le problème est avec >&. Une réponse a montré que le problème peut être résolu en le remplaçant par &>. Mais comment faire cela parce que éclipse crée le fichier ??

Voici l'exemple de code C sur lequel j'utilise des outils de profilage. Mais j'ai un énorme code sur lequel je suis confronté au même problème.

/* 
============================================================================ 
Name  : hello.c 
Version  : 
Copyright : Your copyright notice 
Description : Hello World in C, Ansi-style 
============================================================================ 
*/ 

#include <stdio.h> 
#include <stdlib.h> 

void abc() { 

} 

int main(void) { 
    puts("!!!Hello World!!!"); /* prints !!!Hello World!!! */ 
    abc(); 
    return EXIT_SUCCESS; 
} 

est en dessous du script shell qui est mentionné dans l'erreur

#!/bin/sh 
exec stap -c '/home/tejus/workspaces/testC/hello/Debug/hello' /home/tejus/workspaces/testC/.metadata/.plugins/org.eclipse.linuxtools.callgraph.core/callgraphGen.stp --runtime=dyninst /home/tejus/workspaces/testC/hello/Debug/hello >& /home/tejus/workspaces/testC/.metadata/.plugins/org.eclipse.linuxtools.callgraph.core/callgraph.out 

Je suis face même question dans les deux code C/C++.

Répondre

0

Ceci est probablement dû aux différents styles dans bash et sh. Essayez ceci: renommez l'ancien lien de/bin/sh en bash et créez un nouveau lien de/bin/sh vers bash.

cd /bin 
sudo mv sh sh_orig 
sudo ln -s /bin/bash sh