hmm, als ich mein test-programm mit gcc -g -o test test.c kompiliert hab, konnte er keine debug-Informationen finden. Erst als ich das ganze statisch kompiliert hab (gcc -g -static -o test test.c), hat es funktioniert.
Vielleicht wäre es besser, die Fehlermeldung ein bischen konkreter zu halten. (mein System: gcc-3.3.1, glibc-2.3.2, linux 2.4.22)
Ansonsten finde ich das System sehr gut, mal sehen wie es mit komplexeren Programmen zurechtkommt.
1. warum sollte es dann funktionieren, wenn ich es statisch linke 2. die werden ihr programm schon so geschrieben haben, dass nicht irgendwelche namensgleiche Programme im PATH untersucht werden 3. ich hab das natürlich erst auch nicht für unmöglich gehalten, und irgendein Programm mit kryptischen Namen eingeschickt, wobei das selbe Symptom auftrat
bei mir ist test übrigens in /bin, warum auch nicht?
Von Christophorus am Fr, 21. November 2003 um 07:58 #
Was hat denn das eine, nämlich das Release eines solchen Programmes, mit dem anderen, dem Ende von Microsoft Produkten zu tun? Woher haben eigentlich einige Linux-User immer dieses das-Ende-von-Microsoft-ist-nahe Gedankengut? Ich mag Microsoft-Produkte auch nicht mehr und benutze seit über einem Jahr nur noch Linux, aber ich verstehe nicht, warum man immer so den Tod bestimmter Firmen herbeisehnen muss. Es reicht doch schon, wenn sich die aus Redmond(also M$-ler) endlich nicht mehr ihrer Monopolstellung und etwas unsauber anmutender Geschäftspraktiken (meine persönliche Meinung!) bedienen würden und einen fairen Konkurrenzkampf zulassen würden. So wie das in der Wirtschaft sein sollte...
> Es reicht doch schon, wenn sich die aus Redmond(also M$-ler) endlich nicht mehr ihrer Monopolstellung und etwas unsauber > anmutender Geschäftspraktiken (meine persönliche Meinung!) bedienen würden und einen fairen Konkurrenzkampf zulassen > würden. > So wie das in der Wirtschaft sein sollte...
Fairness und Kapitalismus? Die beiden Sachen schliessen sich grundsätzlich aus.
Komm schon, das ist etwas unfair. Nur weil in der alten DDR alle ihr Geld durch dem Kommunismus verdient haben, heisst das doch auch nicht, dass ihn alle toll finden mussten, oder ?
meine abneigung gegenüber M$ besteht schon seit win 3.1 .. sie änderte sich nich zu novell zeiten und auch nicht während meiner jahrelangen os/2 ausflüge. und seit jahren mit linux ist klar, das M$ zu überhaupt nichts eine wirkliche alternative darstellt. weder in der programmierten qualität ihrer software, noch in ihrer marktpolitik.
Du testest dein Programm -> es funktioniert. der Test hat aber nicht alle möglichen Fälle abgedeckt. DAher funktioniert dergleiche test mit anderern Daten nicht zwangläufig.
Ich nehme An Igor maht ne testüberdeckung und schaut beim ausführen ob alle möglichen Pfade der Befehlsführung benutzt werden und wo sie sich unterscheiden.
Was soll das den sein? Eingabeüberdeckung oder was?
alle möglichen Pfade
Dir ist schon bewusst, dass man es dabei im günstigsten Fall mit exponentiellem Aufwand zu tun hat und es meist nicht einmal eine endliche Zahl von Pfaden gibt? So kann es jedenfalls nicht gehen.
Von Andreas Groß am Fr, 21. November 2003 um 12:43 #
Du brauchst nicht ein funktionierendes und ein nicht funktionierendes Programm, Du brauchst ein Programm und einen Input für das Programm, so dass das Programm funktioniert, sowie einen Input, wo ein Fehler auftritt. Igor manipuliert dann einfach den Input so lange, bis er eine minimale Änderung raushat, bei der der Fehler dann auftritt. Ausserdem wird das Programm selbst untersucht und es wird herausgefunden, was sich denn so alles ändert, wenn man dieses minimalen Fehlerinput gegenüber einem korrekten Programmlauf hat und es wird eine Ursache-Wirkugnskette ausgegeben. (Das war jetzt ganz grob. Ich glaube so ganz verstanden hab' ich's selber nicht *g*)
Die werden das wohl in ner chroot-Umgebung laufen und diese Umgebung nach jedem Vorgang aufräumen lassen. Sollte nicht wirklich ein Problem darstellen.
gcc -g -o test test.c
kompiliert hab, konnte er keine debug-Informationen
finden.
Erst als ich das ganze statisch kompiliert hab
(gcc -g -static -o test test.c), hat es funktioniert.
Vielleicht wäre es besser, die Fehlermeldung ein
bischen konkreter zu halten.
(mein System: gcc-3.3.1, glibc-2.3.2, linux 2.4.22)
Ansonsten finde ich das System sehr gut, mal sehen wie
es mit komplexeren Programmen zurechtkommt.
Weil es unter Unix ein Program test schon gibt, nämlich unter
/usr/bin/test.
Siehe man test.
1. warum sollte es dann funktionieren, wenn ich es
statisch linke
2. die werden ihr programm schon so geschrieben haben,
dass nicht irgendwelche namensgleiche Programme im PATH
untersucht werden
3. ich hab das natürlich erst auch nicht für unmöglich
gehalten, und irgendein Programm mit kryptischen Namen
eingeschickt, wobei das selbe Symptom auftrat
bei mir ist test übrigens in /bin, warum auch nicht?
Woher haben eigentlich einige Linux-User immer dieses das-Ende-von-Microsoft-ist-nahe Gedankengut?
Ich mag Microsoft-Produkte auch nicht mehr und benutze seit über einem Jahr nur noch Linux, aber ich verstehe nicht, warum man immer so den Tod bestimmter Firmen herbeisehnen muss.
Es reicht doch schon, wenn sich die aus Redmond(also M$-ler) endlich nicht mehr ihrer Monopolstellung und etwas unsauber anmutender Geschäftspraktiken (meine persönliche Meinung!) bedienen würden und einen fairen Konkurrenzkampf zulassen würden.
So wie das in der Wirtschaft sein sollte...
> würden.
> So wie das in der Wirtschaft sein sollte...
Fairness und Kapitalismus?
Die beiden Sachen schliessen sich grundsätzlich aus.
Max
Du testest dein Programm -> es funktioniert. der Test hat aber nicht alle möglichen Fälle abgedeckt.
DAher funktioniert dergleiche test mit anderern Daten nicht zwangläufig.
Ich nehme An Igor maht ne testüberdeckung und schaut beim ausführen ob alle möglichen Pfade
der Befehlsführung benutzt werden und wo sie sich unterscheiden.
MfG MArtin
Was soll das den sein? Eingabeüberdeckung oder was?
alle möglichen Pfade
Dir ist schon bewusst, dass man es dabei im günstigsten Fall mit exponentiellem Aufwand zu tun hat und es meist nicht einmal eine endliche Zahl von Pfaden gibt? So kann es jedenfalls nicht gehen.
Schönen Tag noch...
ihminen
Igor manipuliert dann einfach den Input so lange, bis er eine minimale Änderung raushat, bei der der Fehler dann auftritt. Ausserdem wird das Programm selbst untersucht und es wird herausgefunden, was sich denn so alles ändert, wenn man dieses minimalen Fehlerinput gegenüber einem korrekten Programmlauf hat und es wird eine Ursache-Wirkugnskette ausgegeben.
(Das war jetzt ganz grob. Ich glaube so ganz verstanden hab' ich's selber nicht *g*)