Updated InstallationTroubleshooting (markdown)

ThomasG77 2011-12-10 08:31:54 -08:00
parent 95b819f8d4
commit d0467e0c9d

@ -121,7 +121,7 @@ Note the -a setting which makes your system's installed regex symbols to be upda
src/expression_string.cpp: In member function "void mapnik::expression_string::operator()(const mapnik::regex_match_node&) const":
src/expression_string.cpp:79: error: "fromUTF32" is not a member of "icu_3_8::UnicodeString"
* *Solution*: The above errors tells basically that function UnicodeString::fromUTF32(...) used in Mapnik code isn't provided by your current ICU installation (above is 3.8). You need at least 4.1.4 (see #482 for more details). Likely, you are compiling Mapnik from svn or a more recent version than the 7.0 branch with your distribution's (above was Ubuntu 8.04) outdated ICU package (version<4.1.4). Remove update your ICU package or both remove your distribution's ICU package (eg. sudo apt-get remove libicu*) and compile and install ICU from source (from [http://icu-project.org/download/]).
* *Solution*: The above errors tells basically that function UnicodeString::fromUTF32(...) used in Mapnik code isn't provided by your current ICU installation (above is 3.8). You need at least 4.1.4 (see #482 for more details). Likely, you are compiling Mapnik from svn or a more recent version than the 7.0 branch with your distribution's (above was Ubuntu 8.04) outdated ICU package (version<4.1.4). Remove update your ICU package or both remove your distribution's ICU package (eg. sudo apt-get remove libicu*) and compile and install ICU from source (from [http://icu-project.org/download/](http://icu-project.org/download/)).
### ICU not found
@ -130,7 +130,7 @@ Note the -a setting which makes your system's installed regex symbols to be upda
from _mapnik import *
ImportError: libicudata.so.38: cannot open shared object file: No such file or directory
* *Solution*: Mapnik's source code and libraries depend on Boost library (libboost*) which in turn -for the libboost regex library- depends on ICU library (libicu*). If you have compiled both libboost and libicu from source (eg. you wanted to build the bleeding edge Mapnik's svn/trunk) ; you likely did not remove your system's libicu* packages, build libboost first against those old ICU install libraries, then erased the latter libraries to install the ICU source newer libraries, which made libboost still linked to old libraries. In short, you should : a) build libUCI to update your system's installed version, b) build libboost that links to the new libUCIs.
* *Solution*: This may simply occur because your mapnik library was compiled for a different ICU version than your currently installed ICU library. For example, your Mapnik was compiled and linked against libicu 3.8 while you have later on compiled and installed libicu v4.x. You should 1) check that libicu is installed and same version as the error (find -name "*libicu*.so*" /usr/ ). 2) If the error's mentioned ICU version and the find installed ICU version do not differ, try running "$ ldconfig" as a superuser ; restart python and see if the python import command works now. 3) If ICU versions did differ (error message <> installed version), you have install a newer/older Mapnik or ICU libraries so that Mapnik's ICU requirements and your install library match. Typically, if you compiled and installed Mapnik from SVN/trunk and libicu was installed with your package manager, remove the latter package first (eg. apt-get remove libicu* on Debian/Ubuntu) and compile+install libicu from source (take newest ICU4C or SVN : [http://site.icu-project.org/download]).
* *Solution*: This may simply occur because your mapnik library was compiled for a different ICU version than your currently installed ICU library. For example, your Mapnik was compiled and linked against libicu 3.8 while you have later on compiled and installed libicu v4.x. You should 1) check that libicu is installed and same version as the error (find -name "*libicu*.so*" /usr/ ). 2) If the error's mentioned ICU version and the find installed ICU version do not differ, try running "$ ldconfig" as a superuser ; restart python and see if the python import command works now. 3) If ICU versions did differ (error message <> installed version), you have install a newer/older Mapnik or ICU libraries so that Mapnik's ICU requirements and your install library match. Typically, if you compiled and installed Mapnik from SVN/trunk and libicu was installed with your package manager, remove the latter package first (eg. apt-get remove libicu* on Debian/Ubuntu) and compile+install libicu from source (take newest ICU4C or SVN : [http://site.icu-project.org/download](http://site.icu-project.org/download)).
* *Description*: International Components for Unicode libs are installed but Scons says they could not be found.