
John Maddock 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.
My complaint here wasn't that this was fixed, but rather that I think someone should be able to do a --build-type=complete and have all the supported variant of the libraries built. In the case of with ICU it would only build the shared versions. It shouldn't still try to build both when building with ICU thus causing the error and not building anything at all.
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.
Um, the problem isn't that the build system wanted icuin and got given icui18n etc, it's the other way round. It wants icu18n & icudata, and is given icuin & icudt instead. if $(HAVE_ICU) { gHAS_ICU = true ; gICU_CORE_LIB = icuuc ; gICU_IN_LIB = icui18n ; gICU_DATA_LIB = icudata ; gICU_CONFIG_CHECKED = true ; } The else if clause right below that is kinda complicated and I'm not entirely following it, but it seems the build system is following two different path both building with ICU when ICU_PATH is set depending on whether HAVE_ICU is set. (My reading of the documentation suggest setting -sHAVE_ICU=1 to build with ICU.) As a test, I just downloaded the latest ICU 4.2 binary on Windows with VC9 and attempting to build using trunk, setting -sHAVE_ICU=1 -sICU_PATH="...". ...failed updating 5 targets... ...skipped 6 targets... ...updated 47 targets... When only ICU_PATH is set, it builds fine. ...updated 58 targets... KTC -- Only two things are infinite, the Universe and Stupidity. And I'm not quite sure about the former. - Albert Einstein