Lần này, tôi sẽ nói về cách biên dịch phiên bản mới nhất của MAMEVì cái trên trang chính thức có những hạn chế về thời gian biên dịch.
Điều tốt khi biên dịch các chương trình cho máy tính của bạn là bạn sẽ tận dụng được nhiều hơn, đặc biệt là bộ xử lý trung tâm, vì các trình giả lập thường tận dụng nó nhiều hơn. Ngoài ra, việc cài đặt một lối vào để tương tác tốt hơn với chương trình.
Hướng dẫn hoặc hướng dẫn này được thiết kế cho những người không tuân theo MAME của vải. Vì vậy, những lợi ích có thể cảm nhận được khi bạn thực hiện thử nghiệm địa điểm. 🙂
Để bắt đầu công việc biên dịch, chúng tôi đã sao chép các nguồn chương trình, thực hiện như sau:
build-essential gconf2 libgconf2-dev libgtk2.0-dev libsdl1.2-dev libsdl-ttf2.0-dev
Người dùng của Archlinux, Tôi xin lỗi, nhưng tôi đã cài đặt các thư viện trong một thời gian dài, chỉ cần xem các thư viện ở đó và tìm kiếm đối tác của chúng với pacman.
git clone git://git.redump.net/mame
Khi quá trình nhân bản kết thúc, hãy chuyển đến thư mục đã tạo, trong trường hợp này, thư mục được tạo theo mặc định là «mame ».
Đã có trong thư mục này, chúng ta sẽ có một loạt các thư mục và tệp. Từ đây, chúng tôi chỉ quan tâm đến trang điểm. Họ mở nó bằng trình soạn thảo văn bản mà họ chọn và chúng tôi tìm kiếm thứ gì đó tương tự như sau:
#ARCHOPTS = -march=native # optimize for local machine (auto detect)
Và chúng tôi bỏ ghi chú dòng đó, rằng nó như được thấy trong hình ảnh sau đây.
Chúng tôi lưu các thay đổi và ngay tại đó, chúng tôi bắt đầu biên dịch bằng lệnh make:
make
Khi quá trình biên dịch kết thúc, một tệp sẽ xuất hiện có tên tùy thuộc vào kiến trúc hệ thống như mame nếu bạn ở 32bits hoặc hút64 cho 64bits.
Trong trường hợp của tôi, tôi đang sử dụng hệ thống 64-bit.
Chà, cho đến nay chúng tôi vẫn ổn, chúng tôi đã có thể chơi trò chơi với chương trình, nhưng nó hơi cồng kềnh đối với người mới bắt đầu. Vì vậy, hãy bổ sung nó với chương trình qmc2.
Ở đó, trong cùng một cửa sổ, chúng tôi thực hiện sữa chua để cài đặt giao diện người dùng.
Đối với người dùng Archlinux
yaourt -S qmc2
Đối với người dùng 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
Sao chép tệp thực thi của mame vào đường dẫn này dưới dạng: / usr / games / mame
Sau đó, họ mở chương trình qmc2–sdlmme và cửa sổ này sẽ xuất hiện:
Như bạn thấy, chương trình không yêu cầu nhiều.
Những thứ quan trọng nhất trong cửa sổ này là đường dẫn của tệp thực thi, thư mục làm việc và đường dẫn của các bản rom.
Và đây mame đang hoạt động. Vâng, tôi đã thử một trò chơi, một trong những trò chơi máy đánh bạc yêu thích của tôi, rất nhiều xu mà tôi lấy trong thời gian của nó, bây giờ tôi là người có được nước trái cây ở đây. xD
Của chúng tôi MAME hành động
Lời chào và chơi đã được nói 😀
Đây là bài viết đầu tiên của tôi cho blog này, mà tôi đã theo dõi trong một thời gian dài với biệt danh Mauricio, vì bài viết thú vị của anh ấy và anh ấy luôn có một cái gì đó mới để thể hiện.
28 bình luận, để lại của bạn
Bạn lấy rom ở đâu?
Trên Google, bạn ơi 🙂
Bài viết rất hay để nhớ rằng trước Steam đã có trò chơi điện tử trên GNU / Linux. Chúng không phải là mới hoặc bản địa, nhưng chúng có thể cung cấp hàng nghìn giờ giải trí và thú vị.
Và tôi muốn đặt tên là UME (http://mamedev.emulab.it/haze/), sáng kiến kết hợp giữa Mame và Mess (nếu Mame giải quyết các trò chơi thùng, Mess với bảng điều khiển video), tạo ra một trình giả lập đa hệ thống thực sự. Tôi chỉ thấy nó trong kho trình giả lập OpenSUSE và trong cộng đồng ArchLinux, nhưng để biên dịch nó trong Debian, các bước phải làm theo rất giống với những bước được NauTiluS cho Debian / Ubuntu.
Nếu bạn chỉnh sửa makefile và chuyển đến dòng 27, bạn sẽ tìm thấy một biến quan trọng. Biến này là biến chỉ định mục tiêu để xây dựng, có thể là: MAME, UME, MESS, v.v.
Trong trường hợp của bạn, hãy thay đổi nó thành UME, bạn sẽ nhận được tệp thực thi này.
Liên quan
xin chào
khi tôi thực hiện, tôi nhận được những điều sau:
src / osd / sdl / sdl.mak: 519: *** Không tìm thấy Trình biên dịch đối tượng Meta (moc) của Qt !. Cao.
Tôi sử dụng Kubuntu 12.04 32 bit
Cảm ơn
Có vẻ như với tôi rằng nó đang cảnh báo bạn rằng bạn cần phải cài đặt moc; Sau khi thực hiện một số nghiên cứu, tôi nhận thấy rằng thứ bạn có thể cần là ô tô, nhưng tôi không chắc. Thử tìm kiếm trong Sinaptic hoặc Aptitude, tôi không thể nhớ cái nào sử dụng Kubuntu.
Cảm ơn, đã cài đặt moc và automoc và đang biên dịch
Có tiện lợi khi cài đặt phiên bản mame mới nhất không? Tôi hỏi tại sao khi tải repo deb-đa phương tiện, tôi cài đặt mame hiện đại hơn bản thử nghiệm debian, nhưng ... nhiều trò chơi đã ngừng hoạt động. vì vậy tôi đã giữ phiên bản debian và tạm biệt các vấn đề.
Tôi không chắc nhưng tôi nghĩ rằng nhiều trò chơi được biên soạn cho một phiên bản mame nhất định
Cuối cùng tôi đã biên dịch
nhưng khi muốn cài đặt qmc2, tôi nhận được:
sudo apt-get cài đặt qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
Đang đọc danh sách gói ... Xong
Tạo cây phụ thuộc
Đang đọc thông tin trạng thái ... Xong
Không thể cài đặt một số gói. Điều này có thể có nghĩa là
bạn đã yêu cầu một tình huống bất khả thi hoặc nếu bạn đang sử dụng bản phân phối
không ổn định, một số gói cần thiết chưa được tạo hoặc có
đã được chuyển ra khỏi Incoming.
Thông tin sau có thể giúp giải quyết tình huống:
Các gói sau đây có các thuộc tính không được đáp ứng:
qmc2-sdlmess: Phụ thuộc: sdlmess (> = 0.144) nhưng nó không thể cài đặt được hoặc
lộn xộn (> = 0.144) nhưng nó không thể cài đặt được
qmc2-sdlume: Phụ thuộc: sdlume (> = 0.144) nhưng nó không thể cài đặt được hoặc
ume (> = 0.144) nhưng không thể cài đặt được
E: Không thể sửa chữa các vấn đề, bạn đã giữ lại các gói bị hỏng.
Xin chào và cảm ơn đã bình luận.
Những gì bạn phải làm trong trường hợp đó là đánh lừa hệ thống và cài đặt các gói được yêu cầu, sdlmame và sdlmess.
Khi đó vấn đề của bạn đã được giải quyết, sau đó thay thế hoặc chuyển đường dẫn có mame mà bạn đã biên dịch.
Liên quan
Tôi cố gắng cài đặt chúng bằng apt-get install nhưng tôi nhận được những điều sau:
sudo apt-get cài đặt sdlmess
Đang đọc danh sách gói ... Xong
Tạo cây phụ thuộc
Đang đọc thông tin trạng thái ... Xong
Gói sdlmess không khả dụng, nhưng một số tham chiếu gói khác
đến. Điều này có thể có nghĩa là gói bị thiếu, lỗi thời hoặc chỉ
có sẵn từ một số nguồn khác
E: Gói "sdlmess" không có ứng viên để cài đặt
và tương tự cho sdlume
Hãy thử như sau.
sudo touch sdlmess / usr / games /
Để đánh lừa trình cài đặt.
Liên quan
xin chào
Thăm dò, nhưng không có gì xảy ra, nó vẫn không cho phép tôi cài đặt ...
🙁
cài đặt xmame-sdl hoạt động tốt hoặc tốt hơn !! và bạn định tuyến đến / usr / games / mame -al mặc dù qmc2 yêu cầu sdl… .-.
Câu trả lời này có thể mất thời gian nhưng có thể nó sẽ hữu ích cho những người khác đang tìm kiếm điều tương tự. Tôi đã mất hai ngày để thu thập tất cả thông tin để làm cho mame hoạt động tốt trong phiên bản hiện tại của nó: 0.153.
Nếu bạn muốn rom cho phiên bản này, trang tốt nhất mặc dù hơi chậm là planetemu.net. Trân trọng.
Tôi vẫn không thể tìm thấy cách lọc rom trong qmc2 bằng thao tác, tôi không thể tìm thấy tùy chọn và nó ném cho tôi danh sách chính thức rất dài!
Điều tôi thích là qmc2 là một ứng dụng Qt: D, nhưng thật tiếc là tôi đang sử dụng kubuntu 14.04 vì qmc2 PPA chỉ có sẵn cho đến khi saucy.
Xin chào, bạn có thể thử biên dịch qmc2 bằng cách tải xuống các nguồn từ trang của nó.
http://qmc2.arcadehits.net/wordpress/download/
Chúc mừng.
tại sao phải cài đặt những (qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman) nếu chúng ta chỉ cài mame?
sudo apt-get cài đặt qmc2-sdlmame qmc2-sdlmess qmc2-sdlume qmc2-arcade qchdman
Đang đọc danh sách gói ... Xong
Tạo cây phụ thuộc
Đang đọc thông tin trạng thái ... Xong
Không thể cài đặt một số gói. Điều này có thể có nghĩa là
bạn đã yêu cầu một tình huống bất khả thi hoặc nếu bạn đang sử dụng bản phân phối
không ổn định, một số gói cần thiết chưa được tạo hoặc có
đã được chuyển ra khỏi Incoming.
Thông tin sau có thể giúp giải quyết tình huống:
Các gói sau đây có các thuộc tính không được đáp ứng:
qmc2-sdlmess: Phụ thuộc: sdlmess (> = 0.144) nhưng nó không thể cài đặt được hoặc
lộn xộn (> = 0.144) nhưng nó không thể cài đặt được
qmc2-sdlume: Phụ thuộc: sdlume (> = 0.144) nhưng nó không thể cài đặt được hoặc
ume (> = 0.144) nhưng không thể cài đặt được
E: Không thể sửa chữa các vấn đề, bạn đã giữ lại các gói bị hỏng.
Đối với những người xảy ra điều này, chỉ cần cài đặt qmc2-sdlmame
nó sẽ trông như thế này:
sudo add-apt-repository ppa: mmbossoni-gmail / emu
sudo apt-get update
sudo apt-get cài đặt qmc2-sdlmame
Xin chào, chúng được tải xuống như thế nào?
Khi thực hiện lệnh make nó xuất hiện lỗi sau:
src / osd / sdl / sdl.mak: 456: *** Đã phát hiện thấy Ubuntu 12.10. Vui lòng cài đặt gói gcc-4.6 và g ++ - 4.6. Dừng lại.
Khi cố gắng cài đặt gcc hoặc g ++, nó sẽ xuất hiện lỗi sau:
apt-get install gcc-4.6 –fix-thiếu
Đang đọc danh sách gói ... Xong
Tạo cây phụ thuộc
Đang đọc thông tin trạng thái ... Xong
Các gói bổ sung sau sẽ được cài đặt:
cpp-4.6 gcc-4.6-base
Các gói được đề xuất:
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
Các gói MỚI sau sẽ được cài đặt:
cpp-4.6 gcc-4.6 gcc-4.6-base
0 được cập nhật, 3 sẽ được cài đặt, 0 để xóa và 19 không được cập nhật.
Bạn cần tải xuống 12,5 MB tệp.
28,1 MB dung lượng đĩa bổ sung sẽ được sử dụng sau thao tác này.
Bạn có muốn tiếp tục [Y / n] không? S
LƯU Ý: Không thể xác thực các gói sau!
gcc-4.6-base cpp-4.6 gcc-4.6
Cài đặt các gói này mà không cần xác minh [y / n]? S
Ờ http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6-base amd64 4.6.3-10ubuntu1
404 Không tìm thấy [IP: 91.189.88.153 80]
Ờ http://archive.ubuntu.com/ubuntu/ quantal / main cpp-4.6 amd64 4.6.3-10ubuntu1
404 Không tìm thấy [IP: 91.189.88.153 80]
Ờ http://archive.ubuntu.com/ubuntu/ quantal / main gcc-4.6 amd64 4.6.3-10ubuntu1
404 Không tìm thấy [IP: 91.189.88.153 80]
Không thể có được http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6-base_4.6.3-10ubuntu1_amd64.deb 404 Không tìm thấy [IP: 91.189.88.153 80]
Không thể có được http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/cpp-4.6_4.6.3-10ubuntu1_amd64.deb 404 Không tìm thấy [IP: 91.189.88.153 80]
Không thể có được http://archive.ubuntu.com/ubuntu/pool/main/g/gcc-4.6/gcc-4.6_4.6.3-10ubuntu1_amd64.deb 404 Không tìm thấy [IP: 91.189.88.153 80]
Các gói bị thiếu không thể được sửa chữa.
E: Hủy cài đặt.
Tôi có Linux Mint Maya
đến đây http://foro.desdelinux.net/
Xin chào và xin lỗi vì sự chậm trễ trong việc trả lời.
Mint Maya linux đó là một người bạn rất cũ, bạn sẽ phải cài đặt gcc theo cách thủ công, để có thể biên dịch chương trình này.
Mặc dù tôi nghĩ rằng có một phương pháp khác, nhưng bạn phải tìm kiếm các gói theo cách thủ công trong các kho lưu trữ lịch sử ubuntu.
Tôi nghĩ Mint Maya dựa trên chính xác
http://packages.ubuntu.com/precise/devel/
Chỉ, bạn phải tải xuống các gói gcc 4.6 theo yêu cầu của chương trình.
này, làm cách nào để xóa tất cả các tệp?
Giả sử ý bạn là các tệp biên dịch, thì bằng cách chạy lệnh này trong terminal, hãy "làm sạch". Nếu muốn xóa mọi thứ và thư mục, hãy tải lên một thư mục ở trên và với rm -vrf "tên thư mục".
Xin chào! Tôi có Manjaro (Archlinux) và nó không biên dịch
Ném cái này vào tôi
/ usr / bin / ld: không thể tìm thấy -lSDL_ttf
Collect2: error: ld trả về trạng thái thoát 1
src / build / build.mak: 63: công thức cho target 'obj / sdl / build / file2str' không thành công
make: *** [obj / sdl / build / file2str] Lỗi 1
Ngoài ra, tôi không biết đâu là thư viện tương đương với những thư viện mà bạn đã đề cập ở phần đầu, ngoại trừ build-Essential, nếu bạn có thể giúp tôi một tay, tôi sẽ rất biết ơn!
Chào. Thật vậy, bạn cần thư viện SDL_ttf. Để cài đặt nó trên Archlinux, chỉ cần đặt vào bảng điều khiển "pacman -S sdl_ttf".
Ngoài ra, bạn phải cài đặt thư viện "pacman -S sdl".
Trên bản dựng cần thiết, rất có thể bạn đã cài đặt nó. Đây là những gì cài đặt trong ubuntu và dẫn xuất là một số tiện ích biên dịch cơ bản.
Bất kỳ sự bất tiện khác đừng ngần ngại hỏi.
Xin chào! Điều đó đã làm việc cho tôi! Cảm ơn bạn! bây giờ tôi có một lỗi khác, nó ném cho tôi cái này:
Biên dịch src / mame / video / model1.c…
src / mame / video / model1.c: Trong hàm 'void draw_quads (model1_state *, bitmap_rgb32 &, const Chữ nhật &)':
src / mame / video / model1.c: 307: 17: error: chỉ số con của mảng vượt quá giới hạn của mảng [-Werror = array-bounds]
while (p [ps2 + 1] .y == cury)
^
src / mame / video / model1.c: 319: 17: error: chỉ số dưới mảng nằm dưới giới hạn mảng [-Werror = array-bounds]
trong khi (p [ps1-1] .y == cury)
^
src / mame / video / model1.c: 319: 17: error: chỉ số dưới mảng nằm dưới giới hạn mảng [-Werror = array-bounds]
src / mame / video / model1.c: 329: 17: error: chỉ số con của mảng vượt quá giới hạn của mảng [-Werror = array-bounds]
while (p [ps2 + 1] .y == cury)
^
src / mame / video / model1.c: 329: 17: error: chỉ số con của mảng vượt quá giới hạn của mảng [-Werror = array-bounds]
src / mame / video / model1.c: 305: 17: error: chỉ số dưới mảng nằm dưới giới hạn mảng [-Werror = array-bounds]
trong khi (p [ps1-1] .y == cury)
^
cc1plus: tất cả các cảnh báo được coi là lỗi
makefile: 922: công thức cho target 'obj / sdl / mame / video / model1.o' không thành công
thực hiện: *** [obj / sdl / mame / video / model1.o] Lỗi 1
Có thể là?
Cảm ơn bạn!
Mọi thứ dường như chỉ ra lỗi trình biên dịch.
Bạn cần một phiên bản nâng cao hơn của trình biên dịch.
Xin chào, tôi đã biên dịch phiên bản .0151 của MAME và ngoài các gói mà bạn đề cập, libqt4-dev là cần thiết. Xin chào 🙂