현재는 pkg-config
환경 /usr/lib/pkgconfig
변수를 내보내서 사용자를 위해 조정할 수 있지만 PKG_CONFIG_PATH
다시 루트에 대해 이 작업을 수행하는 것을 잊어버렸고 내 플러그인이 올바르게 설치되지 않은 이유를 궁금해하며 시간을 낭비했습니다(makefile 사용 pkg-config
). 그렇다면 항상 /usr/lib
합계를 볼 수 있도록 시스템 전체에 어떻게 설정합니까 /usr/local/lib
?
답변1
환경 변수를 정의하는 전통적인 장소는 시스템 전체입니다 /etc/profile
. 이 파일은 로컬로(텍스트 모드 콘솔에서) 또는 원격으로(ssh를 통해) 텍스트 모드 세션에 로그인할 때 Bourne 스타일 셸(bash, ksh, ash 포함)에서 읽습니다. 그래픽 환경에 로그인한 경우 /etc/profile
로그인 관리자, 데스크탑 환경 및 운영 체제 배포에 따라 읽힐 수도 있고 읽히지 않을 수도 있습니다.
더 나은 접근 방식(시스템에서 사용 가능한 경우)은 에서 환경 변수를 정의하는 것입니다 /etc/environment
. 이 파일의 독자는 다음과 같습니다.폴리아크릴아미드, 구체적으로pam_env
기준 치수. 이러한 변수는 PAM을 사용하는 로그인 방법으로 시작된 모든 세션에서 사용할 수 있으며 모듈은 또는 pam_env
에서 참조됩니다 ./etc/pam.conf
/etc/pam.d/$method
답변2
아마도 가장 쉽지만 100% 신뢰할 수 있는 방법은 아닌 /etc/bashrc
.
개별 사용자가 이를 처리하지 않도록 설정할 수 있으므로 신뢰할 수 없습니다 /etc/bashrc
.
좀 더 정교한 방법을 원한다면 래퍼를 만들어 설정할 수 있습니다. 먼저 이름을 변경 pkg-config
한 pkg-config-real
다음 pkg-config
변수를 설정하기 위해 이름이 지정된 새 스크립트를 만듭니다.
(루트로 또는 sudo를 사용하여)
cd /usr/bin
mv pkg-config pkg-config-real
그런 다음 /usr/bin/pkg-config에 다음 내용으로 새 파일을 만듭니다.
#!/bin/bash
export PKG_CONFIG_PATH=/usr/lib:/usr/local/lib
pkg-config-real $*
실행 가능하게 만드십시오.
chmod 755 pkg-config