내 모듈 빌드의 출력을 리다이렉트하여 소스 아티팩트를 분리하고 싶습니다. 이 모듈의 출력을 내 소스 디렉토리에 일어나는 것을 제외하고는 제대로 작동리눅스 모듈 빌드 출력 리디렉션
obj-m += hello-1.o
all:
make ARCH=arm CROSS_COMPILE=arm-eabi- -C /work/TI-Android-ICS-4.0.3_AM37x_3.0.0/kernel M=$(PWD) modules
clean:
make ARCH=arm CROSS_COMPILE=arm-eabi- -C /work/TI-Android-ICS-4.0.3_AM37x_3.0.0/kernel M=$(PWD) clean
: 같은
내 메이크 보인다. 나는
난이 일부 출력 파일에서이 있다는 사실에서 유래 가정 ...이 같은 빌드에 실패하고 각 줄에 {내 출력 dirctory의 경로} O =를 추가했지만, 모듈 빌드에서 사용되는 커널 빌드 및 "O ="로 출력 디렉토리를 변경하면 그와 충돌합니다.ERROR: Kernel configuration is invalid. include/generated/autoconf.h or include/config/auto.conf are missing. Run 'make oldconfig && make prepare' on kernel src to fix it.
WARNING: Symbol version dump /work/development/linux/driver/blah/Module.symvers is missing; modules will have no dependencies and modversions.
기존 빌드 인프라를 사용하여이를 수행하는 방법이 있습니까?
귀하의 질문은 불분명하지만, 메이크 파일은'빌드 그 어디도 .../kernel'는 소스 디렉토리'추측하고있어 모듈 '이 상주합니다. 그 makefile을 보지 않고서는 우리가 당신에게 특별한 대답을 줄 수는 없습니다. 제품을 다른 곳으로 옮기려면 사소한 일이거나 실제 고통이 될 수 있습니다. – Beta
@ 베타 명확성이 부족하여 죄송합니다. 커널은 실제로 /work/TI-Android.../kernel에 있습니다. 내 모듈 소스는 위에 나열된 makefile을 실행하는/work/mymodule에 있습니다. –