[Mapserver-DE] Fehler beim Kompilieren von mapserver?

Jan Hartmann j.l.h.hartmann at uva.nl
Mon Aug 2 19:08:01 CEST 2004


> Hallo Jan,
> 
> mein Provider sagt "Ja" zum Setzen von "SetEnv" in Apache via htaccess. 
> Aber mein Provider sagt "Nein" zum Ändern der profile-Datei, zumal diese 
> wohl nur aufgerufen wird, wenn der jeweilige User direkt am Rechner bzw. 
> am Server sitzt und dies kommt ja quasi nie vor.

Stimmt. MapServ wird fast nie direkt von der Kommandozeile angerufen 
(mapserv querystring=..). Das geschieht nur zur Verfertigung von 
standalone Karten, oder aus einer Scriptsprache. Dafür braucht man weder 
eine Webumgebung noch einen Provider, das macht man am eignen Rechner.


> Ein Kopieren der .so-libraries direkt ins cgi-Verzeichnis hat nichts 
> genützt. Nun versuche ich die libraries nicht dynamisch sondern statisch 
> zu linken beim Kompilieren von Mapserver. Muß mich aber erst einlesen.
> 

Was ist die Fehlermeldung in error.log?

Alle libraries müssen sich im "SetEnv" Verzeichnis befinden, also nicht 
in cgi-bin. Dort steht die MapServ executable, und die sucht ihre 
Libraries im "Setenv" Environment. Cgi-bin gehört nicht dazu (du 
könntest versuchen es in "SetEnv" aufzunehmen, aber schön ist das 
nicht). In meinem Fall stehen alle Libraries in "/scratch/lib" (habe 
alles kompiliert mit "./configure --prefix=/scratch"). Es sind die 
folgenden:

libgd.a
libgd.la
libgd.so
libgd.so.2
libgd.so.2.0.0

libgdal.1.1.so

libgeotiff.a
libgeotiff.so
libgeotiff.so.1
libgeotiff.so.1.2
libgeotiff.so.1.2.0

libgrass5.a
libgrass5.la
libgrass5.so
libgrass5.so.0
libgrass5.so.0.3.0

libpng.a
libpng.so
libpng.so.3
libpng.so.3.1.2.5

libpq.a
libpq.so
libpq.so.3
libpq.so.3.0

libproj.a
libproj.la
libproj.so
libproj.so.0
libproj.so.0.4.1


Beachte die vielen symbolischen Links! In so einer Situation (MapServer 
kompiliert vom Endnutzer ohne System-Rechte) kompiliert man am besten 
*alle* Programme und Bibliotheken von Grund auf mit "./configure 
--prefix=mydir". Am Ende, nach "make install", stehen dann alle 
benötigten Bibliotheken in "mydir/lib", und können von dort aus im 
"SetEnv" Verzeichnis kopiert werden.

Viel Erfolg!

Jan




This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)