Build GoogleTest 1.10.0 Dari Source Code - Linux Centos79

You might also like

You are on page 1of 14

Build GoogleTest 1.10.0 Dari Source Code Di Linux Centos 7.

9 64 Bit
https://stackoverflow.com/questions/13513905/how-to-set-up-googletest-as-a-shared-library-on-linux

https://www.programmersought.com/article/79594784118/

Tools :

Dependensi : Python 2.7.5

C++ Kompiler : GNU GCC 4.8.5

C++ Build Tool : CMake 3.20.5

C++ Testing Framework : GoogleTest 1.10.0

C++ IDE : Code Blocks 20.03

1. Menginstal CMake Ke /opt


Instalasi CMAKE sudah masuk ke /opt

Setting environment variable untuk CMAKE

Tes instalasi CMAKE

2. Membongkar file zip GoogleTest


3. Konfigurasi source code GoogleTest dengan CMake

–DBUILD_SHARED_LIBS=ON untuk dynamic library (.so) file atau

–DBUILD_SHARED_LIBS=OFF untuk static library (.a) file

-S : lokasi source code

-B : lokasi tujuan build

Masuk ke folder tujuan


4. Kompilasi source code GoogleTest

Di dalam folder tujuan, tulis make

Tulis lagi perintah cmake tapi dengan opsi –DBUILD_SHARED_LIBS=OFF untuk membuat static library.
Jika sudah lakukan kompilasi lagi

Hasil akhirnya tampil seperti pada gambar, berisi file2 .a (static library) & .so (dynamic library)

5. Instalasi GoogleTest 1.10.0

Membuat folder secara berurutan untuk menempatkan file2 include : mkdir -p


/home/menkdev/googletest_1.10.0 /home/menkdev/googletest_1.10.0/include

Menempatkan file2 include GoogleMock : cp -R /home/menkdev/Documents/googletest-1.10.0-


sumber/googlemock/include/gmock /home/menkdev/googletest_1.10.0/include/

Menempatkan file2 include GoogleTest : cp -R /home/menkdev/Documents/googletest-1.10.0-


sumber/googletest/include/gtest /home/menkdev/googletest_1.10.0/include/

Menempatkan file2 library .a & .so : cp -R /home/menkdev/Documents/googletest-1.10.0-tujuan/lib


/home/menkdev/googletest_1.10.0
Hasil instalasinya seperti itu

5. Contoh Kode

Di File  New  Project pilih Console application


Tulis nama proyeknya
Finish
#include <cstdio>

#include <gtest/gtest.h>

int add(int a, int b) {

return a + b;

TEST(TesJumlah, HandleInputBukanNol) {

EXPECT_EQ(14, add(4, 10));

EXPECT_EQ(-2, add(-3, 1));

int main(int argc, char *argv[]) {

testing::InitGoogleTest(&argc, argv);

return RUN_ALL_TESTS();

}
Tulis kode yang ada di gambar, kemudian compile

Tampil error gtest/gtest.h No such file or directory yang berarti compiler tidak gagal mendeteksi file tsb

Solusi error tsb ada di nomor 6

6. Konfigurasi Di Code Blocks

Klik Build options


Setting di mode Debug & Release

Aktifkan opsi C++11 GNU


Setting di mode Debug & Release

Tulis –lgtest
Setting di mode Debug & Release

Di Search Directories  Compiler : Masukkan lokasi file2 header GoogleTest dengan klik tombol Add
(geser ke bawah supaya tombolnya kelihatan). Jika ada pertanyaan Keep this as a Relative Path ? pilih
No
Setting di mode Debug & Release

Di Search Directories  Linker : Masukkan lokasi file2 library GoogleTest dengan klik tombol Add (geser
ke bawah supaya tombolnya kelihatan). Jika ada pertanyaan Keep this as a Relative Path ? pilih No

7. Coba Lagi

Hasil kompilasi dengan Build  Compile current file


Hasil build dengan Build  Build

Jalankan contoh program dengan Build  Run

Selesai

Created By : C/C++ Coder Di Jakarta

You might also like