Tim,
Thanks for looking.  I think I finally figured out the problem.
This change to dyninstAPI_RT/CMakeLists.txt fixes it

@@ -5,4 +5,4 @@
 set (DYNINST_ROOT ${PROJECT_SOURCE_DIR}/..)
-set(CMAKE_C_FLAGS "${DYNINST_RT_CMAKE_C_FLAGS}")
-set(CMAKE_CXX_FLAGS "${DYNINST_RT_CMAKE_CXX_FLAGS}")
+# set(CMAKE_C_FLAGS "${DYNINST_RT_CMAKE_C_FLAGS}")
+# set(CMAKE_CXX_FLAGS "${DYNINST_RT_CMAKE_CXX_FLAGS}")

<root-dir>/CMakeLists.txt does
set(DYNINST_RT_CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
set(DYNINST_RT_CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")

but near as I can tell that never gets pushed out anywhere so later at:
if(BUILD_RTLIB)
  # Build the RT library as a separate project so we can change compilers

So we end up with an incompatibility between the C_FLAGS and LD_FLAGS so the test compile is done without -pie and the link is attempted with -pie and it fails.

Is DYNINST_RT_CMAKE_C_FLAGS needed?

Filed:
https://github.com/dyninst/dyninst/issues/812

_______________________________________________
Dyninst-api mailing list
Dyninst-api@cs.wisc.edu
https://lists.cs.wisc.edu/mailman/listinfo/dyninst-api

Reply via email to