Vinho, compilação falhou, precisa de algum conselho

1

Desculpe pelo meu mau inglês.

Estou tentando compilar chrisbmrs vinho com patches para dar suporte ao D3D9 nativo: link . Eu tentei seguir dicas do arquivo README e também tentei compilar ./ tools / wineinstall e ./ configure , mas constantemente recebo erros:

make[1]: Entering directory '/home/wine-d3dadapter9-wip/dlls/d3d9'
../../tools/winegcc/winegcc  -B../../tools/winebuild --sysroot=../.. -fasynchronous-unwind-tables -shared ./d3d9.spec buffer.o d3d9_main.o d3dadapter9.o device.o directx.o query.o shader.o stateblock.o surface.o swapchain.o texture.o vertexdeclaration.o volume.o       version.res    -o d3d9.dll.so  -ldxguid -luuid -ladvapi32 -lgdi32 -luser32 -lwined3d  ../../libs/port/libwine_port.a   
d3d9_main.o: In function 'DllMain':
/home/wine-d3dadapter9-wip/dlls/d3d9/d3d9_main.c:159: undefined reference to 'd3dadapter9_destroy'
/home/wine-d3dadapter9-wip/dlls/d3d9/d3d9_main.c:154: undefined reference to 'd3dadapter9_init'
collect2: error: ld returned 1 exit status
winegcc: gcc failed
make[1]: *** [d3d9.dll.so] Error 2
make[1]: Leaving directory '/home/wine-d3dadapter9-wip/dlls/d3d9'
make: *** [dlls/d3d9] Error 2

Compilation failed, aborting install.

ou

configure: libOSMesa development files not found (or too old), OpenGL rendering in bitmaps won't be supported.
configure: libd3dadapter9 development files not found. Native Direct3D9 won't be supported.
configure: libhal development files not found, no legacy dynamic device support.
configure: libldap (OpenLDAP) development files not found, LDAP won't be supported.

Por favor, aponte-me na direção certa. Eu aprecio qualquer ajuda. Obrigado.

SO: Ubuntu13.04, GPU: nvidia 9200m, driver: nvidia xorg 313.

    
por NewUbuntuUser 20.07.2013 / 23:51

4 respostas

0

Tentando por mim mesmo agora, vou lhe contar como é.

Encontrei isso nos arquivos: link

E isso me leva ao d3dadapter mesa, que deve incluir o libd3dadapter9 ausente: link

E também há um link para o vinho que você já tem lá também.

    
por thejims 21.07.2013 / 08:44
0

Tente instalar todas as dependências de compilação do Wine:

sudo apt-get build-dep wine

Se isso ainda não satisfizer todas as dependências, você pode tentar a abordagem como eu postei em / usr / bin / ld: não consigo encontrar -lulpe

    
por gertvdijk 21.07.2013 / 09:25
0

Eu não estou usando o Ubuntu (eu uso o Fedora 19), mas ainda pode ser útil. Segui as orientações fornecidas neste link . No entanto, alguns passos são deixados para trás. Tentarei fornecer instruções mais completas:

  1. Verifique o seguinte:

    • A execução de glxinfo | grep "OpenGL renderer string" deve retornar algo que contenha Gallium .

    • Esta resposta assume que você já instalou o Wine (regular), isso pode ser feito executando sudo apt-get install wine .

      A execução de wine --version deve retornar uma versão de wine-1.6-rcX ou mais recente.

  2. Instale todas as dependências de compilação para:

    • Mesa, para construir o gálio-nove:

      sudo apt-get build-dep mesa
      
    • Vinho, para construir vinho-d3adapter9:

      sudo apt-get build-dep wine
      
  3. Primeiro, vamos construir e instalar o gálio-nove d3dadapter9:

    • Faça o download do link e descompacte a pasta Mesa-3D-gallium-nine em algum lugar onde você possa encontrá-la de volta, por exemplo, no seu diretório pessoal.

    • Abra um terminal na pasta Mesa-3D-gallium-nine descompactada e execute os seguintes comandos:

      CFLAGS="-m32" CXXFLAGS="-m32" ./autogen.sh --prefix=/usr \
      --with-gallium-drivers=nouveau,r600,swrast --enable-nine \
      --with-gallium-driver-dir="'pwd'/src/gallium/targets/pipe-loader/.libs" \
      --enable-debug --enable-texture-float --with-dri-drivers= --disable-dri \
      --disable-opengl --disable-egl --disable-vdpau --disable-xvmc --disable-gbm \
      --disable-gallium-llvm --enable-32bit --disable-64bit
       make
       sudo ln -s "\'pwd\'/lib/gallium/libd3dadapter9.so.0.0.0" /usr/lib/
       sudo ln -s "\'pwd\'/lib/gallium/libd3dadapter9.so.0" /usr/lib/
       sudo ln -s "\'pwd\'/lib/gallium/libd3dadapter9.so" /usr/lib/
       sudo ln -s "\'pwd\'/include/d3dadapter" /usr/include/
      
  4. Em seguida, criamos e instalamos as novas bibliotecas do Wine:

    • Faça o download da ramificação do mestre de vinhos relevante no seguinte link e descompacte o wine-master pasta em algum lugar onde você possa encontrá-la, por exemplo, no seu diretório pessoal.

    • Faça o download do d3dadapter9-wip.zip e descompacte todo o conteúdo do% diretóriowine-d3dadapter9-wip na pasta wine-master anteriormente descompactada. Opte por substituir os arquivos existentes.

    • Abra um terminal na pasta wine-master e execute os seguintes comandos:

      ./configure
      make
      for f in d3d9.dll gdi32.dll user32.dll wineps.drv winex11.drv;
      do
          sudo mv /usr/lib/wine/$f.so /usr/lib/wine/$f.so.old;
          sudo ln -s "\'pwd\'/dlls/\'basename -s .dll $f\'/$f.so" /usr/lib/wine/;
      done
      
  5. Configure o Wine para usar nove:

    • Executar regedit .
    • Navegue até HKEY_CURRENT_USER\Software\Wine\Direct3D . Se não estiver lá, crie-o.
    • Crie um novo valor DWORD chamado UseNative . Defina seu valor para 1 .

Para mais informações sobre o uso do gálio-nove, veja a orientação fornecida no primeiro link que eu postei.

    
por Eliasvan 03.09.2013 / 19:15
0

Eu usei esse truque

Espero que isso ajude você também,

vá para a pasta do seu vinho e edite o arquivo de configuração: Abra com o seu editor de texto.

Substituir linha:

LIBS="-lOSMesa $X_LIBS $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS $LIBS"

com

LIBS="-lOSMesa -lGLU -lGL $X_LIBS $X_PRE_LIBS $XLIB -lm $X_EXTRA_LIBS $LIBS"

e adicione:

fi
if test "x$ac_cv_lib_soname_OSMesa" = "x"; then :

para:

fi
ac_cv_lib_soname_OSMesa=libOSMesa.so
if test "x$ac_cv_lib_soname_OSMesa" = "x"; then :

depois salve e tente ./configure again .

    
por ibrahim 07.09.2013 / 00:45