Fehlermeldung beim Kompilieren...



  • Tach an alle,

    ich versuche mit KDevelop auf den Parallelport zuzugreifen. Sieht in etwa so aus:

    #include <asm/io.h>

    int main(int argc, char *argv[])
    {
    int base=atoi(argv[1]);
    int value=atoi(argv[2]);
    ioperm(base,3,1);
    outb(value,base);
    outb(0,base+2);
    cout << (inb(base+1));
    ioperm(base,3,0);
    }

    (+ die anderen Header natürlich [iostream.h etc])
    leider bringt der Compiler folgene Fehlermeldung:

    implicit declaration of function 'int ioperm(...)'

    Versteh ich nicht, da der Code von mehreren netten Jungs verschiedener HP's stammt.
    Hilfe!!!
    Danke schön!



  • ich weiss nicht ob du die Manpages kennst (gib mal man man auf der Konsole ein). Dann wüsstest du, dass ioperm(2) folgende Header benötigt

    #include <unistd.h> /* for libc5 */
    #include <sys/io.h> /* for glibc */
    


  • Am besten so:

    # if defined __GLIBC__
    #   include <sys/io.h>
    # else
    #   include <unistd.h>
    #   include <asm/io.h>
    # endif
    

    Martin



  • Bin eben noch ein wenig neu in der KDevelop-Gemeinde. Habe sonst nur mit Delphi (Linux und Windows) gearbeitet.


Anmelden zum Antworten