0 Daumen
367 Aufrufe

leider habe ich ein Problem mit dieser Aufgabe, muss diese allerdings schaffen.

Alle meine Eingaben sind leider falsch. :( Wäre über Hilfe sehr dankbar. :)


Gegeben seien die Dateien tests.c, program.c, program.h und main.c. In der main.c Datei ist eine Main-Funktion enthalten, in der program.c nicht. In tests.c sind Unittests. Ergänzen Sie den folgenden Konsolenbefehl um die Tests so zu kompilieren, dass sie anschließend ausführbar sind. Geben Sie anschließend den Programmaufruf an.

Kompilieren:

gcc HieristdieersteLücke
-o program_tests -Wall -std=c99 -g -fprofile-arcs -ftest-coverage -pthread -lcheck -lrt -lm -lsubunit

Ausführen:
HieristdiezweiteLücke

von

2 Antworten

0 Daumen
 
Beste Antwort
Alle meine Eingaben sind leider falsch.

Was hast Du denn bereits versucht?

Weißt Du, was der Befehl gcc macht? Du solltest damit das .c-File kompilieren, das die Main enthält. Bei Bedarf weitere .c-Files anfügen (z. B. die Unit-Tests ... achte auf eventuelle Fehlermeldungen).

Ausführen:
HieristdiezweiteLücke

Hier rufst Du den erzeugten Unit-Test auf (der Dateiname steht hinter dem -o (Output)).

von

Danke für die Antwort,

also ich habe z. B. folgendes in die Lücken eingegeben:


program_tests main.c program.c tests.c
Ausführen:
./program_tests

Außerdem habe ich es auch so versucht, und die main.c weggelassen:

 program_tests program.c tests.c
Ausführen:
./program_tests

Darüber hinaus habe ich auch die Reihenfolge immer mal geändert (mit und ohne main.c).
Leider wird mir von unserem System immer angezeigt, dass es falsch wäre.

Nachtrag:

habe es doch geschafft :D

Wenn ich

tests.c program.c 

in die erste Lücke schreibe, wird es angenommen.

Sehr schön :-)

0 Daumen

Der Basis-Befehl könnte so aussehen

gcc -o program_tests main.c program.c tests.c

oder als Befehlsfolge

gcc -c main.c
gcc -c program.c
gcc -c tests.c
gcc -o program_tests main.o program.o tests.o


Weitere Optionen können gleich nach gcc eingefügt werden, z.B.

gcc -Wall -o program_tests main.c program.c tests.c

Der Programmaufruf heisst dann

program_tests

von

Danke für die Antwort,

mir wird leider alles als falsch angegeben.

Habe z. B Folgendes in die Lücken eingegeben:

program_tests main.c program.c tests.c
Ausführen:
./program_tests

Außerdem habe ich es auch so versucht, und die main.c weggelassen:

program_tests program.c tests.c
Ausführen:
./program_tests

Weiter habe ich auch die Reihenfolge (mit und ohne main.c) geändert.

Ein anderes Problem?

Stell deine Frage

Willkommen bei der Stacklounge! Stell deine Frage einfach und kostenlos

x
Made by a lovely community