Ich versuche, einige der Objektdateien zu verknüpfen, so dass ich Tests mit UnitTest ++ in der Codelite IDE schreiben kann. Mysteriös, die tutorial sagt nicht, wie man .o
Dateien von einem (anderen) Projekt benutzt. Wenn ich die Befehlszeile verwendete, zeigt this thread mir, wie das geht. Allerdings habe ich größere Schwierigkeiten im Codelite-Editor. Die angenommene Antwort in this other thread sagt "[i] in der IDE des CodeLite, dieses wird in der Optionsbox des Linkers hinzugefügt," jedoch finde ich nicht, dass das der Fall ist.Problem Verknüpfen von Objektdateien aus dem Projekt in Tests
Ich füge den Pfad zu diesen .o
Dateien in der Library Search Path
Stelle, und dann füge ich den Namen der einzelnen Dateien in der Libraries
Stelle direkt darunter. Wenn ich das tue, bekomme ich den /usr/bin/ld: cannot find -l<stuff>
Fehler. Wenn ich die Namen der spezifischen Dateien in der Library
Stelle weglasse, bekomme ich den undefined reference to
Fehler.
Muss ich das ursprüngliche Projekt als Bibliothek kompilieren, um dies zu umgehen? Oder gibt es eine Lösung, die ich nicht sehe? Die my_class_test.cpp
Datei, die ich ausführen möchten sieht ungefähr so aus:
#include <UnitTest++/UnitTest++.h>
#include "my_class.h"
SUITE(MyClassTest)
{
class MCFixture
{
public:
MyClass me;
MCFixture() : me("a", "b", "c") {};
};
TEST_FIXTURE(MCFixture, ConstructorTest)
{
CHECK_EQUAL(1.0, 1.0);
}
} //SUITE(MyClassTest)