Boost logo

Boost Users :

From: John Maddock (john_at_[hidden])
Date: 2006-09-05 04:49:54


Matthew Bourdua wrote:
>> 6. I commented out the #error statement, and added the line
>> "#define BOOST_COMPILER_VERSION 8.0" - Was this a mistake?

Nope should be OK, just means we know nothing about that platform and
haven't configured for it: but you know that already :-)

>> 7. Next build, I got a fatal error: <locale>, which is
>> #included in regex_workaround.hpp could not be found.
>>
>> 8. I "fixed" this by defining BOOST_NO_STD_LOCALE - because I
>> noticed that this would cause the compiler to skip over the #include
>> statement - Was this a mistake?

That's fine, but you'll need to rebuild the lib with the same define set.
Best to define it in boost/regex/user.hpp.

>> 9. Now when I build I get 3 warnings on lines 52,53, and 54 of
>> interlocked.hpp that _InterlockedIncrement, _IterlockedDecrement, and
>> _InterlockedCompareExchange are not available as intrinsic functions.
>>
>> 10. I also get a number of unusual link errors:
>>
>> - an "unresolved external" link error for
>> "_InterlockedDecrement" - doesn't make sense since
>> InterlockedDecrement is a valid WinCE 5.0 function (and the correct
>> headers and libraries are included in the build)
>>
>> - an "unresolved external" link error for "basic_regex<
>> wchar_t, ."
>>
>> - a "machine type 'X86' conflicts with target machine type
>> 'THUMB'" link error
>>
>>
>>
>> I am able to get around the first error by defining
>> BOOST_USE_WINDOWS_H because I noticed that this would cause the
>> compiler to use a different chunk of code (is this a mistake?).

Sounds correct.

>> However, I am not certain what to do about the unresolved
>> boost_regex, and target machine conflict errors. I believe both
>> conflicts exist because I built the boost libraries for X86
>> deployment, and they do not link correctly for Win CE deployment. I
>> built the libraries using bjam, according to this page:
>> http://www.boost.org/more/getting_started.html. Frankly, I don't
>> know how to build the libraries in such a way that they can target
>> Win CE (assuming this is the issue).

Easiest way would be to add the regex sources in libs/regex/src directly to
the project. Boost.Regex is "just a bunch of sources" so you can build it
any way you want. You may need to define BOOST_REGEX_NO_LIB when building
to stop it from trying to automatically link to the prebuild lib files, but
other than that that's it.

Good luck!

John.


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net