Почему файлы библиотеки не установлены для проверки Google?

47

Пакет libgtest-dev, по-видимому, только устанавливает файлы заголовков в систему, но не статические и динамические библиотеки, которые должны быть установлены в / usr / lib.

Это ошибка?

    
задан eddyxu 03.06.2012 в 14:01
источник

3 ответа

63
  

Это ошибка?

Нет, это преднамеренно:

gtest (1.6.0-1ubuntu2) precise; urgency=low

  * Stop distributing static library (although still build it, to ensure gtest
    works).  Upstream recommends against shipping the libary at all, just the
    source. (See: http://code.google.com/p/googletest/wiki/FAQ)
    The Debian maintainer plans to do this also (see BTS: 639795); do it in
    Ubuntu now to fulfil MIR requirements.

Чтобы создать статические библиотеки

cd /usr/src/gtest
sudo cmake .
sudo make
sudo mv libg* /usr/lib/

Edit:

Имена немного изменились за эти годы, хотя процесс остался прежним. В 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
    
ответ дан izx 03.06.2012 в 15:06
источник
20

Улучшение ответа izx Я бы использовал cmake следующим образом:

sudo cmake -DCMAKE_BUILD_TYPE=RELEASE .

, и я бы попытался построить вне источника:

cd /tmp
mkdir .build
cd .build
cmake -DCMAKE_BUILD_TYPE=RELEASE /usr/src/gtest/
make
sudo mv libg* /usr/lib/
    
ответ дан Wojciech Migda 16.03.2013 в 20:58
0

Должна быть ошибка зависимости, libgtest должно быть установлено вместе с libgtest-dev .

Вы можете сначала попробовать apt-get install -y libgtest ?

Также не забудьте отправить отчет об ошибке на ubuntu.

    
ответ дан daisy 03.06.2012 в 15:02