I have just gone through this process and stumbled over a few things
initially that seem similar.

I finally compiled boost from SVN (which gives it version number 1.42),
installed it at /usr/local and then I specified the location of the boost
includes and libs at configuration time for scons like this:

python scons/scons.py configure BOOST_INCLUDE=/usr/local/include/
BOOST_LIBS=/usr/local/lib

(I had the feeling that at build-time for mapnik is was picking up the
system installation for boost, which I could not remove due to dependency of
some virtual server stuff on it)

then running

python scons/scons.py

went through ok

HTH

Ludwig


2010/1/6 Dane Springmeyer <[email protected]>

> Hmmm, the next things I would try would be (in this order):
>
> 1) Try running
>
> sudo ldconfig
>
> .. then logging out and back in.
>
> and making sure that /usr/local/lib is in /etc/ld.so/conf
>
> 2) try setting `export LD_LIBRARY_PATH=/usr/local/lib`
>
> 3) Then if those things don't help comment out the lines here:
>
> http://trac.mapnik.org/browser/tags/release-0.6.1/SConstruct#L978
>
> ...that directs SCons to compile shapeindex. I assume that you may run into
> other compile problems, but still worth a shot to see if the remainder of
> the Mapnik library will compile without the optional shapeindex program.
>
> 4) Try pulling from the http://svn.mapnik.org/branches/0.7 codebase and
> try compiling that.
>
> Dane
>
>
> On Jan 6, 2010, at 7:25 AM, Thomas Woodham wrote:
>
> Thanks again, Dane.
>
> /usr/local/lib/libboost_program_options.so exists, and is a sym link to
> /usr/local/lib/libboost_program_options.so.1.41.0.
>
> I installed boost by following the instructions located at
> http://www.boost.org/doc/libs/1_41_0/more/getting_started/unix-variants.html#easy-build-and-install,
> however I had to customize the booststrap process by passing it
> "--with-python=/usr/local/bin/python --with-libraries=all".
>
> -Thomas
>
> On Wed, Jan 6, 2010 at 10:17 AM, Dane Springmeyer <[email protected]>wrote:
>
>> Hi Thomas,
>>
>> Okay, so now if finds boost_system, but even though boost_program_options
>> is specified in the linker command, things fail. Odd.
>>
>> Key line is: 'undefined reference to `boost::program_options' which
>> indicates to me that 'libboost_program_options' may not exist. Can you
>> confirm that it does?
>>
>> file /usr/local/lib/libboost_program_options.so
>>
>> shapeindex is an optional program and the build scripts only attempt to
>> compile it if 'boost_program_options' are found in earlier checks, so I
>> assume the library is there, but would be good to confirm before making
>> other guesses.
>>
>> What commands did you use to compile Boost 1.41?
>>
>> Dane
>>
>>
>> On Jan 6, 2010, at 7:00 AM, Thomas Woodham wrote:
>>
>> Dane,
>>
>> Thanks for the reply and the assist.  Your patch helped and removed the
>> notices in function __static_initialization_and_destruction_0(int, int),
>> however I'm still having issues at the same point.  See below for the new
>> error output:
>>
>> g++ -o utils/shapeindex/shapeindex utils/shapeindex/shapeindex.o
>> src/envelope.o plugins/input/shape/shapefile.o -Lagg -Lsrc -L/usr/lib
>> -L/usr/local/lib -lboost_program_options -lboost_iostreams
>> -lboost_filesystem -lboost_system
>> utils/shapeindex/shapeindex.o: In function `main':
>> shapeindex.cpp:(.text+0xcb): undefined reference to
>> `boost::program_options::options_description::m_default_line_length'
>> shapeindex.cpp:(.text+0x158): undefined reference to
>> `boost::program_options::options_description::options_description(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&, unsigned int,
>> unsigned int)'
>> utils/shapeindex/shapeindex.o: In function
>> `boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits> >, bool>::type
>> boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits>
>> >(boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits> const&)':
>> shapeindex.cpp:(.text._ZN5boost10filesystem6existsINS0_10basic_pathISsNS0_11path_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits> >, bool>::type
>> boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits>
>> >(boost::filesystem::basic_path<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> boost::filesystem::path_traits> const&)]+0x56): undefined reference to
>> `boost::filesystem::detail::status_api(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&,
>> boost::system::error_code&)'
>> utils/shapeindex/shapeindex.o: In function `std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&
>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> std::allocator<std::basic_string<char, std::char_traits<char>,
>> std::allocator<char> > > > const&, bool)':
>> shapeindex.cpp:(.text._ZN5boost15program_options10validators17get_single_stringIcEERKSbIT_St11char_traitsIS3_ESaIS3_EERKSt6vectorIS7_SaIS7_EEb[std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&
>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> std::allocator<std::basic_string<char, std::char_traits<char>,
>> std::allocator<char> > > > const&, bool)]+0x81): undefined reference to
>> `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t,
>> std::basic_string<char, std::char_traits<char>, std::allocator<char> >
>> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char>
>> > const&)'
>> shapeindex.cpp:(.text._ZN5boost15program_options10validators17get_single_stringIcEERKSbIT_St11char_traitsIS3_ESaIS3_EERKSt6vectorIS7_SaIS7_EEb[std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&
>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> >,
>> std::allocator<std::basic_string<char, std::char_traits<char>,
>> std::allocator<char> > > > const&, bool)]+0x2eb): undefined reference to
>> `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t,
>> std::basic_string<char, std::char_traits<char>, std::allocator<char> >
>> const&, std::basic_string<char, std::char_traits<char>, std::allocator<char>
>> > const&)'
>> collect2: ld returned 1 exit status
>> scons: *** [utils/shapeindex/shapeindex] Error 1
>> scons: building terminated because of errors.
>>
>> On Wed, Jan 6, 2010 at 9:21 AM, Dane Springmeyer <[email protected]>wrote:
>>
>>> Hello Thomas,
>>>
>>> Thanks for this report. It appears that direct linking to boost_system is
>>> now needed by the boost_filesystem library on RHEL. Previously this was only
>>> the case for Darwin/Mac OS X, but things must have changed with the new
>>> boost 1.41 package on RHEL.
>>>
>>> Can you try replacing the /utils/shapeindex/SConstruct with the one I
>>> have attached and let me know if that works?
>>>
>>> Thanks,
>>>
>>> Dane
>>>
>>>
>>>
>>>
>>>
>>>
>>> On Jan 6, 2010, at 5:46 AM, Thomas Woodham wrote:
>>>
>>>  Good morning,
>>>>
>>>> I'm trying to install mapnik 0.6.1 on RHEL 5 and get the following error
>>>> that I can't get past.
>>>>
>>>> g++ -o utils/shapeindex/shapeindex utils/shapeindex/shapeindex.o
>>>> src/envelope.o plugins/input/shape/shapefile.o -Lagg -Lsrc -L/usr/lib
>>>> -L/usr/local/lib -lboost_program_options -lboost_iostreams
>>>> -lboost_filesystem
>>>> utils/shapeindex/shapeindex.o: In function
>>>> `__static_initialization_and_destruction_0(int, int)':
>>>> shapeindex.cpp:(.text+0x41): undefined reference to
>>>> `boost::system::get_system_category()'
>>>> shapeindex.cpp:(.text+0x4b): undefined reference to
>>>> `boost::system::get_generic_category()'
>>>> shapeindex.cpp:(.text+0x55): undefined reference to
>>>> `boost::system::get_generic_category()'
>>>> shapeindex.cpp:(.text+0x5f): undefined reference to
>>>> `boost::system::get_generic_category()'
>>>> shapeindex.cpp:(.text+0x69): undefined reference to
>>>> `boost::system::get_system_category()'
>>>> utils/shapeindex/shapeindex.o: In function `main':
>>>> shapeindex.cpp:(.text+0xcb): undefined reference to
>>>> `boost::program_options::options_description::m_default_line_length'
>>>> shapeindex.cpp:(.text+0x158): undefined reference to
>>>> `boost::program_options::options_description::options_description(std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> > const&, unsigned int,
>>>> unsigned int)'
>>>> utils/shapeindex/shapeindex.o: In function
>>>> `boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> >, bool>::type
>>>> boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits>
>>>> >(boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> const&)':
>>>> shapeindex.cpp:(.text._ZN5boost10filesystem6existsINS0_10basic_pathISsNS0_11path_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> >, bool>::type
>>>> boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits>
>>>> >(boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> const&)]+0x1a): undefined reference to
>>>> `boost::system::get_system_category()'
>>>> shapeindex.cpp:(.text._ZN5boost10filesystem6existsINS0_10basic_pathISsNS0_11path_traitsEEEEENS_9enable_ifINS0_13is_basic_pathIT_EEbE4typeERKS7_[boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> >, bool>::type
>>>> boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits>
>>>> >(boost::filesystem::basic_path<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> boost::filesystem::path_traits> const&)]+0x56): undefined reference to
>>>> `boost::filesystem::detail::status_api(std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> > const&,
>>>> boost::system::error_code&)'
>>>> utils/shapeindex/shapeindex.o: In function `std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> > const&
>>>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> std::allocator<std::basic_string<char, std::char_traits<char>,
>>>> std::allocator<char> > > > const&, bool)':
>>>> shapeindex.cpp:(.text._ZN5boost15program_options10validators17get_single_stringIcEERKSbIT_St11char_traitsIS3_ESaIS3_EERKSt6vectorIS7_SaIS7_EEb[std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> > const&
>>>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> std::allocator<std::basic_string<char, std::char_traits<char>,
>>>> std::allocator<char> > > > const&, bool)]+0x81): undefined reference to
>>>> `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t,
>>>> std::basic_string<char, std::char_traits<char>, std::allocator<char> >
>>>> const&, std::basic_string<char, std::char_traits<char>, 
>>>> std::allocator<char>
>>>> > const&)'
>>>> shapeindex.cpp:(.text._ZN5boost15program_options10validators17get_single_stringIcEERKSbIT_St11char_traitsIS3_ESaIS3_EERKSt6vectorIS7_SaIS7_EEb[std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> > const&
>>>> boost::program_options::validators::get_single_string<char>(std::vector<std::basic_string<char,
>>>> std::char_traits<char>, std::allocator<char> >,
>>>> std::allocator<std::basic_string<char, std::char_traits<char>,
>>>> std::allocator<char> > > > const&, bool)]+0x2eb): undefined reference to
>>>> `boost::program_options::validation_error::validation_error(boost::program_options::validation_error::kind_t,
>>>> std::basic_string<char, std::char_traits<char>, std::allocator<char> >
>>>> const&, std::basic_string<char, std::char_traits<char>, 
>>>> std::allocator<char>
>>>> > const&)'
>>>> collect2: ld returned 1 exit status
>>>> scons: *** [utils/shapeindex/shapeindex] Error 1
>>>>
>>>> Any thoughts?  sudo python scons/scons.py configure
>>>> BOOST_INCLUDES=/usr/local/include BOOST_LIBS=/usr/local/lib was executed to
>>>> make sure it picks up the boost 1.41 libraries.
>>>>
>>>> Thanks for your help.
>>>>
>>>> -Thomas
>>>>
>>>> _______________________________________________
>>>> Mapnik-users mailing list
>>>> [email protected]
>>>> https://lists.berlios.de/mailman/listinfo/mapnik-users
>>>>
>>>
>>>
>>>
>>
>>
>
>
> _______________________________________________
> Mapnik-users mailing list
> [email protected]
> https://lists.berlios.de/mailman/listinfo/mapnik-users
>
>
_______________________________________________
Mapnik-users mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/mapnik-users

Reply via email to