이 줄은 무엇을 의미합니까? /opt/glibc-2.14/etc$ sudo sh -c "echo '/usr/local/lib' >> ld.so.conf"

이 줄은 무엇을 의미합니까? /opt/glibc-2.14/etc$ sudo sh -c "echo '/usr/local/lib' >> ld.so.conf"

시도하다가 문제가 발생했습니다.glibc 2.14 설치이 오류가 발생합니다.

/home/myname/glibc_install/glibc-2.14/build/elf/ldconfig: 구성 파일을 열 수 없습니다. /opt/glibc-2.14/etc/ld.so.conf: 해당 파일이나 디렉터리가 없습니다.

이것고정시키다이것을 제안하다

:/opt/glibc-2.14/etc$ sudo sh -c "echo '/opt/lib' >> ld.so.conf"

AFAIK 무슨 말 sudo sh -c "echo '/opt/lib' >> ld.so.conf"sh프로그램(셸)을 열고 이 명령을 내리면 현재 디렉터리에 이름이 지정된 파일이 "echo '/opt/lib' >> ld.so.conf"생성되어 그 안에 저장된다는 것입니다. 그렇죠? 전체 행은 무엇을 의미합니까? 아니면 쉘이 단계별로 무엇을 수행합니까?ld.so.conf/opt/lib

답변1

명령을 sudo sh -c "echo '/opt/lib' >> ld.so.conf" 작은 조각으로 나눕니다.

sudo sh -c수퍼유저 권한으로 Bourne 쉘을 통해 쉘 명령을 실행함을 나타냅니다.

echo '/opt/lib' >> ld.so.conf따옴표 + \n(개행) 문자 내의 모든 내용은 파일 끝에 있는 ld.so.conf에 추가됩니다.

답변2

예, 혼란스럽습니다.) 첫 번째 장소는 프롬프트(작업 디렉터리 포함)인 것 같습니다.

그러므로 그렇게 해라

cd /opt/glibc-2.14/etc
sudo sh -c "echo '/opt/lib' >> ld.so.conf"

또는

echo '/opt/lib' | sudo tee >/dev/null -a /opt/glibc-2.14/etc/ld.so.conf

관련 정보