LINUX.ORG.RU

Coffe


0

0

Ну пишу вот так <li>#include <stdio.h> <li>#include <unistd.h> <li>#include <asm/io.h> <li>void main() <li>{ <li>if (ioperm(0x378,1,1)) <li>{ <li>puts("LPT1 access denied!"); <li>exit(1); <li>} <li>outb(0,0x378); <li>} <li> <li>а мне выдает <li>undefinaed reference to 'outb' <li> в чем траблы?

anonymous


Надо включить оптимизацию (хоть какую-нибудь),
на что недвусмысленно намекает документация:

$ man outb

..............

>
> You compile with -O or -O2 or similar. The functions are
> defined as inline macros, and will not be substituted in
> without optimization enabled, causing unresolved refer-
> ences at link time.
>
.............


Удачи.

Ilja.

anonymous
()


Надо включить оптимизацию (хоть какую-нибудь),
на что недвусмысленно намекает документация:

$ man outb

..............

>
> You compile with -O or -O2 or similar. The functions are
> defined as inline macros, and will not be substituted in
> without optimization enabled, causing unresolved refer-
> ences at link time.
>
.............


Удачи.

Ilja.

anonymous
()

Клево! Все работает! Как я сам не догадался :)) А как теперь писать в 0x380? Простое переименование в ioperm и outb не помогло -- программа молча компилится, молча запускается а те ножки, на которых напряга должна бы меняться не реагируют... ioperm может менять до 0x3ff, может я не тот порт адресую? Мне нужно еще три управляемых ТТЛ выхода из компа....

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.