Re: [DynInst_API:] DyninstAPI: Compile error while building top of tree


Date: Tue, 03 Oct 2017 15:30:19 -0500
From: Jim Galarowicz <jeg@xxxxxxxxxxxxx>
Subject: Re: [DynInst_API:] DyninstAPI: Compile error while building top of tree

Is this what you need?

-- -- Input platform: ppc64_linux


-- The C compiler identification is GNU 4.8.5
-- The CXX compiler identification is GNU 4.8.5
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/g++
-- Check for working CXX compiler: /usr/bin/g++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- -- Input platform:
-- -- Attempting to automatically identify platform: ppc64_linux
-- Found LibDwarf: /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libdw.so -- Found LibElf: /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libelf.so
-- Found libiberty: /usr/lib64/libiberty.a
-- Using libiberty /usr/lib64/libiberty.a
-- Found Thread_Db: /usr/lib64/libthread_db.so
-- Disabling Boost's own CMake--known buggy in many cases
-- Boost version: 1.53.0
-- Found the following Boost libraries:
--   thread
--   system
--   date_time
-- Boost includes: /usr/include
-- Boost library dirs: /usr/lib64
-- Boost thread library: /usr/lib64/libboost_thread-mt.so
-- Boost libraries: /usr/lib64/libboost_thread-mt.so;/usr/lib64/libboost_system-mt.so;/usr/lib64/libboost_date_time-mt.so
-- Performing Test _HAS_CXX11_FLAG
-- Performing Test _HAS_CXX11_FLAG - Success
-- Checking C++11 support for "__func__"
-- Checking C++11 support for "__func__": works
-- Checking C++11 support for "auto"
-- Checking C++11 support for "auto": works
-- Checking C++11 support for "auto_ret_type"
-- Checking C++11 support for "auto_ret_type": works
-- Checking C++11 support for "class_override_final"
-- Checking C++11 support for "class_override_final": not supported
-- Checking C++11 support for "constexpr"
-- Checking C++11 support for "constexpr": works
-- Checking C++11 support for "cstdint"
-- Checking C++11 support for "cstdint": works
-- Checking C++11 support for "decltype"
-- Checking C++11 support for "decltype": works
-- Checking C++11 support for "initializer_list"
-- Checking C++11 support for "initializer_list": works
-- Checking C++11 support for "lambda"
-- Checking C++11 support for "lambda": works
-- Checking C++11 support for "long_long"
-- Checking C++11 support for "long_long": works
-- Checking C++11 support for "nullptr"
-- Checking C++11 support for "nullptr": works
-- Checking C++11 support for "regex"
-- Checking C++11 support for "regex": not supported
-- Checking C++11 support for "rvalue-references"
-- Checking C++11 support for "rvalue-references": works
-- Checking C++11 support for "sizeof_member"
-- Checking C++11 support for "sizeof_member": works
-- Checking C++11 support for "static_assert"
-- Checking C++11 support for "static_assert": works
-- Checking C++11 support for "variadic_templates"
-- Checking C++11 support for "variadic_templates": works
-- C++11 support found, required flags are: -std=c++11
-- Enabling ThreadDB support
-- Set arch and platform based definitions
-- Found g++, enabling -fvisibility=hidden
-- Options set
-- Set optimization flags
-- cotire 1.7.8 loaded.
-- Building common...
-- Processing dependent target /usr/lib64/libiberty.a...
-- CXX target common cotired without unity build.
-- Building dynElf...
-- Processing dependent target /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libelf.so... -- CXX target dynElf cotired without unity build and precompiled header. Too few applicable sources.
-- Building dynDwarf...
-- Processing dependent target dynElf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/elf
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common -- Processing dependent target /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libdw.so... -- Processing dependent target /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libelf.so...
-- CXX target dynDwarf cotired without unity build.
-- Building symLite...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target dynElf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/elf -- CXX target symLite cotired without unity build and precompiled header. Too few applicable sources.
-- Building instructionAPI...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common -- CXX target instructionAPI cotired without unity build excluding src/InstructionDecoder-aarch64.C.
-- Building symtabAPI...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target dynElf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/elf -- Processing dependent target /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libelf.so...
-- Processing dependent target dynDwarf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/dwarf -- Processing dependent target /home/jeg/openss/power/krellroot_v2.3.1.latest/lib/libdw.so...
-- CXX target symtabAPI cotired without unity build.
-- Building parseAPI...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target instructionAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/instructionAPI
-- Processing dependent target symtabAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI
-- CXX target parseAPI cotired without unity build excluding 39 files.
-- Building pcontrol...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target symtabAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI
-- CXX target pcontrol cotired without unity build.
-- Building stackwalk...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target instructionAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/instructionAPI
-- Processing dependent target pcontrol...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/proccontrol
-- Processing dependent target dynDwarf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/dwarf
-- Processing dependent target dynElf...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/elf
-- Processing dependent target symtabAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI
-- Processing dependent target parseAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/parseAPI
-- CXX target stackwalk cotired without unity build.
-- Building patchAPI...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target instructionAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/instructionAPI
-- Processing dependent target parseAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/parseAPI
-- CXX target patchAPI cotired without unity build.
-- Building dyninstAPI...
-- Processing dependent target common...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/common
-- Processing dependent target instructionAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/instructionAPI
-- Processing dependent target stackwalk...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/stackwalk
-- Processing dependent target pcontrol...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/proccontrol
-- Processing dependent target patchAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/patchAPI
-- Processing dependent target parseAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/parseAPI
-- Processing dependent target symtabAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI
-- CXX target dyninstAPI cotired without unity build.
-- Building dynC_API...
-- Processing dependent target dyninstAPI...
-- Found dependency location /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/dyninstAPI
-- CXX target dynC_API cotired without unity build.
-- Configuring DyninstAPI_RT
-- Configuring RT library
-- The C compiler identification is GNU 4.8.5
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- -- Input platform: ppc64_linux
-- Set arch and platform based definitions
-- Options set
-- Set optimization flags
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/gcc
-- dyninstAPI RT library SOVERSION: 9.3
-- dyninstAPI RT library LIBVERSION: 9.3.2
-- Checking for 32-bit runtime library...
-- Performing Test CHECK_RT_LIB_32
-- Performing Test CHECK_RT_LIB_32 - Failed
-- Disabling 32-bit runtime library; change BUILD_RTLIB_32 to ON and install 32-bit build environment to enable
-- Configuring done
-- Generating done
-- Build files have been written to: /home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/dyninstAPI_RT
-- LaTeX not found
-- Adding Unix-specific dependencies
-- Added libdwarf_imp and libelf_imp dependencies
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:


On 10/03/2017 03:21 PM, Bill Williams wrote:
...okay, on further examination this means that cap_dwarf is somehow missing from your platform defines. What's $PLATFORM coming out of CMake? Any linux should have cap_dwarf enabled...
________________________________________
From: Jim Galarowicz <jeg@xxxxxxxxxxxxx>
Sent: Tuesday, October 3, 2017 2:16 PM
To: Bill Williams; dyninst-api@xxxxxxxxxxx
Cc: jeg@xxxxxxxxxxxxx
Subject: Re: [DynInst_API:] DyninstAPI: Compile error while building top of tree

Hi Bill,

I made this change, but it didn't seem to help with the compile error.

diff --git a/cmake/shared.cmake b/cmake/shared.cmake
index 0b49ccd..41bc676 100644
--- a/cmake/shared.cmake
+++ b/cmake/shared.cmake
@@ -99,7 +99,7 @@ include (${DYNINST_ROOT}/cmake/options.cmake)
   include (${DYNINST_ROOT}/cmake/optimization.cmake)

   # Check for cotire-gcc compatibility
-set(USE_COTIRE true)
+set(USE_COTIRE false)
   IF(CMAKE_COMPILER_IS_GNUCC)
       execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
OUTPUT_VARIABLE GCC_VERSION)
       string(REGEX MATCHALL "[0-9]+" GCC_VERSION_COMPONENTS ${GCC_VERSION})

Jim G

On 10/03/2017 01:54 PM, Bill Williams wrote:
First step here is disabling cotire; it's great when it works but it seems to have gotten very brittle on HPC systems. IIRC top of tree should have that as an explicit cache variable. If not I'll make sure I push a patch up...

If that doesn't do the trick it should just be a missing include I'd think.
________________________________________
From: Dyninst-api <dyninst-api-bounces@xxxxxxxxxxx> on behalf of Jim Galarowicz <jeg@xxxxxxxxxxxxx>
Sent: Tuesday, October 3, 2017 1:47 PM
To: dyninst-api@xxxxxxxxxxx
Subject: [DynInst_API:] DyninstAPI: Compile error while building top of tree

Hi all,

Just tried to build the top of tree (from a few minutes ago). I'm seeing
this error on a power 8 cluster.

Thanks,

Jim G


    19%] Building CXX object
symtabAPI/CMakeFiles/symtabAPI.dir/src/Object-elf.C.o
In file included from
/home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI/cotire/symtabAPI_CXX_prefix.cxx:22:0,
                    from
/home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI/cotire/symtabAPI_CXX_prefix.hxx:4:
/home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI/src/Object-elf.C:
In function ‘int read_except_table_gcc3(Dwarf*, mach_relative_info&,
Dyninst::Elf_X_Shdr*, Dyninst::Elf_X_Shdr*,
std::vector<Dyninst::SymtabAPI::ExceptionBlock>&)’:
/home/jeg/OpenSpeedShop_ROOT/BUILD/p8-node.creativec.com/dyninst-20171003/symtabAPI/src/Object-elf.C:3418:12:
error: ‘DW_CIE_ID_64’ was not declared in this scope
            if(dwarf_cfi_cie_p(&entry))
               ^
make[2]: *** [symtabAPI/CMakeFiles/symtabAPI.dir/src/Object-elf.C.o] Error 1
make[1]: *** [symtabAPI/CMakeFiles/symtabAPI.dir/all] Error 2
make: *** [all] Error 2

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

[← Prev in Thread] Current Thread [Next in Thread→]