La Web del Programador: Comunidad de Programadores
 
    Pregunta:  9271 - PROBLEMAS AL COMPILAR CON GCC
Autor:  Javier Crespo
No lo entiendo:
Necesito enviar bytes a través del puerto del teclado (60h) y trato de hacerlo a través de las funciones "inb" y "outb", definidas en "sys/io.h"

Con este código:
/**************************
#include

int main(void)
{
unsigned char dato;
ioperm(0x60,1,1);
dato=inb(0x60);
return(0);
}
***************************/

Al compilar "gcc program.c -o program", me dice:

"/tmp/ccRPSpoA.o:In function `main':
/tmp/ccRPSpoa.o(.text+0x1d):Undefined reference to `inb'
collect2:Id returned 1 exit status"

¿Alguien me puede ayudar? Gracias.

  Respuesta:  victor hugo
creo te fala incluir la libreria en la directiva include al principio del programa.
por eso te manda el siguente error.
/tmp/ccRPSpoa.o(.text+0x1d):Undefined reference to `inb'
Saludos

  Respuesta:  Jorge Alzate
Al Compilar gcc debes indicarle con la opcion -I(esto es i mayúscula) el path donde se encuentra el archivo io.h y con -L el path de las librerias
ejemplo:
gcc -L/usr/lib -I/sys program.c -o program (aqui la ELE( -l )) y las letras finales de la libreria si se necesitará.
Saludos: