這次,我要談的是 編譯 最新版本 MAME由於在官方頁面上有一個編譯時的缺點。
為計算機編譯程序的好處是,您可以從中受益匪淺,尤其是中央處理器,因為仿真器通常會大量使用它。 另外,安裝一個 前端 與程序更好地交互。
本指南或教程專為那些不符合要求的人而設計 MAME 的面料。 因此,當您進行位置測試時,好處顯而易見。 🙂
為了開始編譯工作,我們克隆了程序源,並執行以下操作:
build-essential gconf2 libgconf2-dev libgtk2.0-dev libsdl1.2-dev libsdl-ttf2.0-dev
用戶 archlinux,我很抱歉,但是我已經安裝了很長時間的庫,只需查看其中的庫並通過 吃豆子.
git clone git://git.redump.net/mame
克隆過程完成後,請轉到創建的目錄,在這種情況下,默認情況下創建的目錄是«媽媽».
在該目錄中,我們將擁有一系列文件夾和文件。 從這裡開始,我們只對 生成文件。 他們使用自己選擇的文本編輯器將其打開,我們正在尋找類似於以下內容的東西:
#ARCHOPTS = -march=native # optimize for local machine (auto detect)
我們取消註釋該行,它保持不變,如下圖所示。
我們保存更改,然後在此處使用make命令開始編譯:
make
編譯過程完成工作後,將出現一個文件,該文件的名稱取決於系統體系結構,如下所示: 媽媽 如果您使用的是32位或 媽媽64 對於64位。
就我而言,我使用的是64位系統。
好吧,到目前為止,我們還不錯,我們已經可以使用該程序玩遊戲了,但是對於初學者來說有點麻煩。 所以讓我們用程序來補充它 qmc2.
在那裡,在同一窗口中執行 酸奶 安裝前端。
對於Archlinux用戶
yaourt -S qmc2
對於Ubuntu-Debian用戶
sudo add-apt-repository ppa:mmbossoni-gmail / emu sudo apt-get更新sudo apt-get安裝qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
將mame的可執行文件複製到以下路徑: / usr /遊戲/ mame
然後他們打開程序 qmc2 - 斯達瑪 並且此窗口將出現:
如您所見,該程序要求不高。
該窗口中最重要的是可執行文件的路徑,工作目錄和rom的路徑。
這是行動中的媽媽。 好吧,在那兒,我已經在嘗試一款遊戲,這是我最喜歡的老虎機之一,我花了很多時間在遊戲中,現在我是在這裡贏錢的人。 xD
我們的 MAME 在行動
有人打招呼和玩😀
這是我為該博客撰寫的第一篇文章,我以毛里西奧(Mauricio)的綽號關注了很長時間,他的有趣的帖子以及他總是有新東西要展示。
你從哪裡得到roms?
在Google上,朋友🙂
非常好的文章,請記住,在Steam之前,已經有GNU / Linux上的視頻遊戲。 它們不是新的或本機的,但它們可以提供數千小時的娛樂和樂趣。
我想命名為UME(http://mamedev.emulab.it/haze/),該計劃將Mame和Mess融合在一起(如果Mame處理的是街機遊戲,而Mess處理的是視頻控制台),則可以創建真正的多系統模擬器。 我只在OpenSUSE仿真器存儲庫和ArchLinux社區中看到過它,但是要在Debian中進行編譯,遵循的步驟與NauTiluS針對Debian / Ubuntu公開的步驟非常相似。
如果編輯makefile,然後轉到第27行,則會發現一個重要的變量。 此變量是指定要構建的目標的變量,它們是:MAME,UME,MESS等。
在您的情況下,將其更改為UME,您將獲得此可執行文件。
問候
你好
當我使我得到以下內容:
src / osd / sdl / sdl.mak:519:***未找到Qt的元對象編譯器(moc)! 高。
我使用Kubuntu 12.04 32位
謝謝
在我看來,這是在警告您,您需要安裝moc。 經過研究後,我發現您可能需要的是汽車,但我不確定。 嘗試在Sinaptic或Aptitude中搜索,我不記得哪個人使用Kubuntu。
謝謝,是安裝moc和automoc並正在編譯
安裝最新版本的mame是否方便? 我問為什麼在加載deb-multimedia倉庫時,我安裝了比debian測試版本更現代的mame,但是...許多遊戲停止了工作。 所以我保留了debian版本和再見問題。
我不確定,但我認為許多遊戲都是針對特定版本的mame編譯的
我終於編譯了
但是當想要安裝qmc2時,我得到:
須藤apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
正在閱讀包裝清單...完成
創建依賴樹
正在讀取狀態信息...完成
不要安裝一些包裝。 這可能意味著
您要求一個不可能的情況,或者如果您使用的是發行版
不穩定,尚未創建某些必需的軟件包或具有
已移出“傳入”。
以下信息可以幫助解決這種情況:
以下軟件包具有未滿足的依賴性:
qmc2-sdlmess:取決於:sdlmess(> = 0.144),但它不可安裝或
混亂(> = 0.144),但無法安裝
qmc2-sdlume:取決於:sdlume(> = 0.144),但它不可安裝或
ume(> = 0.144)但不可安裝
E:無法糾正問題,您保留了損壞的包裝。
您好,感謝您的評論。
在這種情況下,您所要做的就是欺騙系統並安裝所需的軟件包sdlmame和sdlmess。
這樣,您的問題就解決了,然後替換或傳遞您編譯的Mame所在的路徑。
問候
我嘗試使用apt-get install安裝它們,但得到以下信息:
sudo apt-get 安裝 sdlmess
正在閱讀包裝清單...完成
創建依賴樹
正在讀取狀態信息...完成
sdlmess軟件包不可用,但是其他一些軟件包參考
到了。 這可能意味著包裝件丟失,陳舊或僅
可從其他來源獲得
E:“ sdlmess”軟件包沒有候選安裝
和sdlume一樣
請嘗試以下方法。
sudo touch sdlmess / usr /遊戲/
欺騙安裝程序。
問候
你好
探測,但是什麼也沒發生,它仍然不會讓我安裝...
🙁
安裝xmame-sdl效果同樣好! 並且您路由到/ usr / games / mame-儘管qmc2要求輸入sdl….-。
這個答案很晚,但是對於其他正在尋找相同事物的人可能會有用。 我花了兩天的時間收集所有信息,以使Mame在當前版本0.153中正常工作。
如果您想要此版本的roms,儘管比較慢,最好的頁面是planetemu.net。 問候。
我仍然找不到如何通過操作過濾qmc2中的rom的方法,找不到該選項,這使我的官方名單非常長!
我喜歡的是qmc2是Qt:D應用程序,但是我使用kubuntu 14.04卻很可惜,因為qmc2 PPA僅在有效之前可用。
您好,您可以嘗試從qmc2頁面下載源代碼來編譯它。
http://qmc2.arcadehits.net/wordpress/download/
問候。
如果僅安裝mame,為什麼還要安裝這些(qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman)?
須藤apt-get install qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
正在閱讀包裝清單...完成
創建依賴樹
正在讀取狀態信息...完成
不要安裝一些包裝。 這可能意味著
您要求一個不可能的情況,或者如果您使用的是發行版
不穩定,尚未創建某些必需的軟件包或具有
已移出“傳入”。
以下信息可以幫助解決這種情況:
以下軟件包具有未滿足的依賴性:
qmc2-sdlmess:取決於:sdlmess(> = 0.144),但它不可安裝或
混亂(> = 0.144),但無法安裝
qmc2-sdlume:取決於:sdlume(> = 0.144),但它不可安裝或
ume(> = 0.144)但不可安裝
E:無法糾正問題,您保留了損壞的包裝。
對於那些發生這種情況的人,只需安裝qmc2-sdlmame
它看起來像這樣:
sudo add-apt-repository ppa:mmbossoni-gmail / mu
命令和apt-get update更新
須藤apt-get install qmc2-sdlmame
您好,如何下載?
執行make時,會出現以下錯誤:
src / osd / sdl / sdl.mak:456:***檢測到Ubuntu 12.10。 請安裝gcc-4.6和g ++-4.6軟件包。 停止。
嘗試安裝gcc或g ++時,出現以下錯誤:
apt-get install gcc-4.6 --fix-missing
正在閱讀包裝清單...完成
創建依賴樹
正在讀取狀態信息...完成
以下額外的軟件包將被安裝:
cpp-4.6 gcc-4.6-基礎
建議包裝:
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
將安裝以下新軟件包:
cpp-4.6 gcc-4.6 gcc-4.6-base
已更新0,將安裝3,將其刪除0,以及未更新19。
您需要下載12,5 MB的文件。
此操作後,將使用28,1 MB的額外磁盤空間。
您要繼續[是/否]嗎? s
注意:以下軟件包無法通過身份驗證!
基於gcc-4.6的cpp-4.6 gcc-4.6
安裝這些軟件包而不進行驗證[y / n]? s
犯錯 http://archive.ubuntu.com/ubuntu/ 量化/主要基於gcc-4.6的amd64 4.6.3-10ubuntu1
找不到404 [IP:91.189.88.153 80]
犯錯 http://archive.ubuntu.com/ubuntu/ 量化/主cpp-4.6 amd64 4.6.3-10ubuntu1
找不到404 [IP:91.189.88.153 80]
犯錯 http://archive.ubuntu.com/ubuntu/ 量化/主gcc-4.6 amd64 4.6.3-10ubuntu1
找不到404 [IP:91.189.88.153 80]
不可能得到 http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6-base_4.6.3-10ubuntu1_amd64.deb 找不到404 [IP:91.189.88.153 80]
不可能得到 http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/cpp-4.6_4.6.3-10ubuntu1_amd64.deb 找不到404 [IP:91.189.88.153 80]
不可能得到 http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6_4.6.3-10ubuntu1_amd64.deb 找不到404 [IP:91.189.88.153 80]
丟失的軟件包無法糾正。
E:中止安裝。
我有Linux Mint Maya
過來這裡 http://foro.desdelinux.net/
您好,對不起您的答复。
Mint Maya linux是一個非常老的朋友,您必須手動安裝gcc,才能編譯該程序。
雖然我認為還有另一種方法,但是您必須在ubuntu歷史存儲庫中手動搜索軟件包。
我認為薄荷瑪雅酒是基於精確的
http://packages.ubuntu.com/precise/devel/
僅,您必鬚根據程序要求下載gcc 4.6軟件包。
嘿,如何刪除所有文件?
假設您的意思是編譯文件,然後通過在終端“ make clean”中運行此命令。 如果要刪除所有內容和文件夾,請在上面的目錄中使用rm -vrf“文件夾名稱”。
你好! 我有Manjaro(archlinux),它無法編譯
扔給我
/ usr / bin / ld:找不到-lSDL_ttf
collect2:錯誤:ld返回退出狀態1
src / build / build.mak:63:目標'obj / sdl / build / file2str'的配方失敗
make:*** [obj / sdl / build / file2str]錯誤1
另外,除了build-essential之外,我不知道您開始時提到的庫中有哪些等效庫,如果您能幫我一下,我將不勝感激!
你好確實,您需要SDL_ttf庫。 要將其安裝在archlinux上,只需將其放入控制台“ pacman -S sdl_ttf”。
另外,您必須安裝“ pacman -S sdl”庫。
在基本構建上,很可能您已經安裝了它。 在ubuntu和衍生版本中安裝的是一些基本的編譯實用程序。
任何其他不便之處請隨時提出。
你好! 那對我有用! 謝謝! 現在我又遇到了一個錯誤,這使我想到了:
編譯src / mame / video / model1.c…
src / mame / video / model1.c:在函數'void draw_quads(model1_state *,bitmap_rgb32&,const矩形&)'中:
src / mame / video / model1.c:307:17:錯誤:數組的下標超出了數組的限制[-Werror = array-bounds]
而(p [ps2 + 1] .y == cury)
^
src / mame / video / model1.c:319:17:錯誤:數組的下標低於數組的限制[-Werror = array-bounds]
而(p [ps1-1] .y == cury)
^
src / mame / video / model1.c:319:17:錯誤:數組的下標低於數組的限制[-Werror = array-bounds]
src / mame / video / model1.c:329:17:錯誤:數組的下標超出了數組的限制[-Werror = array-bounds]
而(p [ps2 + 1] .y == cury)
^
src / mame / video / model1.c:329:17:錯誤:數組的下標超出了數組的限制[-Werror = array-bounds]
src / mame / video / model1.c:305:17:錯誤:數組的下標低於數組的限制[-Werror = array-bounds]
而(p [ps1-1] .y == cury)
^
cc1plus:所有警告均視為錯誤
生成文件:922:目標'obj / sdl / mame / video / model1.o'的配方失敗
製作:*** [obj / sdl / mame / video / model1.o]錯誤1
可能是哪個?
格拉西亞斯!
一切似乎都指示編譯器錯誤。
您需要編譯器的更高級版本。
您好,我編譯了MAME的.0151版本,除了您提到的軟件包,還需要libqt4-dev。 問候🙂