Add -fPIC to libttrace 43/284143/1
authorSung-hun Kim <sfoon.kim@samsung.com>
Thu, 10 Nov 2022 09:37:24 +0000 (18:37 +0900)
committerSung-hun Kim <sfoon.kim@samsung.com>
Thu, 10 Nov 2022 09:51:44 +0000 (18:51 +0900)
For some build environment (especially for the 64-bit emulator),
building ttrace is failed due to the linking failure like below.

 [   67s] /usr/lib64/gcc/x86_64-tizen-linux-gnu/9.2.0/../../../../x86_64-tizen-linux-gnu/bin/ld: /tmp/libttrace.so.1.1.0.VwGElR.ltrans0.ltrans.o: relocation R_X86_64_PC32 against symbol `cur_enabled_tag' can not be used when making a shared object; recompile with -fPIC
 [   67s] /usr/lib64/gcc/x86_64-tizen-linux-gnu/9.2.0/../../../../x86_64-tizen-linux-gnu/bin/ld: final link failed: bad value
 [   67s] collect2: error: ld returned 1 exit status

Adding -fPIC can resolve this issue.

Change-Id: I01197fc6704e5e1accdb70648ea147274ced4d58
Signed-off-by: Sung-hun Kim <sfoon.kim@samsung.com>
src/CMakeLists.txt

index 739dfc3f71287baf9b3580487452660b45e1b01e..28cf0cac671d3cf6fd45ca794b971a587ad170d2 100644 (file)
@@ -1,6 +1,8 @@
 AUX_SOURCE_DIRECTORY(${CMAKE_CURRENT_SOURCE_DIR} SRC)
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR}/include)
 
+SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${EXTRA_CFLAGS} -std=c++11 -fPIC")
+
 ADD_LIBRARY(${TARGET_TTRACE} SHARED ${SRC})
 
 APPLY_PKG_CONFIG(${TARGET_TTRACE} PUBLIC