2017-03-09 6 views
0

Linux 드라이버를 빌드하려고하는데 yasm을 사용하여 빌드해야하는 .asm 파일을 통합하려고합니다. Makefile에서 어떻게 지정해야합니까? 현재이 파일은 S 파일이 아니기 때문에 "대상을 만들 규칙이 없습니다"라고 표시되어 있습니다. 접미어를 .S로 변경하면 기본 어셈블러를 사용하여 접미어를 작성하려고 시도하지만 접미어의 구문이 다르므로 실패합니다. 작동하게하려면 어떻게해야합니까? 는 kbuild 시스템이 구축되지 않은yasm 어셈블리 파일을 사용하여 Linux 커널 모듈을 빌드하십시오.

+1

yasm을 사용하여 빌드하는 규칙을 추가 하시겠습니까? – Jester

+0

나는 규칙을 추가했다 : xo : x.asm \t yasm -f elf64 $ <-o $ @ 그러나 도움이되지 않았다 : make [6] : *** 타겟'x.o ' , '요'에 필요한 –

답변

0

개체 파일은 파일이 _shipped 접미사없이 언급해야한다는 kbuild 규칙에서

<x>.o_shipped 

이름이 있어야합니다

<y>-m := <x>.o 

참조 Documentation/kbuild.modules.txt (섹션 "진 물방울 ") 더 많은 정보를 위해서.