Quantcast
Channel: Active questions tagged ubuntu - Stack Overflow
Viewing all articles
Browse latest Browse all 5956

g++ not picking up tbb library during linking [duplicate]

$
0
0

I installed libtbb

~/work$ sudo find / -name "libtbb.*"/usr/lib/x86_64-linux-gnu/libtbb.so/usr/lib/x86_64-linux-gnu/libtbb.so.2

Version of g++

$ g++ --versiong++ (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0Copyright (C) 2017 Free Software Foundation, Inc.This is free software; see the source for copying conditions.  There is NOwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Version of OS

$ lsb_release -aNo LSB modules are available.Distributor ID: UbuntuDescription:    Ubuntu 18.04.6 LTSRelease:    18.04Codename:   bionic

Basic program

#include <iostream>#include <vector>#include <tbb/parallel_for.h>int main() {    const int N = 1000;    std::vector<int> array(N, 0);    tbb::parallel_for(0, N, [&](int i) {        array[i]++;    });    for (int i = 0; i < 10; ++i) {        std::cout << array[i] << " ";    }    std::cout << std::endl;    return 0;}

Compile command

$ g++ -std=c++11 /usr/lib/x86_64-linux-gnu/libtbb.so parallel_for.cpp -vUsing built-in specs.COLLECT_GCC=g++COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapperOFFLOAD_TARGET_NAMES=nvptx-noneOFFLOAD_TARGET_DEFAULT=1Target: x86_64-linux-gnuConfigured with: ../src/configure -v --with-pkgversion='Ubuntu 7.5.0-3ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-libmpx --enable-plugin --enable-default-pie --with-system-zlib --with-target-system-zlib --enable-objc-gc=auto --enable-multiarch --disable-werror --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnuThread model: posixgcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04) COLLECT_GCC_OPTIONS='-std=c++11''-v''-shared-libgcc''-mtune=generic''-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/7/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE parallel_for.cpp -quiet -dumpbase parallel_for.cpp -mtune=generic -march=x86-64 -auxbase parallel_for -std=c++11 -version -fstack-protector-strong -Wformat -Wformat-security -o /tmp/ccbdBWm2.sGNU C++11 (Ubuntu 7.5.0-3ubuntu1~18.04) version 7.5.0 (x86_64-linux-gnu)    compiled by GNU C version 7.5.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMPGGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/7"ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/7/../../../../x86_64-linux-gnu/include"#include "..." search starts here:#include <...> search starts here: /usr/include/c++/7 /usr/include/x86_64-linux-gnu/c++/7 /usr/include/c++/7/backward /usr/lib/gcc/x86_64-linux-gnu/7/include /usr/local/include /usr/lib/gcc/x86_64-linux-gnu/7/include-fixed /usr/include/x86_64-linux-gnu /usr/includeEnd of search list.GNU C++11 (Ubuntu 7.5.0-3ubuntu1~18.04) version 7.5.0 (x86_64-linux-gnu)    compiled by GNU C version 7.5.0, GMP version 6.1.2, MPFR version 4.0.1, MPC version 1.1.0, isl version isl-0.19-GMPGGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072Compiler executable checksum: 3eb3dc290cd5714c3e1c3ae751116f07COLLECT_GCC_OPTIONS='-std=c++11''-v''-shared-libgcc''-mtune=generic''-march=x86-64' as -v --64 -o /tmp/ccTBaR0N.o /tmp/ccbdBWm2.sGNU assembler version 2.30 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.30COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/7/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/7/../../../:/lib/:/usr/lib/COLLECT_GCC_OPTIONS='-std=c++11''-v''-shared-libgcc''-mtune=generic''-march=x86-64' /usr/lib/gcc/x86_64-linux-gnu/7/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/7/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/7/lto-wrapper -plugin-opt=-fresolution=/tmp/cc8wDjGz.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/7/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/7 -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/7/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/7/../../.. /usr/lib/x86_64-linux-gnu/libtbb.so /tmp/ccTBaR0N.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/7/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/7/../../../x86_64-linux-gnu/crtn.o/tmp/ccTBaR0N.o: In function `tbb::interface9::internal::start_for<tbb::blocked_range<int>, tbb::internal::parallel_for_body<main::{lambda(int)#1}, int>, tbb::auto_partitioner const>::run(tbb::blocked_range<int> const&, main::{lambda(int)#1} const&, tbb::auto_partitioner&)':parallel_for.cpp:(.text+0x3d5): undefined reference to `tbb::task_group_context::~task_group_context()'parallel_for.cpp:(.text+0x3fc): undefined reference to `tbb::task_group_context::~task_group_context()'/tmp/ccTBaR0N.o: In function `tbb::task_group_context::task_group_context(tbb::task_group_context::kind_type, unsigned long)':parallel_for.cpp:(.text._ZN3tbb18task_group_contextC2ENS0_9kind_typeEm[_ZN3tbb18task_group_contextC5ENS0_9kind_typeEm]+0x46): undefined reference to `tbb::task_group_context::init()'/tmp/ccTBaR0N.o: In function `tbb::task::task()':parallel_for.cpp:(.text._ZN3tbb4taskC2Ev[_ZN3tbb4taskC5Ev]+0x1b): undefined reference to `vtable for tbb::task'/tmp/ccTBaR0N.o: In function `tbb::task::~task()':parallel_for.cpp:(.text._ZN3tbb4taskD2Ev[_ZN3tbb4taskD5Ev]+0xb): undefined reference to `vtable for tbb::task'/tmp/ccTBaR0N.o: In function `tbb::task::is_cancelled() const':parallel_for.cpp:(.text._ZNK3tbb4task12is_cancelledEv[_ZNK3tbb4task12is_cancelledEv]+0x24): undefined reference to `tbb::task_group_context::is_group_execution_cancelled() const'/tmp/ccTBaR0N.o: In function `operator new(unsigned long, tbb::internal::allocate_root_with_context_proxy const&)':parallel_for.cpp:(.text._ZnwmRKN3tbb8internal32allocate_root_with_context_proxyE[_ZnwmRKN3tbb8internal32allocate_root_with_context_proxyE]+0x1f): undefined reference to `tbb::internal::allocate_root_with_context_proxy::allocate(unsigned long) const'/tmp/ccTBaR0N.o: In function `operator delete(void*, tbb::internal::allocate_root_with_context_proxy const&)':parallel_for.cpp:(.text._ZdlPvRKN3tbb8internal32allocate_root_with_context_proxyE[_ZdlPvRKN3tbb8internal32allocate_root_with_context_proxyE]+0x1f): undefined reference to `tbb::internal::allocate_root_with_context_proxy::free(tbb::task&) const'/tmp/ccTBaR0N.o: In function `operator new(unsigned long, tbb::internal::allocate_continuation_proxy const&)':parallel_for.cpp:(.text._ZnwmRKN3tbb8internal27allocate_continuation_proxyE[_ZnwmRKN3tbb8internal27allocate_continuation_proxyE]+0x1f): undefined reference to `tbb::internal::allocate_continuation_proxy::allocate(unsigned long) const'/tmp/ccTBaR0N.o: In function `operator delete(void*, tbb::internal::allocate_continuation_proxy const&)':parallel_for.cpp:(.text._ZdlPvRKN3tbb8internal27allocate_continuation_proxyE[_ZdlPvRKN3tbb8internal27allocate_continuation_proxyE]+0x1f): undefined reference to `tbb::internal::allocate_continuation_proxy::free(tbb::task&) const'/tmp/ccTBaR0N.o: In function `tbb::internal::throw_exception(tbb::internal::exception_id)':parallel_for.cpp:(.text._ZN3tbb8internal15throw_exceptionENS0_12exception_idE[_ZN3tbb8internal15throw_exceptionENS0_12exception_idE]+0x11): undefined reference to `tbb::internal::throw_exception_v4(tbb::internal::exception_id)'/tmp/ccTBaR0N.o: In function `tbb::interface9::internal::allocate_sibling(tbb::task*, unsigned long)':parallel_for.cpp:(.text._ZN3tbb10interface98internal16allocate_siblingEPNS_4taskEm[_ZN3tbb10interface98internal16allocate_siblingEPNS_4taskEm]+0x7e): undefined reference to `tbb::internal::allocate_child_proxy::allocate(unsigned long) const'/tmp/ccTBaR0N.o: In function `tbb::interface9::internal::adaptive_mode<tbb::interface9::internal::auto_partition_type>::adaptive_mode()':parallel_for.cpp:(.text._ZN3tbb10interface98internal13adaptive_modeINS1_19auto_partition_typeEEC2Ev[_ZN3tbb10interface98internal13adaptive_modeINS1_19auto_partition_typeEEC5Ev]+0xd): undefined reference to `tbb::internal::get_initial_auto_partitioner_divisor()'/tmp/ccTBaR0N.o:(.data.rel.ro._ZTVN3tbb10interface98internal9flag_taskE[_ZTVN3tbb10interface98internal9flag_taskE]+0x28): undefined reference to `tbb::task::note_affinity(unsigned short)'/tmp/ccTBaR0N.o:(.data.rel.ro+0x10): undefined reference to `typeinfo for tbb::task'/tmp/ccTBaR0N.o:(.data.rel.ro._ZTIN3tbb10interface98internal9flag_taskE[_ZTIN3tbb10interface98internal9flag_taskE]+0x10): undefined reference to `typeinfo for tbb::task'collect2: error: ld returned 1 exit status

Viewing all articles
Browse latest Browse all 5956

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>