Thread Can't locate ConfMain.pm in @INC (6 answers)
Opened by OlliP at 2019-12-13 10:38

Linuxer
 2019-12-13 15:56
#190977 #190977
User since
2006-01-27
3870 Artikel
HausmeisterIn

user image
Wenn die Anwendung komplett umgezogen wurde, muss da auch eine Datei ConfMain.pm liegen.
Wenn nicht, ist der Umzug schief gelaufen.

Vermutung wäre, dass ConfMain.pm parallel zur Skriptdatei lag.
Es gab zwischendurch bei Perl eine Umstellung, dass das "aktuelle" Verzeichnis nicht mehr in @INC enthalten ist.
Das könnte hier erklären, warum dieses Modul nicht mehr geladen werden kann.

Die Nutzung war zwar nicht ganz sauber, klappte aber meist recht gut. Der Punkt war und ist, dass das aktuelle Verzeichnis nicht unbedingt das Skript-Verzeichnis sein muss.
Es klappte aber oft, weil man entweder sowieso im Verzeichnis des Skriptes stand, oder, z.B. bei cgi-Skripten, weil man das Glück hatte, dass das aktuelle Verzeichnis dem entsprach, wo das Skript auch lag.


Ein blinder Versuch diesbezüglich wäre es, vor das use ConfMain; folgende Zeile einzubauen:

Code (perl): (dl )
1
2
use FindBin;           # determine script's directory
use lib $FindBin::Bin; # add script's directory to @INC


Doku:
- Perldoc:FindBin
- Perldoc:lib


Wenn das nicht klappt, musst Du wohl im alten System schauen, wie die Dateien strukturiert sind und genau diese Struktur mit den gleichen Dateien auch auf dem neuen Server aufbauen.
Im alten System muss es doch noch eine Datei ConfMain.pm geben.
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Can't locate ConfMain.pm in @INC