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

2016-09-08 Thread Jim LeBeau
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  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  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
>
>
>
>
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


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

2016-09-07 Thread Daniel Patterson
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

> On Sep 7, 2016, at 1:51 PM, Daniel Patterson  wrote:
> 
> Hi Jim,
> 
>   Welp, the good news is that I can reproduce this with a Docker image from 
> Jessie.  I'll see if I can track down the problem.
> 
> daniel
> 
>> On Sep 7, 2016, at 1:22 PM, Jim LeBeau > > 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
> 

___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk


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

2016-09-07 Thread Jim LeBeau
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

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.
___
OSRM-talk mailing list
OSRM-talk@openstreetmap.org
https://lists.openstreetmap.org/listinfo/osrm-talk