Das libgtest-dev-Paket scheint nur Header-Dateien auf dem System zu installieren, nicht jedoch die statischen und dynamischen Bibliotheken, die unter / usr / lib installiert werden sollten.
Ist es ein Bug?
Das libgtest-dev-Paket scheint nur Header-Dateien auf dem System zu installieren, nicht jedoch die statischen und dynamischen Bibliotheken, die unter / usr / lib installiert werden sollten.
Ist es ein Bug?
Antworten:
Ist es ein Bug?
Nein, es ist absichtlich:
gtest (1.6.0-1ubuntu2) genau; Dringlichkeit = niedrig * Stoppen Sie die Verteilung der statischen Bibliothek (obwohl sie noch erstellt wird, um gtest zu gewährleisten funktioniert). Upstream rät davon ab, die Bibliothek überhaupt zu versenden, nur die Quelle. (Siehe: http://code.google.com/p/googletest/wiki/FAQ) Der Debian-Betreuer plant, dies auch zu tun (siehe BTS: 639795); mach es in Ubuntu jetzt MIR-Anforderungen zu erfüllen.
cd / usr / src / gtest sudo cmake. sudo machen sudo mv libg * / usr / lib /
Bearbeiten:
Die Namen haben sich im Laufe der Jahre leicht geändert, obwohl der Prozess derselbe bleibt. In Ubuntu 17.04:
sudo apt-get install libgtest-dev
cd /usr/src/googletest/googletest
sudo mkdir build
cd build
sudo cmake ..
sudo make
sudo cp libgtest* /usr/lib/
cd ..
sudo rm -rf build
cd /usr/src/gtest && sudo cmake . && sudo make && sudo mv libg* /usr/lib/ && cd -
Um die Antwort von izx zu verbessern, hätte ich cmake folgendermaßen verwendet:
sudo cmake -DCMAKE_BUILD_TYPE=RELEASE .
und ich würde versuchen, ein Out-of-Source-Build:
cd /tmp
mkdir .build
cd .build
cmake -DCMAKE_BUILD_TYPE=RELEASE /usr/src/gtest/
make
sudo mv libg* /usr/lib/
Beachten Sie, dass die von Google empfohlene Methode darin besteht, dass Ihr vorhandenes Projekt den gtest-Quellcode einfügt.
Wenn Sie CMake verwenden, können Sie alternativ add_subdirectory
die mitgelieferte gtest-Quelle hinzufügen, libgtest-dev
da sie standardmäßig in das Verzeichnis aufgenommen wird /usr/src/googletest
.
Folgendes wird funktionieren
add_subdirectory(/usr/src/googletest gtest)
target_link_libraries(your_executable gtest)