Altera® 예제 프로토콜을 통한 Linux 구성(CvP) 드라이버를 빌드할 때 다음과 같은 오류 메시지가 발생할 수 있습니다.
altera_cvp.c: 'altera_cvp_wait_for_bit' 함수에서:
altera_cvp.c:243:3: 오류: 'TASK_UNINTERRUPTIBLE' 선언되지 않음(이 함수에서 처음 사용)
altera_cvp.C:243:3: 참고: 선언되지 않은 각 식별자는 표시되는 각 함수에 대해 한 번만 보고됩니다.
altera_cvp.c:243:3: 오류: 함수 'schedule_timeout'의 암시적 선언 [-Werror=implicit-function-declaration]
altera_cvp.c: 'altera_cvp_open' 함수에서:
altera_cvp.c:318:11: 오류: 불완전한 유형에 대한 포인터 역참조
altera_cvp.c:318:23: 오류: 'O_ACCMODE' 선언되지 않음(이 함수에서 처음 사용)
altera_cvp.c:318:37: 오류: 'O_RDONLY' 선언되지 않음(이 함수에서 처음 사용)
altera_cvp.c: 'altera_cvp_release' 함수에서:
altera_cvp.c:337:11: 오류: 불완전한 형식에 대한 포인터 역참조
altera_cvp.c:337:23: 오류: 'O_ACCMODE' 선언되지 않음(이 함수에서 처음 사용)
altera_cvp.c:337:37: 오류: 'O_RDONLY' 선언되지 않음(이 함수에서 처음 사용)
altera_cvp.c: 최상위 수준:
altera_cvp.c:413:8: 오류: 변수 'altera_cvp_fops'에 이니셜라이저가 있지만 불완전한 유형이 있습니다.
altera_cvp.C:414:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 '소유자'
altera_cvp.c:414:2: 경고: 구조체 이니셜라이저의 초과 요소[기본적으로 사용됨]
altera_cvp.c:414:2: 경고: ('altera_cvp_fops'의 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.C:415:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 'llseek'
altera_cvp.c : 415 : 13 : 오류 : 'no_llseek'가 여기에 선언되지 않았습니다 (함수가 아님).
altera_cvp.C:415:2: 경고: 구조체 이니셜라이저의 초과 요소[기본적으로 사용됨]
altera_cvp.c:415:2: 경고: ('altera_cvp_fops'에 대한 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.c:416:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 '읽기'
altera_cvp.c:416:2: 경고: 구조체 이니셜라이저의 초과 요소[기본적으로 사용됨]
altera_cvp.c:416:2: 경고: ('altera_cvp_fops'에 대한 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.c:417:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 '쓰기'
altera_cvp.C:417:2: 경고: 구조체 이니셜라이저의 초과 요소[기본적으로 사용됨]
altera_cvp.c:417:2: 경고: ('altera_cvp_fops'에 대한 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.C:418:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 'open'
altera_cvp.C:418:2: 경고: 구조체 이니셜라이저의 초과 요소 [기본적으로 사용됨]
altera_cvp.c:418:2: 경고: ('altera_cvp_fops'의 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.c:419:2: 오류: 이니셜라이저에 지정된 알 수 없는 필드 'release'
altera_cvp.c:419:2: 경고: 구조체 이니셜라이저의 초과 요소[기본적으로 사용됨]
altera_cvp.c:419:2: 경고: ('altera_cvp_fops'에 대한 초기화에 가까움) [기본적으로 사용됨]
altera_cvp.c: 'altera_cvp_init' 함수에서:
altera_cvp.c:482:2: 오류: 함수 'alloc_chrdev_region'의 암시적 선언 [-Werror=implicit-function-declaration]
altera_cvp.c:496:3: 오류: 함수 'unregister_chrdev_region'의 암시적 선언 [-werror=implicit-function-declaration]
이 문제를 해결하려면 altera_cvp_1.0.tar.gz.gz 내에 포함된 파일 altera_cvp.c에 다음 세 개의 추가 헤더 파일이 포함되어 있는지 확인하십시오.
#include <linux/fcntl.h> /*O_ACCMODE 수정에 도움이 됨*/
#include <linux/sched.h> /*TASK_UNINTERRUPTIBLE 문제 해결에 도움 */
#include <linux/fs.h> /*구조체 인티에이라이저 수정에 도움 */