Bygg den senaste versionen av MAME

mamma0

Den här gången ska jag prata om hur sammanställa den senaste versionen av MAME, eftersom den på den officiella sidan har nackdelar med kompileringstiden.

Det som är bra med att kompilera programmen för din dator är att du får ut mer av det, särskilt den centrala processorn, eftersom emulatorer i allmänhet använder den intensivt. Installationen av en frontend att interagera mycket bättre med programmet.

Denna guide eller handledning är utformad för personer som inte överensstämmer som den kommer MAME av tyg. Så fördelarna är påtagliga när du gör platstestet. 🙂

För att komma igång med kompileringsarbetet klonade vi programkällorna och gjorde följande:

Ladda inte ner versionen källa på sidan mamedev, eftersom det ger många fel i sammanställningen.
Användarna av Debian-Ubuntu, installera dessa paket:
build-essential gconf2 libgconf2-dev libgtk2.0-dev libsdl1.2-dev libsdl-ttf2.0-dev

Användarna av archlinux, Jag ber om ursäkt, men jag hade redan biblioteken installerade länge, titta bara på de där och leta efter deras motsvarighet med pacman.

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

mamma

När kloningsprocessen är klar, gå till den skapade katalogen, i detta fall är standardkatalogen som skapas «mame ».

Redan i denna katalog kommer vi att ha en serie mappar och filer. Härifrån är vi bara intresserade av makefile. De öppnar den med textredigeraren efter eget val och vi letar efter något liknande det här:

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

Och vi kommenterar den linjen, att den förblir som den ses i följande bild.

mamma2

Vi sparar ändringarna och precis där börjar vi kompileringen med kommandot make:

make

Om du vill få ut det mesta av kompileringstiden, använd göra -j # där # är antalet kärnor i ditt team.
För att ta reda på hur många kärnor din dator har, starta det här kommandot i terminalen: grep -c ^ processor / proc / cpuinfo

När kompileringsprocessen har avslutat sitt arbete visas en fil med namnet beroende på systemarkitekturen som mamma om du är i 32 bitar eller mamma64 för 64 bitar. mamma3

I mitt fall är jag på ett 64-bitars system.

Tja, hittills har vi det bra, vi kan nu spela spel med programmet, men det är lite besvärligt för en nybörjare. Så låt oss komplettera det med programmet qmc2.

Där, i samma fönster kör vi yoghurt för att installera frontend.

För Archlinux-användare

yaourt -S qmc2

För användare av 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-arkad qchdman
För användare av ubuntu / Debian

Kopiera den körbara filen av mame till den här sökvägen som: / usr / spel / mame

Sedan öppnar de programmet qmc2-sdlmame och detta fönster kommer att visas:

qmc2-sdlmame

Som du kan se kräver programmet inte mycket.

De viktigaste sakerna i det här fönstret är sökvägen till den körbara filen, arbetskatalogen och roms sökväg.

Sökvägen till mame-körbar, du kan ha den var du vill, så länge du säger till programmet var den körbara filen är densamma för spel också.

Och här mame i aktion. Nåväl där, jag försöker redan ett spel, en av mina favoriter på spelautomater, så många mynt som jag tar på sin tid, nu är jag den som får saften här. xD

vår MAME i aktion

mame-in-action

Hälsningar och lek har sagts 😀

Det här är min första artikel för den här bloggen, som jag har följt länge med smeknamnet Mauricio, för hans intressanta inlägg och att han alltid har något nytt att visa.


Innehållet i artikeln följer våra principer om redaktionell etik. Klicka på för att rapportera ett fel här.

28 kommentarer, lämna din

Lämna din kommentar

Din e-postadress kommer inte att publiceras.

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.

  1.   den stumma sade

    Var får du romerna?

    1.    NauTiluS sade

      På Google, vän 🙂

  2.   OtakuLogan sade

    Mycket bra artikel att komma ihåg att innan Steam fanns det redan videospel på GNU / Linux. De är inte nya eller infödda, men de kan ge tusentals timmar av underhållning och kul.

    Och jag vill namnge UME (http://mamedev.emulab.it/haze/), initiativet som blandar Mame och Mess (om Mame handlar om arkadspel, Mess med videokonsoler) och skapar en riktig flersystemsemulator. Jag har bara sett det i OpenSUSE-emulatorförvaren och i ArchLinux-communityn, men att kompilera det i Debian är stegen som ska följas mycket lik de som exponeras av NauTiluS för Debian / Ubuntu.

    1.    NauTiluS sade

      Om du redigerar makefilen och går till rad 27 hittar du en viktig variabel. Denna variabel är den som specificerar målet att bygga, var dessa: MAME, UME, MESS, etc.

      I ditt fall ändrar du det till UME, du får den här körbara filen.

      hälsningar

  3.   alebiler sade

    Hallå
    när jag gör får jag följande:

    src / osd / sdl / sdl.mak: 519: *** Qts Meta Object Compiler (moc) hittades inte!. Hög.

    Jag använder Kubuntu 12.04 32 bitar

    tack

    1.    serfravirs sade

      Det verkar för mig att det varnar dig för att du behöver installera moc; Efter att ha gjort en del undersökningar upptäckte jag att det du eventuellt behöver är bilar, men jag är inte säker. Försök att söka i Sinaptic eller med Aptitude, jag kan inte komma ihåg vilken som använder Kubuntu.

      1.    Alebils sade

        Tack, var det att installera moc och automoc och kompilerar

  4.   Rolo sade

    Är det bekvämt att ha den senaste versionen av mame installerad? Jag frågar varför när jag laddar deb-multimedia repo installerar jag en modernare mame än debian som testar en, men ... många av spelen slutade fungera. så jag behöll debianversionen och bye-problem.
    Jag är inte säker men jag tror att många av spelen är sammanställda för en viss version av mame

  5.   alebiler sade

    Jag kompilerar äntligen
    men när jag vill installera qmc2 får jag:

    sudo apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arkad qchdman
    Läser paketlista ... Klar
    Skapa beroendeträd
    Läser statusinformation ... Klar
    Inte kan installera något paket. Det kan betyda det
    du bad om en omöjlig situation eller, om du använder distributionen
    instabil, att vissa nödvändiga paket inte har skapats eller har
    flyttats ur inkommande.
    Följande information kan hjälpa till att lösa situationen:

    Följande paket har ouppfyllda beroenden:
    qmc2-sdlmess: Beror på: sdlmess (> = 0.144) men den kan inte installeras eller
    mess (> = 0.144) men den kan inte installeras
    qmc2-sdlume: Beror på: sdlume (> = 0.144) men den kan inte installeras eller
    ume (> = 0.144) men den kan inte installeras
    E: Problem kunde inte åtgärdas, du har behållit trasiga paket.

    1.    NauTiluS sade

      Hej och tack för kommentaren.
      Vad du måste göra i så fall är att lura systemet och installera de paket som begärs, sdlmame och sdlmess.

      Med det är ditt problem löst, ersätt eller passera sedan vägen där mammen du har sammanställt är.

      hälsningar

      1.    alebiler sade

        Jag försöker installera dem med apt-get install men jag får följande:
        sudo apt-get installera sdlmess
        Läser paketlista ... Klar
        Skapa beroendeträd
        Läser statusinformation ... Klar
        Paketet sdlmess är inte tillgängligt, men några andra paketreferenser
        till. Detta kan innebära att paketet saknas, är föråldrat eller endast
        tillgänglig från någon annan källa

        E: Paketet "sdlmess" har ingen kandidat för installation

        och detsamma för sdlume

        1.    NauTiluS sade

          Försök med följande.

          sudo touch sdlmess / usr / spel /
          För att lura installationsprogrammet.

          hälsningar

          1.    alebiler sade

            Hallå
            Probe, men ingenting händer, det låter mig fortfarande inte installera ...
            🙁

      2.    månig sade

        installation av xmame-sdl fungerar lika bra eller bättre !! och du går till / usr / games / mame - även om qmc2 ber om sdl… .-.
        Det här svaret kan ta tid men kanske kommer det att vara användbart för en annan som är ute och letar efter samma sak. Det tog mig två dagar att samla all information för att få mame att fungera bra i sin nuvarande version: 0.153.
        Om du vill ha rom för den här versionen är den bästa sidan även om den är något långsam planetemu.net. Hälsningar.
        Jag kan fortfarande inte hitta hur man filtrerar rom i qmc2 efter operation, jag kan inte hitta alternativet och det ger mig den mycket långa officiella listan!

  6.   obedlink sade

    Vad jag gillar är att qmc2 är en Qt: D-applikation, men synd att jag använder kubuntu 14.04 eftersom qmc2 PPA bara är tillgänglig tills den är saucy.

    1.    NauTiluS sade

      Hej, du kan försöka kompilera qmc2 genom att ladda ner källorna från dess sida.
      http://qmc2.arcadehits.net/wordpress/download/

      Hälsningar.

      1.    Alberto sade

        varför installera dessa (qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman) om vi bara installerar mame?

        sudo apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arkad qchdman
        Läser paketlista ... Klar
        Skapa beroendeträd
        Läser statusinformation ... Klar
        Inte kan installera något paket. Det kan betyda det
        du bad om en omöjlig situation eller, om du använder distributionen
        instabil, att vissa nödvändiga paket inte har skapats eller har
        flyttats ur inkommande.
        Följande information kan hjälpa till att lösa situationen:

        Följande paket har ouppfyllda beroenden:
        qmc2-sdlmess: Beror på: sdlmess (> = 0.144) men den kan inte installeras eller
        mess (> = 0.144) men den kan inte installeras
        qmc2-sdlume: Beror på: sdlume (> = 0.144) men den kan inte installeras eller
        ume (> = 0.144) men den kan inte installeras
        E: Problem kunde inte åtgärdas, du har behållit trasiga paket.

        För de som händer installerar det bara qmc2-sdlmame
        det skulle se ut så här:
        sudo add-apt-repository ppa: mmbossoni-gmail / emu
        sudo apt-get update
        sudo apt-get installera qmc2-sdlmame

  7.   glimmer sade

    Hej, hur laddas de ner?

  8.   Fermin barboza sade

    När du kör märket ger det följande fel:

    src / osd / sdl / sdl.mak: 456: *** Ubuntu 12.10 upptäckt. Installera paketen gcc-4.6 och g ++ - 4.6. Sluta.

    När du försöker installera gcc eller g ++ ger följande fel:

    apt-get install gcc-4.6 - fix-saknas
    Läser paketlista ... Klar
    Skapa beroendeträd
    Läser statusinformation ... Klar
    Följande extra paket installeras:
    cpp-4.6 gcc-4.6-bas
    Föreslagna paket:
    gcc-4.6-lokal gcc-4.6-multilib libmudflap0-4.6-dev gcc-4.6-doc libgcc1-dbg libgomp1-dbg libquadmath0-dbg libmudflap0-dbg binutils-gold
    Följande NYA paket kommer att installeras:
    cpp-4.6 gcc-4.6 gcc-4.6-bas
    0 uppdaterat, 3 kommer att installeras, 0 att ta bort och 19 uppdateras inte.
    Du måste ladda ner 12,5 MB filer.
    28,1 MB extra diskutrymme kommer att användas efter den här åtgärden.
    Vill du fortsätta [Y / n]? s
    OBS! Följande paket kunde inte verifieras!
    gcc-4.6-bas cpp-4.6 gcc-4.6
    Installera dessa paket utan verifiering [y / n]? s
    Err http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6-bas amd64 4.6.3-10ubuntu1
    404 hittades inte [IP: 91.189.88.153 80]
    Err http://archive.ubuntu.com/ubuntu/ quantal / main cpp-4.6 amd64 4.6.3-10ubuntu1
    404 hittades inte [IP: 91.189.88.153 80]
    Err http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6 amd64 4.6.3-10ubuntu1
    404 hittades inte [IP: 91.189.88.153 80]
    Omöjligt att få http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6-base_4.6.3-10ubuntu1_amd64.deb 404 hittades inte [IP: 91.189.88.153 80]
    Omöjligt att få http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/cpp-4.6_4.6.3-10ubuntu1_amd64.deb 404 hittades inte [IP: 91.189.88.153 80]
    Omöjligt att få http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6_4.6.3-10ubuntu1_amd64.deb 404 hittades inte [IP: 91.189.88.153 80]
    De saknade paketen kunde inte korrigeras.
    E: Avbryter installationen.

    Jag har Linux Mint Maya

    1.    x11tete11x sade
    2.    NauTiluS sade

      Hej och ledsen för svaret.

      Att Mint Maya linux är en mycket gammal vän, du måste installera gcc manuellt för att kunna kompilera detta program.

      Även om jag tror att det finns en annan metod, men du måste söka i paketen manuellt i Ubuntu historiska arkiv.

      Jag tror att Mint Maya baserades på exakt
      http://packages.ubuntu.com/precise/devel/

      Endast, du måste ladda ner paketet gcc 4.6 som programmet begär.

  9.   fer_pflores sade

    hej, hur kan jag radera alla filer?

    1.    NauTiluS sade

      Förutsatt att du menar kompileringsfiler, "gör rent" genom att köra det här kommandot i terminalen. Om det är att ta bort allt och mapp, gå upp en katalog ovan och med rm -vrf "mappnamn".

  10.   lea sade

    Hallå! Jag har Manjaro (archlinux) och den kompileras inte
    Kasta detta på mig
    / usr / bin / ld: kan inte hitta -lSDL_ttf
    collect2: fel: ld returnerade utgångsstatus 1
    src / build / build.mak: 63: recept för mål 'obj / sdl / build / file2str' misslyckades
    make: *** [obj / sdl / build / file2str] Fel 1

    Jag vet inte heller vilka som är motsvarande bibliotek av de du nämnde i början, förutom build-essential, om du kan ge mig en hand skulle jag vara mycket tacksam!

    1.    NauTiluS sade

      Hej. Du behöver faktiskt SDL_ttf-biblioteket. För att installera den på archlinux, lägg bara i konsolen "pacman -S sdl_ttf".

      Du måste också ha biblioteket "pacman -S sdl" installerat.

      På build-essential är det troligt att du redan har det installerat. Det här som installeras i ubuntu och derivat är några grundläggande kompileringsverktyg.

      Eventuella andra besvär tvekar inte att fråga.

  11.   lea sade

    Hallå! Det fungerade för mig! Tack! nu hade jag ett nytt fel, det kastar mig det här:

    Kompilera src / mame / video / model1.c…
    src / mame / video / model1.c: I funktionen 'void draw_quads (model1_state *, bitmap_rgb32 &, const rectangle &)':
    src / mame / video / model1.c: 307: 17: fel: arrayens prenumeration ligger över gränserna för arrayen [-Werror = array-bounds]
    medan (p [ps2 + 1] .y == cury)
    ^
    src / mame / video / model1.c: 319: 17: fel: arrayens prenumeration ligger under arrayens gränser [-Werror = array-bounds]
    medan (p [ps1-1] .y == cury)
    ^
    src / mame / video / model1.c: 319: 17: fel: arrayens prenumeration ligger under arrayens gränser [-Werror = array-bounds]
    src / mame / video / model1.c: 329: 17: fel: arrayens prenumeration ligger över gränserna för arrayen [-Werror = array-bounds]
    medan (p [ps2 + 1] .y == cury)
    ^
    src / mame / video / model1.c: 329: 17: fel: arrayens prenumeration ligger över gränserna för arrayen [-Werror = array-bounds]
    src / mame / video / model1.c: 305: 17: fel: arrayens prenumeration ligger under arrayens gränser [-Werror = array-bounds]
    medan (p [ps1-1] .y == cury)
    ^
    cc1plus: alla varningar behandlas som fel
    makefile: 922: recept för mål 'obj / sdl / mame / video / model1.o' misslyckades
    make: *** [obj / sdl / mame / video / model1.o] Fel 1

    Vilket kan vara?

    Tack!

    1.    NauTiluS sade

      Allt verkar indikera ett kompileringsfel.

      Du behöver en mer avancerad version av kompilatorn.

  12.   Platshållarbild för Rafael Escamilla sade

    Hej, jag har sammanställt versionen .0151 av MAME och förutom de paket som du nämner är libqt4-dev nödvändigt. Hälsningar 🙂