ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    compiling voxl-tflite-server

    Software Development
    2
    2
    293
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • R
      relevinsky
      last edited by

      Hi,
      I'm trying to compile/linkage the latest (master branch) voxl-tflite-server code on VOXL2.I'm working with SDK 0.9 .
      But during my linkage of the project, i run into the following problems:

      Invoking: GCC C++ Linker
      g++ -L/usr/lib64 -Wl,-rpath-link,/usr/lib64/ -o "powtflite"  ./inference_helper.o ./main.o ./resize.o    -ltensorflow-lite -labsl_bad_any_cast_impl -labsl_bad_optional_access -labsl_bad_variant_access -labsl_base -labsl_city -labsl_civil_time -labsl_cord -labsl_debugging_internal -labsl_demangle_internal -labsl_exponential_biased -labsl_flags -labsl_flags_commandlineflag -labsl_flags_commandlineflag_internal -labsl_flags_config -labsl_flags_internal -labsl_flags_marshalling -labsl_flags_private_handle_accessor -labsl_flags_program_name -labsl_flags_reflection -labsl_graphcycles_internal -labsl_hash -labsl_hashtablez_sampler -labsl_int128 -labsl_log_severity -labsl_malloc_internal -labsl_raw_hash_set -labsl_raw_logging_internal -labsl_spinlock_wait -labsl_stacktrace -labsl_status -labsl_str_format_internal -labsl_strings -labsl_strings_internal -labsl_symbolize -labsl_synchronization -labsl_throw_delegate -labsl_time -labsl_time_zone -labsl_wyhash -labsl_bad_any_cast_impl -labsl_bad_optional_access -labsl_bad_variant_access -labsl_base -labsl_city -labsl_civil_time -labsl_cord -labsl_debugging_internal -labsl_demangle_internal -labsl_exponential_biased -labsl_flags -labsl_flags_commandlineflag -labsl_flags_commandlineflag_internal -labsl_flags_config -labsl_flags_internal -labsl_flags_marshalling -labsl_flags_private_handle_accessor -labsl_flags_program_name -labsl_flags_reflection -labsl_graphcycles_internal -labsl_hash -labsl_hashtablez_sampler -labsl_int128 -labsl_log_severity -labsl_malloc_internal -labsl_raw_hash_set -labsl_raw_logging_internal -labsl_spinlock_wait -labsl_stacktrace -labsl_status -labsl_str_format_internal -labsl_strings -labsl_strings_internal -labsl_symbolize -labsl_synchronization -labsl_throw_delegate -labsl_time -labsl_time_zone -labsl_wyhash -labsl_bad_any_cast_impl -labsl_bad_optional_access -labsl_bad_variant_access -labsl_base -labsl_city -labsl_civil_time -labsl_cord -labsl_debugging_internal -labsl_demangle_internal -labsl_exponential_biased -labsl_flags -labsl_flags_commandlineflag -labsl_flags_commandlineflag_internal -labsl_flags_config -labsl_flags_internal -labsl_flags_marshalling -labsl_flags_private_handle_accessor -labsl_flags_program_name -labsl_flags_reflection -labsl_graphcycles_internal -labsl_hash -labsl_hashtablez_sampler -labsl_int128 -labsl_log_severity -labsl_malloc_internal -labsl_raw_hash_set -labsl_raw_logging_internal -labsl_spinlock_wait -labsl_stacktrace -labsl_status -labsl_str_format_internal -labsl_strings -labsl_strings_internal -labsl_symbolize -labsl_synchronization -labsl_throw_delegate -labsl_time -labsl_time_zone -labsl_wyhash -lflatbuffers -lcpuinfo -lfarmhash -lclog -lfft2d_fftsg2d -lfft2d_fftsg -lruy_allocator -lruy_apply_multiplier -lruy_block_map -lruy_blocking_counter -lruy_context -lruy_context_get_ctx -lruy_cpuinfo -lruy_ctx -lruy_denormal -lruy_frontend -lruy_have_built_path_for_avx -lruy_have_built_path_for_avx2_fma -lruy_have_built_path_for_avx512 -lruy_kernel_arm -lruy_kernel_avx -lruy_kernel_avx2_fma -lruy_kernel_avx512 -lruy_pack_arm -lruy_pack_avx -lruy_pack_avx2_fma -lruy_pack_avx512 -lruy_prepacked_cache -lruy_prepare_packed_matrices -lruy_profiler_instrumentation -lruy_system_aligned_alloc -lruy_thread_pool -lruy_trmul -lruy_tune -lruy_wait -lglib-2.0 -ldl -lstdc++ -lpthread -lz -lcutils -llog -lsync -lgthread-2.0 -lpcre -lmodal_pipe -lmodal_json -lopencv_core -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -lgsl -lllvm-qcom -ladreno_utils -lOpenCL -lCB -lEGL_adreno -lGLESv2_adreno -lrt -lXNNPACK -lpthreadpool
      /usr/lib64/libtensorflow-lite.a(nnapi_delegate.cc.o): In function `tflite::delegate::nnapi::NNMemory::NNMemory(NnApi const*, char const*, unsigned long)':
      nnapi_delegate.cc:(.text+0xd58): warning: the use of `tmpnam' is dangerous, better use `mkstemp'
      makefile:56: recipe for target 'powtflite' failed
      /usr/lib64/libruy_cpuinfo.a(cpuinfo.cc.o): In function `ruy::CpuInfo::~CpuInfo()':
      cpuinfo.cc:(.text+0x10): undefined reference to `cpuinfo_deinitialize'
      /usr/lib64/libruy_cpuinfo.a(cpuinfo.cc.o): In function `ruy::CpuInfo::Initialize()':
      cpuinfo.cc:(.text+0x44): undefined reference to `cpuinfo_initialize'
      cpuinfo.cc:(.text+0x58): undefined reference to `cpuinfo_get_processors_count'
      cpuinfo.cc:(.text+0x8c): undefined reference to `cpuinfo_get_processor'
      cpuinfo.cc:(.text+0xb8): undefined reference to `cpuinfo_get_processor'
      cpuinfo.cc:(.text+0xcc): undefined reference to `cpuinfo_get_processor'
      /usr/lib64/libruy_cpuinfo.a(cpuinfo.cc.o): In function `ruy::CpuInfo::NeonDotprod()':
      cpuinfo.cc:(.text+0x21c): undefined reference to `cpuinfo_isa'
      cpuinfo.cc:(.text+0x220): undefined reference to `cpuinfo_isa'
      /usr/lib64/libruy_cpuinfo.a(cpuinfo.cc.o): In function `ruy::CpuInfo::CurrentCpuIsA55ish()':
      cpuinfo.cc:(.text+0x2c0): undefined reference to `cpuinfo_get_current_uarch_index'
      cpuinfo.cc:(.text+0x2c4): undefined reference to `cpuinfo_get_uarch'
      /usr/lib64/libruy_cpuinfo.a(cpuinfo.cc.o): In function `ruy::CpuInfo::CurrentCpuIsX1()':
      cpuinfo.cc:(.text+0x304): undefined reference to `cpuinfo_get_current_uarch_index'
      cpuinfo.cc:(.text+0x308): undefined reference to `cpuinfo_get_uarch'
      /usr/lib64/libruy_thread_pool.a(thread_pool.cc.o): In function `ruy::ThreadPool::CreateThreads(int)':
      thread_pool.cc:(.text+0x1b4): undefined reference to `ruy::BlockingCounter::Reset(int)'
      thread_pool.cc:(.text+0x308): undefined reference to `ruy::BlockingCounter::Wait(std::chrono::duration<long, std::ratio<1l, 1000000000l> >)'
      /usr/lib64/libruy_thread_pool.a(thread_pool.cc.o): In function `ruy::ThreadPool::ExecuteImpl(int, int, ruy::Task*)':
      thread_pool.cc:(.text+0x3dc): undefined reference to `ruy::BlockingCounter::Reset(int)'
      thread_pool.cc:(.text+0x494): undefined reference to `ruy::BlockingCounter::Wait(std::chrono::duration<long, std::ratio<1l, 1000000000l> >)'
      /usr/lib64/libruy_thread_pool.a(thread_pool.cc.o): In function `ruy::Thread::ThreadFunc(ruy::Thread*)':
      thread_pool.cc:(.text._ZN3ruy6Thread10ThreadFuncEPS0_[_ZN3ruy6Thread10ThreadFuncEPS0_]+0xb4): undefined reference to `ruy::BlockingCounter::DecrementCount()'
      thread_pool.cc:(.text._ZN3ruy6Thread10ThreadFuncEPS0_[_ZN3ruy6Thread10ThreadFuncEPS0_]+0x1ac): undefined reference to `ruy::BlockingCounter::DecrementCount()'
      /usr/lib64/libruy_trmul.a(trmul.cc.o): In function `ruy::(anonymous namespace)::TrMulTask::Run()':
      trmul.cc:(.text+0xdc): undefined reference to `ruy::GetBlockByIndex(ruy::BlockMap const&, int, ruy::SidePair<int>*)'
      trmul.cc:(.text+0xf0): undefined reference to `ruy::GetBlockMatrixCoords(ruy::BlockMap const&, ruy::SidePair<int> const&, ruy::SidePair<int>*, ruy::SidePair<int>*)'
      trmul.cc:(.text+0x21c): undefined reference to `ruy::GetBlockMatrixCoords(ruy::Side, ruy::BlockMap const&, int, int*, int*)'
      /usr/lib64/libruy_trmul.a(trmul.cc.o): In function `ruy::TrMul(ruy::Ctx*, ruy::TrMulParams*)':
      trmul.cc:(.text+0x5a4): undefined reference to `ruy::MakeBlockMap(int, int, int, int, int, int, int, int, ruy::CpuCacheParams const&, ruy::BlockMap*)'
      trmul.cc:(.text+0x768): undefined reference to `ruy::IsObviouslyLinearTraversal(int, int, int, int, int, ruy::CpuCacheParams const&)'
      /usr/lib64/libXNNPACK.a(init.c.o): In function `init':
      init.c:(.text+0x2c): undefined reference to `cpuinfo_isa'
      init.c:(.text+0x4c): undefined reference to `cpuinfo_isa'
      init.c:(.text+0x6c): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x1a8): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x3d4): undefined reference to `cpuinfo_get_uarch'
      init.c:(.text+0x44c): undefined reference to `cpuinfo_isa'
      init.c:(.text+0x468): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x580): undefined reference to `cpuinfo_isa'
      init.c:(.text+0x6a0): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x8e0): undefined reference to `cpuinfo_get_uarch'
      init.c:(.text+0xa04): undefined reference to `cpuinfo_isa'
      init.c:(.text+0xa14): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0xaec): undefined reference to `cpuinfo_get_uarch'
      init.c:(.text+0xc94): undefined reference to `cpuinfo_isa'
      init.c:(.text+0xcd8): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0xdcc): undefined reference to `cpuinfo_isa'
      init.c:(.text+0xe40): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x10ac): undefined reference to `cpuinfo_isa'
      init.c:(.text+0x1148): undefined reference to `cpuinfo_get_uarch'
      init.c:(.text+0x131c): undefined reference to `cpuinfo_get_core'
      init.c:(.text+0x17cc): undefined reference to `cpuinfo_get_uarch'
      init.c:(.text+0x18a4): undefined reference to `cpuinfo_get_core'
      /usr/lib64/libXNNPACK.a(init.c.o): In function `xnn_initialize':
      init.c:(.text+0x1fdc): undefined reference to `cpuinfo_initialize'
      /usr/lib64/libXNNPACK.a(init.c.o): In function `xnn_deinitialize':
      init.c:(.text+0x2044): undefined reference to `cpuinfo_deinitialize'
      collect2: error: ld returned 1 exit status
      

      Seems like the libcpuinfo.a doesn't include some functions. How it's possible? Thanks for any help.

      ? 1 Reply Last reply Reply Quote 0
      • ?
        A Former User @relevinsky
        last edited by

        @relevinsky

        What steps are you doing to compile the voxl-tflite-server code? It should be done within the voxl-cross Docker image. Also why SDK 0.9?

        Let me know how I can help.

        Thomas
        thomas.patton@modalai.com

        1 Reply Last reply Reply Quote 0
        • First post
          Last post
        Powered by NodeBB | Contributors