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

Jim LeBeau jiml at ladsnet.com
Thu Sep 8 15:57:02 UTC 2016


Daniel,

Thanks, that worked well. I would never have figured that out myself.

Jim



Jim,

  Looks like GCC Link-Time-Optimization isn't working on Jessie's GCC
4.9.2.  Try re-building with:

    cd build
    make clean
    cmake -DENABLE_LTO=OFF ..
    make

  and see if that fixes it for you. I get a clean compile on my Docker
image.  If that corrects the issue, then we can add the instructions to the
Wiki.  We already detect broken LTO support in GCC < 4.9.0, but maybe 4.9.2
is also broken.....

daniel

Confidential Information Notice: This email contains confidential and
proprietary information of LADS Network Solutions, Inc and is intended only
for the individual or entity named above.   If the reader of this email is
not the intended recipient, please contact LADS at 636-220-8266 to inform
them that you have received this email and then permanently delete and
shred this email. Dissemination, publication and/or copying of this email
is strictly prohibited.


On Wed, Sep 7, 2016 at 3:22 PM, Jim LeBeau <jiml at ladsnet.com> wrote:

> 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/20160908/fef10172/attachment.html>


More information about the OSRM-talk mailing list