2012-03-17 1 views
1

다음 I/O 포트 예를 here에서 시도했습니다.사용자로 I/O 포트 프로그래밍

#include<stdio.h> 
#include<unistd.h> 
#include<asm/io.h> 

#define baseport 0x378 

int main() 
{ 
if(ioperm(baseport,3,1)) 
    { 
    perror("ioperm"); 
    exit(1); 
    } 
    outb(0,baseport); 
    exit(0); 
} 

나는 위의 링크에서 권고 한 gcc -o port ports.c (위의 코드)을 사용하고 있습니다. 그러나 그것은 나에게 다음과 같은 오류를주고 즉

ports.c:3:19: fatal error: asm/io.h: No such file or directory 
    compilation terminated. 

다른 포함하는 헤더 파일 대신 ASM/io.h 또는 (가 간단한 프로그램입니다) 그 일을 어떤 다른 방법이 있나요?

답변

4

이것은 구현에 따라 다를 수 있으며 ioperm은 표준이 아닙니다. 현대 glibc

리눅스에

, 당신은 <sys/io.h>이 필요합니다, 당신의 코드는 (exit에 대한) <stdlib.h>이 없습니다.

관련 문제