C 프로그램을 init 파일과 통합하는 방법은 무엇입니까?

C 프로그램을 init 파일과 통합하는 방법은 무엇입니까?

그래서 저는 busybox를 이용하여 최소한의 운영체제를 구축해보려고 합니다. 내가 원하는 것은 BIOS에서 .net 프로그램을 실행하고 싶은 것입니다. 하지만 리눅스가 .net 프로그램을 실행할지는 확신할 수 없기 때문에 경로를 정리하기 위해 .net 프로그램 대신 C 프로그램을 사용합니다. initrd.img 파일을 성공적으로 생성하고 있습니다. 이제 initrd.img 파일을 생성하기 전에. 내 것을 통합하고 싶어요안녕하세요 c초기화 파일을 사용하여 프로그램합니다.

이 명령은 파일을 읽고 C 프로그램 코드를 성공적으로 읽는 데 사용되었습니다.echo 'cat /etc/hello.c' >> init

이제 이것을 실행하고 싶습니다.안녕하세요 c. 그래서 다음 명령을 실행해 보았지만 cat명령대로 작동하지 않습니다.

echo 'gcc -o echo /etc/hello.c' >> init
echo 'chmod +x echo' >> init
echo './echo' >> init

내가 받은 오류는 다음과 같습니다.

/init: line 6: gcc: not found
chmod: echo: No such file or directory
/init: line 8: ./echo: not found

답변1

gccinitrd에 스크립트가 없기 때문에 스크립트가 실패합니다.

hello.cinitrd에 게시 해서는 안 됩니다 . 프로그램을 빌드하고 게시해야 합니다.저것그러나 당신의 initrd에서는. 프로그램을 실행하려고 할 때 프로그램의 전체 경로도 지정해야 합니다.

관련 정보