# mod_perl: Include-Dirs

## manuels

Moin,

ich möchte gerade Movable Type installieren, aber der Apache findet das Perl-Module nicht:

```
[Mon Mar 16 13:09:19 2009] [error] Can't locate MT/Bootstrap.pm in @INC (@INC contains: lib /home/httpd/perl /etc/perl /usr/lib/perl5/vendor_perl/5.8.8/i686-linux /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/site_perl/5.8.8/i686-linux /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/5.8.8/i686-linux /usr/lib/perl5/5.8.8 /usr/local/lib/site_perl . /usr/lib/apache2) at /var/www/localhost/cgi-bin/mt/mt.cgi line 11.\nBEGIN failed--compilation aborted at /var/www/localhost/cgi-bin/mt/mt.cgi line 11.\n

```

Das Modul steckt im Verzeichnis /var/www/localhost/cgi-bin/mt/lib, aber nach mt-check.cgi steckt dieser Pfad nicht in @INC:

```
    *  Movable Type version: 4.24-en

    * Current working directory: /

    * MT home directory: /usr/sbin/

    * Operating system: linux

    * Perl version: 5.8.8

    * Perl include path:

      /usr/sbin/extlib

      /usr/sbin/lib

      /home/httpd/perl

      /etc/perl

      /usr/lib/perl5/vendor_perl/5.8.8/i686-linux

      /usr/lib/perl5/vendor_perl/5.8.8

      /usr/lib/perl5/vendor_perl

      /usr/lib/perl5/site_perl/5.8.8/i686-linux

      /usr/lib/perl5/site_perl/5.8.8

      /usr/lib/perl5/site_perl

      /usr/lib/perl5/5.8.8/i686-linux

      /usr/lib/perl5/5.8.8

      /usr/local/lib/site_perl

      .

      /usr/lib/apache2

    * Web server: Apache

```

Wie bekomm ich denn nun das Modul da rein?

Danke für Tipps!

----------

## Scorpion_DE

Hi,

entsprechend des von dir gewählten Titels für dieses Thema gehe ich nachfolgend davon aus, daß du die Anwendung unter mod_perl laufen lassen möchtest.

Du hast die Möglichkeit zusätzliche Modulpfade in der /etc/apache2/modules.d/apache2-mod_perl-startup.pl zu setzen. Siehe dazu das bereits vorhandene Beispiel in dieser Datei:

```
use lib qw(/home/httpd/perl);
```

Eine andere Möglichkeit ist die Direktive PerlSwitches in der httpd.conf oder einer der eingebundenen (include) Konfigurationsdateien. Beispiel:

```
PerlSwitches -I/pfad/zu/den/modulen
```

Gruß Scorpion

----------

## manuels

Das scheint geklappt zu haben. Danke.

Nun habe ich aber das Problem, dass folgender Fehler kommt:

```
Got an error: Can't locate Apache/Request.pm in @INC (@INC contains: /var/www/localhost/htdocs/mt/plugins/WidgetManager/lib /var/www/localhost/htdocs/mt/plugins/spamlookup/lib /var/www/localhost/htdocs/mt/plugins/Textile/lib /var/www/localhost/htdocs/mt/plugins/StyleCatcher/lib /var/www/localhost/htdocs/mt/plugins/TypePadAntiSpam/lib /var/www/localhost/htdocs/mt/plugins/WXRImporter/lib /var/www/localhost/htdocs/mt/plugins/MultiBlog/lib /var/www/localhost/htdocs/mt/extlib /var/www/localhost/htdocs/mt/extlib /var/www/localhost/htdocs/mt/lib /etc/perl /usr/lib/perl5/vendor_perl/5.8.8/i686-linux /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl /usr/lib/perl5/site_perl/5.8.8/i686-linux /usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl /usr/lib/perl5/5.8.8/i686-linux /usr/lib/perl5/5.8.8 /usr/local/lib/site_perl . /usr/lib/apache2)
```

Wie es aussieht stammt diese Datei aus dem Paket www-apache/libapreq.

Es gibt allerdings nur noch www-apache/libapreq2. Dieses liefert Apache2::Request (man beachte die zwei!).

Einfaches umbenennen in der Datei von Apache::Request zu Apache2::Request funktioniert aber leider nicht.

Ist das überhaupt das richtige Paket, welches ich installiert habe?

----------

## manuels

*bump*

----------

## Scorpion_DE

Hi,

zu deinem neuen Problem habe ich im Moment keine Idee. Hast du www-apache/libapreq2 explizit installiert oder wurde das als Abhängigkeit zu einem anderen Paket hinzugenommen?

Auf meinem System existiert kein Paket www-apache/libapreq

```
portage # ls -al www-apache/libapreq

ls: cannot access www-apache/libapreq: No such file or directory
```

Nutzt du eventuell ein mod_perl 1.0? Vielleicht hilft dir dann die Entfernung eines Kommentars in der apache2-mod_perl-startup.pl. Siehe:

```
# enable if the mod_perl 1.0 compatibility is needed

#use Apache2::compat ();
```

Gruß Scorpion

----------

## manuels

Nein, libapreq2 habe ich selber installiert, da ich gesehen habe, dass mir Apache::Request fehlt.

libapreq (Version 1) existiert bei mir auch nicht. Wie es aussieht, hat es aber mal existiert.

Ich nutze www-apache/mod_perl-2.0.3-r2

----------

