siggi: c modul in perl einbetten

Hi FG,

Ich versuche gerade krampfhaft, mir beizubringen wie man C-Module in Perl einbindet. Dabei folge ich den Anweisungen der manpage perlxstut, sie ist als html abgelegt unter:

http://www.we.fh-osnabrueck.de/fbwe/vorlesung/edv1/perl5-doc1/perlxstut.html

Problem: Dat Dingen fungsionierd nisch!

Ich komme problemlos bis an die Stelle wo ich mein "hello" Skript ausführen soll, dann sagt mir der Server:

Can't locate loadable object for module Mytest in @INC (@INC contains: ./blib /u
sr/local/lib/perl5/i386-bsdos/5.00404 /usr/local/lib/perl5 /usr/local/lib/perl5/
site_perl/i386-bsdos /usr/local/lib/perl5/site_perl .) at hello line 5

das Skript selber sieht so aus:

#! /opt/perl5/bin/perl

use lib './blib';

use Mytest;
Mytest::hello();

Hat hier irgendjemand mehr Ahnung als ich?

  1. Can't locate loadable object for module Mytest in @INC (@INC contains: ./blib /u
    sr/local/lib/perl5/i386-bsdos/5.00404 /usr/local/lib/perl5 /usr/local/lib/perl5/
    site_perl/i386-bsdos /usr/local/lib/perl5/site_perl .) at hello line 5

    Sieht so aus, als hätte Perl nach Kräften versucht, in allen genannten Verzeichnissen Deinen "loadable module" zu finden und zu laden. Das ist ihm nicht gelungen. Gründe dafür könnte es reichlich geben - am wenigstens schuld dürfte das Perl-Skript sein.
    Ich habe allerdings keine Ahnung, wie ein C-Modul geschrieben sein muß, damit Perl ihn laden kann ... dafür gibt es natürlich auch wieder eigene manpages.

    das Skript selber sieht so aus:
    use lib './blib';
    use Mytest;

    Wenn ich mich nicht täusche, dann ist "use" eine Funktion und liefert einen Returncode. Was hältst Du davon, diesen mal abzufragen ...

    Mytest::hello();

    ... bevor Du eine Funktion daraus aufrufst?

    1. Danke für die Hinweise,

      mal sehn, was sich tun läßt.

      Die manpages hab ich leider schon alle durch, die sind zwar recht umfangreich, haben aber leider nicht sowas wie ne FAQ.