
On Wed, Jul 29, 2009 at 4:32 AM, John Maddock<john@johnmaddock.co.uk> wrote:
Sorry I must have missed that, what's the problem/fix?
The "error: link=shared together with runtime-link=static is not allowed" problem is the newest problem I have, appeared in recent versions, prevents us from doing a complete build.
You simply can not mix dll's with the static runtime - doing so will in almost all circumstances cause your application to crash.
The ICU renaming thing, well, <quick google search>, Ooo, looky, the 2nd result (1st is the Boost.Regex docs) is one of my old (well, the most recent one) posts on this exact subject on the boost-users mailing list. :) http://lists.boost.org/boost-users/2008/12/43214.php I have made much older posts as well, but google cannot find them it seems... But yea, ICU version 3 (and they are *well* past that now, version 3 is really old now) changed the naming convention of their shared libraries, thus Boost does not link with it without renaming things. Check that post for what they were.
Well... As of ICU-4.2, the names of the libraries are documented here: http://userguide.icu-project.org/icufaq#TOC-How-do-I-install-the-binary-vers... and match what the Jamfile assumes (and what I downloaded in the binary package), this information: http://source.icu-project.org/repos/icu/icu/tags/release-4-2-1/readme.html#H... also uses the same filenames, for example icuin.lib/dll and not icui18n.lib/dll.
The version of ICU I have is icu4c-3_8-src.zip, so I am not sure if that is version 4, or 3.8, or what... Let me hunt for a readme, ah, so it is 3.8. Well, in the windows version at least of 3.8, the libraries had those different names. I apparently last built that on October 18th, 2007, so yea, a bit old by now. I will rebuild with the latest ICU soon to verify the names are correct again.