[OSRM-talk] Building OSRM undefined reference to 'tbb::empty_task::~empty_task()

Jim LeBeau jiml at ladsnet.com
Wed Sep 7 20:22:55 UTC 2016


Daniel,

I am running on a debian linux box, jessie a new install and everything up
to date.

I downloaded the latest code from github and followed the directions at
https://github.com/Project-OSRM/osrm-backend/wiki/Building-OSRM

I saw a reference to linker issues from some years ago, and the command
that is failing seems ugly to me with -ltbb repeated more than once.

/usr/bin/c++    -flto=2 -Wall -Wextra -pedantic -Wuninitialized
-Wunreachable-code -Wstrict-overflow=1 -D_FORTIFY_SOURCE=2
-fdiagnostics-color=auto -fPIC -ffunction-sections -fdata-sections
-std=c++1y -fopenmp -O3 -DNDEBUG    -fuse-ld=gold -Wl,--disable-new-dtags
 -Wl,--gc-sections -Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common
CMakeFiles/osrm-contract.dir/src/tools/contract.cpp.o  -o osrm-contract
-rdynamic -lboost_date_time -lboost_filesystem -lboost_iostreams
-lboost_program_options -lboost_regex -lboost_system -lboost_thread
-lpthread -ltbb -ltbbmalloc libosrm_contract.a -lboost_date_time
-lboost_filesystem -lboost_iostreams -lboost_program_options -lboost_regex
-lboost_system -lboost_thread -lpthread -lpthread -lluabind -llua5.2
-lstxxl -ltbb -ltbbmalloc -lrt


Thanks,

Jim

+++++++++++++++++++++++++++++++++++++++++++++++++++++

Jim,

  What OS are you building on and what version of OSRM are you trying to
compile?

  The problem is odd - you've managed to compile the code, but linking
against the TBB libraries is failing with a missing symbol - I don't know
how this could happen, I would've expected it to fail earlier.

  Are you using an old platform?  I've seen very old versions of libtbb
packaged on some machines, the fix was usually to update.

daniel

> On Sep 7, 2016, at 1:00 PM, Jim LeBeau <jiml at ladsnet.com> wrote:
>
> Hi,
>
> I am setting up a server to do some routing, and am having trouble with
the build.  After following the instructions for debian jessie on the wiki
I end up at 95% complete with:
>
> /tmp/ccgkEZ99.ltrans11.ltrans.o:ccgkEZ99.ltrans11.o:vtable for
tbb::empty_task: error: undefined reference to
'tbb::empty_task::~empty_task()'
> /tmp/ccgkEZ99.ltrans11.ltrans.o:ccgkEZ99.ltrans11.o:vtable for
tbb::empty_task: error: undefined reference to
'tbb::empty_task::~empty_task()'
> collect2: error: ld returned 1 exit status
> CMakeFiles/osrm-contract.dir/build.make:109: recipe for target
'osrm-contract' failed
> make[2]: *** [osrm-contract] Error 1
> CMakeFiles/Makefile2:342: recipe for target
'CMakeFiles/osrm-contract.dir/all' failed
> make[1]: *** [CMakeFiles/osrm-contract.dir/all] Error 2
> Makefile:117: recipe for target 'all' failed
> make: *** [all] Error 2
>
> After much searching and many attempts I am unable to get past this.  Has
anyone recently had success?  What can I try?
>
> Thanks,
>
> Jim
>
> https://github.com/Project-OSRM/osrm-backend/wiki/Building-OSRM <
https://github.com/Project-OSRM/osrm-backend/wiki/Building-OSRM>
>
>
> _______________________________________________
> OSRM-talk mailing list
> OSRM-talk at openstreetmap.org
> https://lists.openstreetmap.org/listinfo/osrm-talk
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstreetmap.org/pipermail/osrm-talk/attachments/20160907/a616d43d/attachment.html>


More information about the OSRM-talk mailing list