
예전에는 정상적으로 make를 실행할 수 있었지만 이제는 슈퍼유저로 make를 실행해야 합니다. 그렇지 않으면 C 컴파일러가 실행 파일을 생성할 수 없다는 오류 메시지가 표시됩니다. 왜 이런 일이 일어났나요?
답변1
실수로 sudo make를 한 번 수행했지만 이제 make는 sudo에서 생성되어 일반 사용자가 쓸 수 없는 파일을 다시 쓰거나 디렉토리에 써야 할 수 있으므로 작동하지 않을 수 있습니다.
답변2
make
와 에는 차이가 있습니다 make install
. 당신의 물건만 컴파일하고, 시스템의 실행 파일을 설치하도록 복사하십시오. 그런 다음 sudo make install
대상 디렉터리(/bin, /sbin, /usr/bin ...)에 대한 쓰기 권한을 얻기 위해 종종 make install을 루트( )로 실행해야 합니다 . make
루트 권한 없이 컴파일 자체가 실패한다고 말하는 것은 참으로 어색합니다.
- 사용자로서 빌드하려는 파일(모든)에 대한 읽기 및 쓰기 액세스 권한이 있는지 확인하십시오. 특히 일부 제3자(USB키, 웹 등)로부터 소스를 얻는 경우 작성자가 권한을 어떻게 설정했는지 누가 알겠습니까?
make
그런 다음 개체 파일을 생성할 폴더에 대한 읽기 및 쓰기 액세스 권한이 있는지 확인하십시오 .- 그렇다면 우리에게 구체적으로 말해주세요. 어떤 오류가 발생했나요? 공유할 로그가 있나요?