~/.asoundrc

~/.asoundrc

그래서 저는 다음과 같이 작동하는 multilib 설정을 가지고 있습니다.슬랙북지침. 저는 32비트 Windows 프로그램(즉, Skyrim 및 Deus Ex: Human Revolution)에서 와인을 성공적으로 사용하고 있습니다. 그리고 기본 64비트 프로그램에 대해 pulseaudio를 성공적으로 설치하고 구성했습니다. 일반적으로 와인을 사용하기 전에 펄스 오디오를 종료합니다 pulseaudio --kill. 그렇게 하지 않고 무언가를 실행하면 시작하는 터미널에 다음과 같은 팝업이 표시됩니다.

fixme:win:EnumDisplayDevicesW ((null),0,0x33f7d8,0x00000000), stub!
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused

다음 부분은 내가 알아낸 export ARCH=i486대로 . /etc/profile.d/32dev.shSlackbook의 multilib 페이지에 필수 항목을 추가하여 해결했습니다. 수정 사항을 통해 최소한 json-c 및 speex(slackbuilds.org의 pulseaudio에 대한 종속성 지정)를 i486 패키지로 컴파일한 다음 Convertpkg-compat32를 사용하여 compat32 패키지로 변환하고 설치할 수 있었습니다.

추천받아 먹어봤는데

# . /etc/profile.d/32dev.sh

실행하기 전에 sbopkg -b pulseaudio결과 패키지는 여전히 i486이 아닌 x86-64 패키지가 됩니다. 그리고 Slackware에는 기본적으로 배포판에 펄스 오디오가 포함되어 있지 않고 Alienbob의 slackbuilds 저장소에 이에 대한 컴파일된 버전도 없기 때문에 실행할 수 있는 32비트 바이너리 패키지를 찾을 수 없었습니다 converpkg-compat32.

그러나 남은 문제는 해당 종속성을 컴파일하는 데 사용된 것과 동일한 방법을 사용하여 pulseaudio를 컴파일할 때 다음과 같은 결과가 나온다는 것입니다.

daemon/pulseaudio-caps.o: In function `pa_drop_caps':
/tmp/SBo/pulseaudio-5.0/src/daemon/caps.c:85: undefined reference to `cap_init'
/tmp/SBo/pulseaudio-5.0/src/daemon/caps.c:86: undefined reference to `cap_clear'
/tmp/SBo/pulseaudio-5.0/src/daemon/caps.c:87: undefined reference to `cap_set_proc'
/tmp/SBo/pulseaudio-5.0/src/daemon/caps.c:88: undefined reference to `cap_free'
collect2: error: ld returned 1 exit status
make[3]: *** [pulseaudio] Error 1

다음 문제는 libcap 및 GConf를 compat32 패키지로 설치한 후 pulseaudio.Slackbuild 스크립트를 다시 실행하여 해결했습니다(역시 위 패키지와 마찬가지로 32dev 환경에서).

Slackbuilds.org에 언급되지 않았지만 종속성으로 설치해야 하는 라이브러리가 누락되었기 때문에 발생하는 문제입니까? 확실히 제가 그런 상황을 접한 것이 처음은 아니겠지만, 일반적으로 필요한 라이브러리를 찾을 때 제 실수가 좀 더 도움이 됩니다.

펄스 오디오를 설치한 후 사운드를 테스트하기 위해 실행했습니다 winecfg. (참고: 로 이 작업을 시도했지만 /usr/bin/pulseaudio --start작동하지 않으면 서버를 종료하고 으로 시도했습니다 /usr/bin/32/pulseaudio --start. 둘 다 동일한 결과를 얻었습니다.) 결과 오류 메시지는 다음과 같습니다.

ALSA lib dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib64/alsa-lib/libasound_module_pcm_pulse.so
ALSA lib dlmisc.c:252:(snd1_dlobj_cache_get) Cannot open shared library /usr/lib64/alsa-lib/libasound_module_pcm_pulse.so
libgcc_s.so.1 must be installed for pthread_cancel to work

/usr/lib64/alsa-lib/libasound_module_pcm_pulse.so를 백업하고 해당 위치에 /usr/lib/alsa-lib/libasound_module_pcm_pulse.so에 대한 심볼릭 링크를 만들고 파일을 복사해 보았지만 어느 쪽도 없었습니다. 나온 오류 메시지에 어떤 영향을 미치나요? 또한 환경 변수를 ALSA_MIXER_SIMPLE_MODULES로 설정해 보았지만 /usr/lib/alsa-lib여전히 소용이 없습니다. 아이디어가 고갈되기 시작했습니다.

나는 이것이 Slackware의 미지의 영역이라는 것을 알고 있습니다. 대다수의 사용자는 그것을 사용하는 데 관심이 없는 것 같지만 실행 가능하지 않을 이유가 없습니다. 누구든지 슬랙웨어를 얻는 데 현명한 조언이 있는지 궁금합니다. 이 패키지를 컴파일하여 설치할 수 있습니다. 누구든지 이 상황을 직접 경험한 사람이라면 더욱 좋습니다.

답변1

따라서 각 단계 이후의 테스트가 이에 대해 많은 슬픔을 안겨주는 것 같습니다 winecfg(편집에 대한 마지막 질문에서와 동일한 오류가 여전히 발생합니다). 중요한 것은 실제로 와인 DID에서 win32 애플리케이션을 사용하여 작업을 시작한다는 것입니다.

이 문제를 해결하는 모든 사람에게 내가 생각하는 관련 정보는 다음과 같습니다.

  1. .Slackbuild 스크립트를 사용하거나 실행하기 전에 export ARCH=i486반드시 확인해야 합니다 . 실제로 Slackbook에 있는 지침에 명시되어 있지만 놓치기 쉬운 것 같아서(또는 적어도 개인적으로는 놓쳤습니다) 만일을 대비해 여기에 포함시킵니다.. /etc/profile.d/32dev.shsbopkg -b
  2. json-cspeexcompat32 형식이 필요한 것 외에도 libcapGConfcompat32 형식도 필요합니다. 하지만 이 작업을 수행하려면 Slackware(Slackware64가 아닌)에서 두 패키지를 모두 가져와서 수행할 수 있습니다.거울"L" 패키지 세트에 포함되어 있습니다. 몇 가지 다른 패키지 도 필요 alsa-plugins하지만 다음 과정에 모두 포함되어야 합니다.멀티립Slackbook의 지침.
  3. 당연히 올바른 장소로 항목을 보내는 작업을 처리하려면 적절한 ALSA 구성 파일이 필요합니다. 이것은 내가 겪은 문제가 아니었지만 아래에 작업 중인 ~/.asoundrc 파일을 포함하겠습니다.
  4. 마지막으로 winecfg와 같은 프로그램이 아닌 실제 win32 프로그램을 사용하여 작업이 작동하는지 확인하세요. Winecfg는 여전히 질문에서 마지막으로 보고한 것과 동일한 오류를 발생시키며 문제를 일으키지 않고 오디오 설정을 "시스템 기본값"으로 안전하게 남겨둘 수 있습니다. 와인은 펄스오디오를 직접적으로 지원하지 않고 단지 ALSA 호환성 레이어를 통해서만 사용하기 때문에 이 동작을 걱정할 이유가 없다고 생각합니다.

~/.asoundrc

pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

pcm.phononpulse
{
   type plug

   slave.pcm
   {
      type pulse
   }

   hint
   {
      show on
      description "PulseAudio"
   }
}

pcm.pulse {
    type pulse
    hint {
        show on
        description "PulseAudio"
    }
}

어쨌든, 이 내용이 저를 따라 와서 이 문제에 직면하는 모든 사람들에게 좋은 참고 자료가 되기를 바랍니다. 그렇지 않다면 새로운 시스템을 설정할 때마다 다시 참조해야 할 것입니다.

관련 정보