Google 테스트를 위해 라이브러리 파일이 설치되지 않은 이유는 무엇입니까? 헤더 파일 만

libgtest-dev 패키지는 시스템에 헤더 파일 만 설치하는 것으로 보이지만 / usr / lib에 설치해야하는 정적 및 동적 라이브러리는 아닙니다.

버그입니까?



답변

버그입니까?

아니요, 의도적입니다.

gtest (1.6.0-1 우분투 2) 정확한; 긴급 = 낮음

  * 정적 라이브러리 배포를 중지하십시오 (아직 빌드하더라도 gtest를 보장하십시오)
    공장). 업스트림은 라이브러리를 전혀 배송하지 않는 것이 좋습니다.
    출처. (http://code.google.com/p/googletest/wiki/FAQ 참조)
    데비안 관리자도이를 수행 할 계획입니다 (BTS : 639795 참조). 그것을하다
    우분투는 이제 MIR 요구 사항을 충족합니다.

정적 라이브러리를 작성하려면

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

편집하다:

프로세스는 동일하지만 이름은 수년에 걸쳐 약간 변경되었습니다. 우분투 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의 답변을 개선하면 다음과 같이 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/

답변

점을 유의 권장 구글에 의한 방법은 기존 프로젝트에 gtest 소스 코드를 당겨하는 것입니다.

또는 CMake와 함께 사용할 때 기본적으로로 시작한 이후에 add_subdirectory제공된 gtest 소스를 추가하는 데 사용할 수 있습니다 .libgtest-dev/usr/src/googletest

다음은 작동합니다

add_subdirectory(/usr/src/googletest gtest)
target_link_libraries(your_executable gtest)