Linux-Ubuntu 터미널에서 명령을 찾을 수 없는 문제

Linux-Ubuntu 터미널에서 명령을 찾을 수 없는 문제

make내 친구는 나와 두 번째 친구가 이전에 성공적으로 컴파일한 응용 프로그램을 호출하는 데 문제가 있습니다.

arm-arago-linux-gnueabi-이 파일은 기본적으로 실행 파일(예: arm-arago-linux-gnueabi-gcc기본적으로 GCC 컴파일러) 이라고 불리는 여러 파일이 포함된 /bin 하위 디렉터리가 있는 "linux-devkit" 패키지를 사용합니다 .

컴파일 프로세스의 일부에는 프로젝트의 Makefile 디렉토리를 호출할 때 make install"linux-devkit 파일"에 대한 호출이 포함됩니다 . 나 또는 두 번째 친구가 Linux 터미널에서 이 명령을 호출하면 모든 것이 잘 작동합니다. 하지만 내 친구가 이렇게 하면 다음과 같은 오류 메시지가 나타납니다.

arm-arago-linux-gnueabi-gcc: No such command found

(참고: 포르투갈어 우분투에서 번역됨)

~/linux-devkit/bin수많은 테스트 후에 우리는 흥미로운 차이점을 발견했습니다. 터미널을 통해 폴더 로 이동하여 arm-arago-linux-gnueabi-gcc두 작업 시스템 중 하나를 호출하면 기본적으로 파일을 찾았지만 명령 사양이 누락되었다고 대답합니다.

arm-arago-linux-gnueabi-gcc: no input files

이는 예상되는 오류 메시지입니다. 하지만 문제의 친구가 동일한 명령을 실행하면 오류 메시지는 다음과 같습니다.

bash: ./arm-arago-linux-gnueabi-gcc: File or directory not found

(참고: 포르투갈어 우분투에서 번역됨)

lsNautilus를 호출하고 사용할 때에도 터미널이 이를 사용하여 파일을 찾을 수 없는 것과 같습니다 !

아니면 해당 파일에 대한 사용자 권한이 100% 동일하므로 문제가 없을 것입니다. 무슨 일이 일어났는지 추측하는 사람 있나요?


편집하다:

Volker Siegel로부터 얻은 답변은 다음과 같습니다.

분명 파일은 있을텐데...

도움을 주셔서 감사합니다.

~/re8k/linux-devkit/bin$ export LC_ALL=C
~/re8k/linux-devkit/bin$ command -v arm-arago-linux-gnueabi-gcc
~/re8k/linux-devkit/bin$ ls -ld ~/re8k/linux-devkit ~/re8k/linux-devkit/bin ./arm-arago-linux-gnueabi-gcc
-rwxr-xr-x  1 diogenes diogenes 448843 Jul  1  2011 ./arm-arago-linux-gnueabi-gcc
drwxr-xr-x 12 diogenes diogenes   4096 Apr 15 17:28 /home/diogenes/re8k/linux-devkit
drwxr-xr-x  2 diogenes diogenes   4096 Sep  3 10:59 /home/diogenes/re8k/linux-devkit/bin
~/re8k/linux-devkit/bin$ head -1 ./arm-arago-linux-gnueabi-gcc
ELF��4�g4('$44�4�44�4������������HH�H�DDQ�tdR�td���/l!��ԟX-linux.so.2GNUGNUI������,�_�_b�
diogenes@diogenes-VirtualBox:~/re8k/linux-devkit/bin$ mount | grep "\s$(stat -c%m .)\s"
/dev/sda1 on / type ext4 (rw,errors=remount-ro)

편집 2:

diogenes@diogenes-VirtualBox:~/re8k/linux-devkit/bin$ ./arm-arago-linux-gnueabi-gcc
bash: ./arm-arago-linux-gnueabi-gcc: No such file or directory

보완할 인쇄 화면:

터미널 인쇄 화면

답변1

Volker Siegel이 라이브러리 문제를 제기했을 때, Linux를 사용하는 한 기자도 일부 라이브러리가 없어서 같은 문제에 직면했다고 말했습니다.

Volker가 제안한 대로 이를 터미널에서 실행했지만 sudo apt-get install ia32-libs시스템에서 해당 라이브러리를 더 이상 사용할 수 없다고 보고하여 다른 라이브러리를 설치해야 한다고 제안했습니다.

lib32z1 
lib32ncurses5 
lib32bz2-1.0

설치 후 문제가 해결되었습니다.

답변2

이 문서 보기 arm-arago-linux-gnueabi-gcc:

첫 번째 줄에 인터프리터가 필요한 스크립트 파일인 것 같지만 찾을 수 없습니다. (또는 통역사가 요구하는 파일조차 찾을 수 없습니다...)

인터프리터는 파일의 첫 번째 줄에 정의됩니다.

#!/bin/bash

스크립트를 보는 것만으로는 문제가 명확하지 않은 경우 자세한 내용을 제공해 주세요.

질문에 다음 명령의 출력을 몇 줄만 추가하는 것이 가장 좋습니다.

$ export LC_ALL=C
$ cd ~/linux-devkit/bin
$ command -v arm-arago-linux-gnueabi-gcc
$ ls -ld ~/linux-devkit ~/linux-devkit/bin ./arm-arago-linux-gnueabi-gcc
$ head -1 ./arm-arago-linux-gnueabi-gcc
$ mount | grep "\s$(stat -c%m .)\s"

(첫 번째 줄은 이 셸에서 영어 오류 메시지를 받고, 마지막 명령은 디렉터리가 포함된 파티션에 대한 파일 시스템과 마운트 옵션을 표시합니다.)

관련 정보