compiling voxl-tflite-server
-
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 statusSeems like the libcpuinfo.a doesn't include some functions. How it's possible? Thanks for any help.
-
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 statusSeems like the libcpuinfo.a doesn't include some functions. How it's possible? Thanks for any help.
What steps are you doing to compile the
voxl-tflite-servercode? It should be done within thevoxl-crossDocker image. Also why SDK 0.9?Let me know how I can help.
Thomas
thomas.patton@modalai.com
Reading along? Create a free ModalAI Forum account to join in.
With an account you can reply, ask your own question, get an email when a ModalAI engineer answers, and mark the reply that solved it. Your place in each thread is saved between visits.
Questions about VOXL, Flight Core, ESCs and ModalAI drones are answered here by the engineers who build them.
Register Login