Le paquetage libgtest-dev semble n'installer que les fichiers d'en-tête sur le système, mais pas les bibliothèques statiques et dynamiques à installer sous / usr / lib.
Est-ce un bug?
Le paquetage libgtest-dev semble n'installer que les fichiers d'en-tête sur le système, mais pas les bibliothèques statiques et dynamiques à installer sous / usr / lib.
Est-ce un bug?
Réponses:
Est-ce un bug?
Non, c'est délibéré:
gtest (1.6.0-1ubuntu2) précis; urgence = faible * Arrêtez de distribuer la bibliothèque statique (bien que vous la construisiez toujours, pour assurer gtest travaux). Upstream recommande de ne pas expédier la bibliothèque, mais uniquement la source. (Voir: http://code.google.com/p/googletest/wiki/FAQ) Le mainteneur Debian a l'intention de faire cela aussi (voir BTS: 639795); fais le dans Ubuntu maintenant pour répondre aux exigences MIR.
cd / usr / src / gtest sudo cmake. sudo faire sudo mv libg * / usr / lib /
Modifier:
Les noms ont légèrement changé au fil des ans, bien que le processus reste le même. Dans 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 -
En améliorant la réponse d'izx, j'aurais utilisé cmake de cette façon:
sudo cmake -DCMAKE_BUILD_TYPE=RELEASE .
et je tenterais une construction hors source:
cd /tmp
mkdir .build
cd .build
cmake -DCMAKE_BUILD_TYPE=RELEASE /usr/src/gtest/
make
sudo mv libg* /usr/lib/
Notez que la méthode recommandée par Google consiste à faire en sorte que votre projet existant récupère le code source de gtest.
Alternativement, lorsque vous utilisez avec CMake, vous pouvez utiliser add_subdirectory
pour ajouter la source gtest fournie avec libgtest-dev
elle car elle est utilisée par défaut /usr/src/googletest
.
Ce qui suit fonctionnera
add_subdirectory(/usr/src/googletest gtest)
target_link_libraries(your_executable gtest)