그놈 세션에 환경 변수를 어떻게 설정합니까? 설정해야합니다. export SDL_AUDIODRIVER=alsa 소리가 제대로 작동하도록합니다. 어떻게이 변수가

내 시스템에서 SDL을 사용하는 앱의 경우 환경 변수를 설정해야합니다.

export SDL_AUDIODRIVER=alsa

소리가 제대로 작동하도록합니다. 어떻게이 변수가 모든 응용 프로그램 (노틸러스, 또는 사용하여 응용 프로그램을 실행하면 너무에 대한 존재한다는 것을 나의 GNOME 세션을 설정하는 DBGL , 애플 리케이션이 제대로 작동)?

편집하다:

내가 설정하지 않은 구성 파일 (및 각 시스템을 재설정 한 후)을 사용할 수 없습니다.

  • .xsession
  • .xsessionrc
  • .gnomerc
  • .bash_profile
  • .profile<-일반적인 경우에는 작동하지만 배포판이 변수를 다른 곳에 설정 한 경우에는 작동하지 않습니다.
  • /etc/profile


답변

SDL_AUDIODRIVER 변수가 어딘가에 설정 해제되었을 수 있습니다. 시작 스크립트와 관련된 문제에 사용하는 전략 중 하나는 파일을 작성 / 삭제하여 디버그 에코 명령문을 활성화 / 비활성화하는 간단한 방법입니다. 당신은 추가하여 시작할 수 있습니다

debug_msg() {
        test -f $HOME/.debug && echo "$@" 1>&2
}

debug_msg "running ~/.bashrc ($0), SDL_AUDIODRIVER = '$SDL_AUDIODRIVER'"

.bashrc, .bash_profile, .profile 및 / etc / profile을 사용하여 값이 있고 값이 변경되는 경우와 위치를 확인하십시오.


답변

https://help.ubuntu.com/community/EnvironmentVariables 는 환경 변수를 설정할 수있는 네 곳에 대해 이야기합니다.

  • ~/.pam_environment-[…] 스크립트 파일이 아니라 한 줄에 하나씩 할당 표현식으로 구성됩니다. […] 변수를 초기화하려면 다시 로그인해야합니다. […]
  • ~/.profile -이것은 환경 변수 할당을 배치하기에 가장 적합한 파일 일 것입니다. 시작 프로세스 데스크탑 세션 중에 DisplayManager와 텍스트 콘솔에서 로그인 할 때 로그인 쉘에 의해 자동으로 실행되기 때문입니다.
  • ~/.bash_profile또는 ~/.bash_login-이러한 파일 중 하나가 존재하는 경우 bash는 로그인 쉘로 시작할 때 “~ / .profile”대신 실행합니다. (배시는 “~ / .bash_profile”보다 “~ / .bash_login”을 선호합니다). 그러나 이러한 파일은 기본적으로 그래픽 세션에 영향을 미치지 않습니다.
  • ~/.bashrc-우분투는 현재 기본적으로 다양한 스크립트 파일을 설정하는 방식 때문에 변수를 설정하는 것이 가장 쉬운 곳일 수 있습니다. 기본 구성은 거의 모든 bash 호출 및 로깅 중에이 파일이 실행되도록 보장합니다. 그래픽 환경에. 그러나 성능 측면에서는 값이 불필요하게 여러 번 설정되므로 최선의 방법이 아닐 수 있습니다.

http://userbase.kde.org/Session_Environment_Variables/en 은 KDE를위한이 장소를 제안합니다 :

KDE는 $HOME/.kde/env파일 이름이로 끝나는 스크립트를 실행 .sh하고 해당 환경 변수가 설정 한 모든 환경 변수를 유지합니다. 설정하려는 변수도 내 보내야합니다.

https://help.ubuntu.com/community/ComposeKey#XIM~/.gnomerc또는 수정을 제안합니다 ~/.Xsession.


답변

.gnomerc$ HOME에 원하는 모든 변수를 설정 하는 쉘 스크립트 ( .bashrc 🙂 인 파일을 작성하십시오 .


답변

환경 변수 int .profile 또는 / etc / profile을 작성해 보셨습니까 ?

그것은 작동하고 이미 존재해야합니다. 터미널 세션 당 .bashrc 와 달리 세션에 로그인 할 때 시작됩니다.