Compile a última versão do MAME

mame0

Desta vez, vou falar sobre como compilar a última versão do MAMEJá que o da página oficial tem desvantagens de tempo de compilação.

A vantagem de compilar programas para o seu computador é que você tira mais proveito dele, especialmente do processador central, já que os emuladores geralmente fazem uso intensivo dele. Além disso, a instalação de um frontend para interagir muito melhor com o programa.

Este guia ou tutorial é projetado para pessoas que não se conformam com o que vem MAME de tecido. Portanto, os benefícios são palpáveis ​​quando você faz o teste de localização. 🙂

Para começar o trabalho de construção, clonamos as fontes do programa, fazendo o seguinte:

Não baixe a versão fonte da página Mamedev, porque dá muitos erros na compilação.
Usuários Debian-UbuntuGenericName, instale estes pacotes:
build-essential gconf2 libgconf2-dev libgtk2.0-dev libsdl1.2-dev libsdl-ttf2.0-dev

Usuários archlinux, Peço desculpas, mas eu já tinha as bibliotecas instaladas há muito tempo, é só olhar as que estão ali e procurar sua homologia com pacman.

git clone git://git.redump.net/mame

mame

Quando o processo de clonagem terminar, vá para o diretório criado, neste caso, o diretório padrão criado é «mamãe ».

Já dentro deste diretório, teremos uma série de pastas e arquivos. A partir daqui, estamos interessados ​​apenas no makefile. Eles o abrem com o editor de texto de sua escolha e procuramos algo semelhante a isto:

#ARCHOPTS = -march=native      # optimize for local machine (auto detect)

E descomentamos essa linha, que permanece como pode ser visto na imagem a seguir.

mame2

Salvamos as alterações e aí começamos a compilação com o comando make:

make

Se você quiser obter o máximo do tempo de compilação, use fazer -j # onde # é o número de núcleos em sua equipe.
Para saber quantos núcleos seu computador possui, execute este comando no terminal: grep -c ^ processor / proc / cpuinfo

Quando o processo de compilação terminar seu trabalho, aparecerá um arquivo nomeado, dependendo da arquitetura do sistema como mame se você estiver em 32 bits ou mame64 para 64 bits. mame3

No meu caso, estou em um sistema de 64 bits.

Bem, até agora estamos bem, agora podemos jogar jogos com o programa, mas é um pouco complicado para um iniciante. Então, vamos complementá-lo com o programa qmc2.

Lá, na mesma janela que executamos iogurte para instalar o frontend.

Para usuários do Archlinux

yaourt -S qmc2

Para usuários Ubuntu-Debian

sudo add-apt-repository ppa: mmbossoni-gmail / emu sudo apt-get update sudo apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
Para usuários de Ubuntu / Debian

Copie o arquivo executável do mame para este caminho como: / usr / games / mame

Então eles abrem o programa qmc2-sdlmme e esta janela aparecerá:

qmc2-sdlmame

Como você pode ver, o programa não pede muito.

As coisas mais importantes nesta janela são o caminho do arquivo executável, o diretório de trabalho e o caminho das roms.

O caminho do executável mame, você pode ter onde quiser, desde que diga ao programa onde está o executável, o mesmo para os jogos.

E aqui mamãe em ação. Pois é, já estou experimentando um jogo, um dos meus preferidos de caça-níqueis, tantas moedas que eu levo na hora, agora sou eu que fico com o suco aqui. xD

O nosso MAME em execução

mamãe-em-ação

Saudações e brincadeiras foram ditas 😀

Este é o meu primeiro artigo neste blog, que acompanho há muito tempo com o apelido de Mauricio, pelo seu post interessante e que sempre tem novidades para mostrar.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   o mudo dito

    Onde você consegue as roms?

    1.    NauTiluS dito

      No Google, amigo 🙂

  2.   Otaku Logan dito

    Artigo muito bom para lembrar que antes do Steam já existiam videogames no GNU / Linux. Eles não são novos ou nativos, mas podem fornecer milhares de horas de entretenimento e diversão.

    E eu gostaria de nomear UME (http://mamedev.emulab.it/haze/), a iniciativa que mistura Mame e Mess (se Mame lida com jogos recreativos, Mess com consoles de vídeo), criando um verdadeiro emulador multissistema. Eu só vi isso nos repositórios do emulador OpenSUSE e na comunidade ArchLinux, mas para compilá-lo no Debian as etapas a seguir são muito semelhantes às expostas pelo NauTiluS para Debian / Ubuntu.

    1.    NauTiluS dito

      Se você editar o makefile e for para a linha 27, encontrará uma variável importante. Esta variável é aquela que especifica o objetivo a construir, sejam estes: MAME, UME, MESS, etc.

      No seu caso, mude para UME, você obterá este executável.

      lembranças

  3.   Alebils dito

    Olá
    ao fazer make, recebo o seguinte:

    src / osd / sdl / sdl.mak: 519: *** O Meta Object Compiler (moc) do Qt não foi encontrado!. Alto.

    Eu uso o Kubuntu 12.04 32 bits

    obrigado

    1.    serfravires dito

      Parece-me que está avisando que você precisa instalar o moc; Depois de fazer algumas pesquisas, descobri que provavelmente você precisa são de automóveis, mas não tenho certeza. Tente pesquisar no Sinaptic ou com Aptitude, não me lembro qual deles usa Kubuntu.

      1.    alebils dito

        Obrigado, foi que install moc e automoc e está compilando

  4.   Rolo dito

    É conveniente ter a versão mais recente do mame instalada? Eu pergunto por que ao carregar o repositório deb-multimedia, eu instalo um mame mais moderno do que o debian de teste, mas ... muitos dos jogos pararam de funcionar. então mantive a versão debian e tchau problemas.
    Não tenho certeza, mas acho que muitos dos jogos são compilados para uma certa versão do mame

  5.   Alebils dito

    Eu finalmente compilo
    mas quando quero instalar o qmc2 recebo:

    sudo apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
    Lendo lista de pacotes ... Concluído
    Criando árvore de dependências
    Lendo as informações de status ... Concluído
    Não pode instalar algum pacote. Isso pode significar que
    você pediu uma situação impossível ou, se você está usando a distribuição
    instável, que alguns pacotes necessários não foram criados ou foram
    foi removido da entrada.
    As seguintes informações podem ajudar a resolver a situação:

    Os pacotes a seguir têm dependências não atendidas:
    qmc2-sdlmess: Depende: sdlmess (> = 0.144) mas não é instalável ou
    bagunça (> = 0.144), mas não é instalável
    qmc2-sdlume: Depende: sdlume (> = 0.144) mas não é instalável ou
    ume (> = 0.144), mas não é instalável
    E: Os problemas não puderam ser corrigidos, você reteve pacotes quebrados.

    1.    NauTiluS dito

      Olá e obrigado por comentar.
      O que você deve fazer nesse caso é enganar o sistema e instalar os pacotes solicitados, sdlmame e sdlmess.

      Com isso seu problema está resolvido, então substitua ou passe o caminho onde está o mame que você compilou.

      lembranças

      1.    Alebils dito

        Tento instalá-los com apt-get install, mas obtenho o seguinte:
        sudo apt-get instalar sdlmess
        Lendo lista de pacotes ... Concluído
        Criando árvore de dependências
        Lendo as informações de status ... Concluído
        O pacote sdlmess não está disponível, mas algumas outras referências de pacote
        a ele. Isso pode significar que o pacote está ausente, desatualizado ou apenas
        disponível em alguma outra fonte

        E: O pacote "sdlmess" não tem um candidato para instalação

        e o mesmo para o sdlume

        1.    NauTiluS dito

          Por favor, tente o seguinte.

          sudo touch sdlmess / usr / games /
          Para enganar o instalador.

          lembranças

          1.    Alebils dito

            Olá
            Sondar, mas não acontece nada, ainda não me deixa instalar ...
            🙁

      2.    lunar dito

        instalar o xmame-sdl funciona tão bem ou melhor !! e você direciona para / usr / games / mame -embora qmc2 peça sdl… .-.
        Essa resposta está atrasada, mas talvez ajude alguém que está procurando a mesma coisa. Levei dois dias para coletar todas as informações para fazer a mãe funcionar bem em sua versão atual: 0.153.
        Se você quiser roms para esta versão, a melhor página, embora um pouco lenta, é planetemu.net. Saudações.
        Ainda não consigo encontrar como filtrar roms no qmc2 por função, não consigo encontrar a opção e me lança uma lista oficial muito longa!

  6.   obedlink dito

    O que eu gosto é que o qmc2 é um aplicativo Qt: D, mas uma pena que estou usando o kubuntu 14.04 porque o Qmc2 PPA só está disponível até ficar picante.

    1.    NauTiluS dito

      Olá, você pode tentar compilar o qmc2 baixando os fontes de sua página.
      http://qmc2.arcadehits.net/wordpress/download/

      Saudações.

      1.    alberto dito

        por que instalar estes (qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman) se instalarmos apenas o mame?

        sudo apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
        Lendo lista de pacotes ... Concluído
        Criando árvore de dependências
        Lendo as informações de status ... Concluído
        Não pode instalar algum pacote. Isso pode significar que
        você pediu uma situação impossível ou, se você está usando a distribuição
        instável, que alguns pacotes necessários não foram criados ou foram
        foi removido da entrada.
        As seguintes informações podem ajudar a resolver a situação:

        Os pacotes a seguir têm dependências não atendidas:
        qmc2-sdlmess: Depende: sdlmess (> = 0.144) mas não é instalável ou
        bagunça (> = 0.144), mas não é instalável
        qmc2-sdlume: Depende: sdlume (> = 0.144) mas não é instalável ou
        ume (> = 0.144), mas não é instalável
        E: Os problemas não puderam ser corrigidos, você reteve pacotes quebrados.

        Para aqueles que acontecerem, basta instalar qmc2-sdlmame
        ficaria assim:
        sudo add-apt-repository ppa: mmbossoni-gmail / emu
        sudo apt-get update
        sudo apt-get install qmc2-sdlmame

  7.   micaiah dito

    Olá, como são baixados?

  8.   Fermín barboza dito

    Ao executar o make dá o seguinte erro:

    src / osd / sdl / sdl.mak: 456: *** Ubuntu 12.10 detectado. Instale os pacotes gcc-4.6 e g ++ - 4.6. Pare.

    Ao tentar instalar o gcc ou g ++, ocorre o seguinte erro:

    apt-get install gcc-4.6 --fix-missing
    Lendo lista de pacotes ... Concluído
    Criando árvore de dependências
    Lendo as informações de status ... Concluído
    Os seguintes pacotes extras serão instalados:
    cpp-4.6 gcc-4.6-base
    Pacotes sugeridos:
    gcc-4.6-locales gcc-4.6-multilib libmudflap0-4.6-dev gcc-4.6-doc libgcc1-dbg libgomp1-dbg libquadmath0-dbg libmudflap0-dbg binutils-gold
    Os seguintes NOVOS pacotes serão instalados:
    cpp-4.6 gcc-4.6 gcc-4.6-base
    0 atualizado, 3 será instalado, 0 para remover e 19 não atualizado.
    Você precisa baixar 12,5 MB de arquivos.
    28,1 MB de espaço em disco adicional serão usados ​​após esta operação.
    Você deseja continuar [S / n]? s
    AVISO: Os pacotes a seguir não puderam ser autenticados!
    gcc-4.6-base cpp-4.6 gcc-4.6
    Instalar esses pacotes sem verificação [s / n]? s
    Errar http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6-base amd64 4.6.3-10ubuntu1
    404 não encontrado [IP: 91.189.88.153 80]
    Errar http://archive.ubuntu.com/ubuntu/ quantal / main cpp-4.6 amd64 4.6.3-10ubuntu1
    404 não encontrado [IP: 91.189.88.153 80]
    Errar http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6 amd64 4.6.3-10ubuntu1
    404 não encontrado [IP: 91.189.88.153 80]
    Impossível obter http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6-base_4.6.3-10ubuntu1_amd64.deb 404 não encontrado [IP: 91.189.88.153 80]
    Impossível obter http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/cpp-4.6_4.6.3-10ubuntu1_amd64.deb 404 não encontrado [IP: 91.189.88.153 80]
    Impossível obter http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6_4.6.3-10ubuntu1_amd64.deb 404 não encontrado [IP: 91.189.88.153 80]
    Os pacotes ausentes não puderam ser corrigidos.
    E: Abortando a instalação.

    Eu tenho Linux Mint Maya

    1.    x11tete11x dito
    2.    NauTiluS dito

      Olá e desculpe a demora em responder.

      Esse Mint Maya linux é um velho amigo, você teria que instalar o gcc manualmente, para poder compilar este programa.

      Embora eu ache que há outro método, mas você tem que pesquisar os pacotes manualmente nos repositórios históricos do ubuntu.

      Acho que o Mint Maya foi baseado em
      http://packages.ubuntu.com/precise/devel/

      Apenas, você tem que baixar os pacotes gcc 4.6 conforme solicitado pelo programa.

  9.   fer_pflores dito

    ei, como posso excluir todos os arquivos?

    1.    NauTiluS dito

      Assumindo que você quer dizer arquivos de compilação, ao executar este comando no terminal, "make clean". Se for para deletar tudo e a pasta, vá até um diretório acima e com rm -vrf "nome da pasta".

  10.   prado dito

    Olá! Eu tenho Manjaro (archlinux) e ele não compila
    Jogue isso em mim
    / usr / bin / ld: não é possível encontrar -lSDL_ttf
    collect2: erro: ld retornou status de saída 1
    src / build / build.mak: 63: a receita para o destino 'obj / sdl / build / file2str' falhou
    make: *** [obj / sdl / build / file2str] Erro 1

    Além disso, não sei quais são as bibliotecas equivalentes às que você mencionou no início, exceto build-essential, se você puder me dar uma mão, eu ficaria muito grato!

    1.    NauTiluS dito

      Oi. Na verdade, você precisa da biblioteca SDL_ttf. Para instalá-lo no archlinux, basta colocar no console "pacman -S sdl_ttf".

      Além disso, você deve ter a biblioteca "pacman -S sdl" instalada.

      No build-essential, provavelmente você já o instalou. Isso que instala no Ubuntu e derivados são alguns utilitários básicos de compilação.

      Qualquer outro inconveniente, não hesite em perguntar.

  11.   prado dito

    Olá! Isso funcionou para mim! Obrigado! agora eu tive outro erro, ele me joga o seguinte:

    Compilando src / mame / video / model1.c…
    src / mame / video / model1.c: Na função 'void draw_quads (model1_state *, bitmap_rgb32 &, const rectangle &)':
    src / mame / video / model1.c: 307: 17: erro: o subscrito do array está acima dos limites do array [-Werror = array-bounds]
    enquanto (p [ps2 + 1] .y == cury)
    ^
    src / mame / video / model1.c: 319: 17: erro: o subscrito da matriz está abaixo dos limites da matriz [-Werror = limites da matriz]
    while (p [ps1-1] .y == cury)
    ^
    src / mame / video / model1.c: 319: 17: erro: o subscrito da matriz está abaixo dos limites da matriz [-Werror = limites da matriz]
    src / mame / video / model1.c: 329: 17: erro: o subscrito do array está acima dos limites do array [-Werror = array-bounds]
    enquanto (p [ps2 + 1] .y == cury)
    ^
    src / mame / video / model1.c: 329: 17: erro: o subscrito do array está acima dos limites do array [-Werror = array-bounds]
    src / mame / video / model1.c: 305: 17: erro: o subscrito da matriz está abaixo dos limites da matriz [-Werror = limites da matriz]
    while (p [ps1-1] .y == cury)
    ^
    cc1plus: todos os avisos são tratados como erros
    makefile: 922: a receita para o destino 'obj / sdl / mame / video / model1.o' falhou
    make: *** [obj / sdl / mame / video / model1.o] Erro 1

    Que pode ser?

    Thanks!

    1.    NauTiluS dito

      Tudo parece indicar um erro do compilador.

      Você precisa de uma versão mais avançada do compilador.

  12.   Imagem de espaço reservado de Rafael Escamilla dito

    Olá, Compilei a versão .0151 do MAME e além dos pacotes que você mencionou, o libqt4-dev é necessário. Saudações 🙂