Iniciar sesión

Ver la versión completa : Alguien tiene el Gens para Linux de 64 bit?



neostalker
26/06/2008, 19:11
He estado un buen rato rebuscando por la red y solo he encontrado las versiones para linux de 32 bit. Por lo que leí en un foro es necesario compilar el código en un sistema operativo de este tipo para poder hacer funcionar el emulador (no he encontrado el .deb ya creado), pero yo no tengo ni idea de compilar nada xDDDD

Si alguien me puede pasar el emulador se lo agradecería :)

Es necesario que sea una versión compatible con Ubuntu 8.04 Hardy Heron.

otto_xd
26/06/2008, 19:14
Yo lo encontre, pero no se donde lo tengo... y ademas, la version que me baje, no soportaba megacd :S

Saludos, lo voy a buscar en mi disco, a ver si da la casualidad...

efegea
26/06/2008, 19:15
Juraria que no es posible, que el gens lleva ensamblador de 32 bits y no compila en 64 bits, al menos en gentoo solo esta para la plataforma x86 porque en las demas no funciona..

neostalker
26/06/2008, 19:16
Yo lo encontre, pero no se donde lo tengo... y ademas, la version que me baje, no soportaba megacd :S

Saludos, lo voy a buscar en mi disco, a ver si da la casualidad...
No importa, solo me interesa emular Megadrive :)

Segata Sanshiro
26/06/2008, 19:30
En los repositorios de Ubuntu no está el Gens? Bueno, por si quieres probar compilándolo, métete aquí:

http://mythtv.wbond.net/gens_for_linux_mythgame_edition/

Es una versión mejorada del último Gens del autor original. La única que compila sin esfuerzo en teoría xD Al menos a mí me funcionó perfectamente. Abajo del todo, donde pone "Patched Source Code" baja cualquiera, por ejemplo "Gens MythGame Edition (SDL)".

Lo descomprimes en tu carpeta. Abre un terminal, métete en la carpeta (imagino que será /home/neoestalquer/gens-mythgame o algo así) ejecuta "./configure" (si esto da errores, avisa) y luego "make" para que compile, y espera un rato a ver si no da errores. Luego en teoría si escribes ya "gens" (creo) se ejecuta el emu... (y posteriormente puedes poner un icono en el menú y tal). Pero vamos, si dicen que en 64 bits no compila...

otto_xd
26/06/2008, 19:32
pues no lo encuentro en mi disco duro.... cuando pueda busco el .deb.

Saludos.

PD.Mienras tanto, juega desde wine xD

efegea
26/06/2008, 19:33
Hombre la ultima vez no me compiló, pero de eso hace tiempo pueden haber cambiado las cosas. Yo no digo las cosas con rotundidad xD

Puede que la versión que no compilaba fuese una antigua y que la hayan mejorado..

Segata Sanshiro
26/06/2008, 19:34
PD.Mienras tanto, juega desde wine xD

Ah, cierto, Gens y Fusion creo recordar que funcionaban :D Es una guarrería pero bueno. Aparte que no siempre funcionan a la primera y tienes que andar toqueteando por ahí.

efegea
26/06/2008, 19:37
Me habeis picado, voy a intentar compilar el gens para mythtv con opengl parcheado.

Ahora subo el ejecutable

< - >
Pues va a ser que no :(


Making all in gens
make[3]: se ingresa al directorio `/home/frajan/tmp/gens-mythgame-opengl/src/gens'
source='gens_core/cpu/68k/cpu_68k.c' object='gens_core/cpu/68k/gens-cpu_68k.o' libtool=no \
depfile='.deps/gens_core/cpu/68k/gens-cpu_68k.Po' tmpdepfile='.deps/gens_core/cpu/68k/gens-cpu_68k.TPo' \
depmode=gcc3 /bin/sh ../../depcomp \
gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I./gens_core/cpu/68k -I./gens_core/cpu/sh2 -I./gens_core/cpu/z80 -I./gens_core/sound -I./gens_core/mem -I./gens_core/misc -I./gens_core/gfx -I./gens_core/io -I./gens_core/vdp -I./segacd -I./mp3_dec -I./sdllayer -I./util -I./port -I./emulator -I./debug -I./netplay -I./gtkui -I./gtkui/glade -I. -DDATADIR=\"/usr/local/share/gens\" -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -I/usr/include/libpng12 -I/usr/include/pixman-1 -g -O2 -g -O2 -c -o gens_core/cpu/68k/gens-cpu_68k.o `test -f gens_core/cpu/68k/cpu_68k.c || echo './'`gens_core/cpu/68k/cpu_68k.c
gens_core/cpu/68k/cpu_68k.c:27: error: el elemento inicializador no es constante
gens_core/cpu/68k/cpu_68k.c:27: error: (cerca de la inicializaci&#243;n de 'M68K_Fetch[1].offset')
gens_core/cpu/68k/cpu_68k.c:28: error: el elemento inicializador no es constante
gens_core/cpu/68k/cpu_68k.c:28: error: (cerca de la inicializaci&#243;n de 'M68K_Fetch[2].offset')
gens_core/cpu/68k/cpu_68k.c:29: error: el elemento inicializador no es constante
gens_core/cpu/68k/cpu_68k.c:29: error: (cerca de la inicializaci&#243;n de 'M68K_Fetch[3].offset')
gens_core/cpu/68k/cpu_68k.c:63: error: el elemento inicializador no es constante
gens_core/cpu/68k/cpu_68k.c:63: error: (cerca de la inicializaci&#243;n de 'S68K_Fetch[0].offset')
gens_core/cpu/68k/cpu_68k.c: En la funci&#243;n 'M68K_Set_32X_Rom_Bank':
gens_core/cpu/68k/cpu_68k.c:365: aviso: conversi&#243;n de puntero a entero de tama&#241;o diferente
gens_core/cpu/68k/cpu_68k.c: En la funci&#243;n 'M68K_Set_Prg_Ram':
gens_core/cpu/68k/cpu_68k.c:390: aviso: conversi&#243;n de puntero a entero de tama&#241;o diferente
make[3]: *** [gens_core/cpu/68k/gens-cpu_68k.o] Error 1
make[3]: se sale del directorio `/home/frajan/tmp/gens-mythgame-opengl/src/gens'
make[2]: *** [all-recursive] Error 1
make[2]: se sale del directorio `/home/frajan/tmp/gens-mythgame-opengl/src'
make[1]: *** [all-recursive] Error 1
make[1]: se sale del directorio `/home/frajan/tmp/gens-mythgame-opengl'
make: *** [all] Error 2

kraff2
26/06/2008, 20:41
No sé como estará ahora mismo la cosa con las distros de 64 bits, pero tienes varias opciones para hacer funcionar el gens de 32 bits en una ditro de 64 bits:

--- Montar un chroot de 32 bits dentro de la de 64 bits, engorroso si es solo por un par de aplicaciones, pero podrás tener todas las aplicaciones de 32 bits que quieras instalándolas ahí: http://www.guia-ubuntu.org/index.php?title=Aplicaciones_x86_en_AMD64

--- Buscar las librerías de 32 bits que necesita el ejecutable de 32 bits e instalarlas manualmente en /usr/lib32, mucho trabajo si necesitas hacerlo para muchas aplicaciones pero útil para pocas. Los pasos más o menos serían:

1. Ejecutar ldd con el nombre del ejecutable para ver las librerías que necesita y que no tenemos instaladas:

ldd gens
linux-gate.so.1 => (0xb7ef7000)
libGL.so.1 => /usr/lib/libGL.so.1 (0xb7e34000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0xb7e0f000)
libz.so.1 => /usr/lib/libz.so.1 (0xb7df9000)
libSDL-1.2.so.0 => /usr/lib/libSDL-1.2.so.0 (0xb7d6a000)
libgtk-x11-2.0.so.0 => /usr/lib/libgtk-x11-2.0.so.0 (0xb79f3000)
libgdk-x11-2.0.so.0 => /usr/lib/libgdk-x11-2.0.so.0 (0xb796f000)
libatk-1.0.so.0 => /usr/lib/libatk-1.0.so.0 (0xb7955000)
libgdk_pixbuf-2.0.so.0 => /usr/lib/libgdk_pixbuf-2.0.so.0 (0xb793d000)
libpangocairo-1.0.so.0 => /usr/lib/libpangocairo-1.0.so.0 (0xb7933000)
libpango-1.0.so.0 => /usr/lib/libpango-1.0.so.0 (0xb78f6000)
libcairo.so.2 => /usr/lib/libcairo.so.2 (0xb7894000)
libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0xb7858000)
libgmodule-2.0.so.0 => /usr/lib/libgmodule-2.0.so.0 (0xb7854000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0xb7850000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb779e000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0xb764f000)
librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0xb7646000)
libGLcore.so.1 => /usr/lib/libGLcore.so.1 (0xb6b31000)
libnvidia-tls.so.1 => /usr/lib/tls/libnvidia-tls.so.1 (0xb6b2f000)
libXext.so.6 => /usr/lib/libXext.so.6 (0xb6b21000)
libX11.so.6 => /usr/lib/libX11.so.6 (0xb6a39000)
/lib/ld-linux.so.2 (0xb7ef8000)
libasound.so.2 => /usr/lib/libasound.so.2 (0xb6976000)
libdirectfb-1.0.so.0 => /usr/lib/libdirectfb-1.0.so.0 (0xb6913000)
libfusion-1.0.so.0 => /usr/lib/libfusion-1.0.so.0 (0xb690b000)
libdirect-1.0.so.0 => /usr/lib/libdirect-1.0.so.0 (0xb68f8000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0xb68df000)
libXcomposite.so.1 => /usr/lib/libXcomposite.so.1 (0xb68dc000)
libXdamage.so.1 => /usr/lib/libXdamage.so.1 (0xb68d9000)
libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0xb68d4000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0xb68aa000)
libXrender.so.1 => /usr/lib/libXrender.so.1 (0xb68a1000)
libXinerama.so.1 => /usr/lib/libXinerama.so.1 (0xb689e000)
libXi.so.6 => /usr/lib/libXi.so.6 (0xb6896000)
libXrandr.so.2 => /usr/lib/libXrandr.so.2 (0xb6890000)
libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0xb6887000)
libpangoft2-1.0.so.0 => /usr/lib/libpangoft2-1.0.so.0 (0xb685f000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0xb67ef000)
libpng12.so.0 => /usr/lib/libpng12.so.0 (0xb67cc000)
libpixman-1.so.0 => /usr/lib/libpixman-1.so.0 (0xb67a3000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0xb66b0000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0xb66a4000)
libselinux.so.1 => /lib/libselinux.so.1 (0xb668b000)
libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb6664000)
libXau.so.6 => /usr/lib/libXau.so.6 (0xb6661000)
libxcb-xlib.so.0 => /usr/lib/libxcb-xlib.so.0 (0xb665f000)
libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb6646000)
libexpat.so.1 => /usr/lib/libexpat.so.1 (0xb6625000)
libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0xb6620000)
En este caso las tengo todas pero si no estuviesen te lo diría ;)

2.- Buscar en packages.debian.org las librerías que faltan en el apartado "Search the contents of packages", y descargar el paquete para i386

3.- Descomprimirlo con dpkg-deb -x nombre_del_paquete.deb

4.- Copiar la librería a /usr/lib32

5.- Ejecutar ldconfig

6.- Volver a ejecutar el ldd inicial para comprobar que ahora si tenemos las librería instalada :)

7.- Repetir el proceso por cada librería que falte :D

8.- Instalar una distro de 32 bits si nos hartamos de repetir los 7 pasos anteriores:quepalmo:



PD: Si alguien me recrimina la cantidad de veces que he usado librería en vez de biblioteca le recuerdo que en castellano son sinónimos y perfectamente intercambiables por mucho que en inglés no signifiquen lo mismo

< - >
Por cierto efegea, podr&#237;as probar a compilar en 64 bit la versi&#243;n oficial del gens (que tamb&#237;&#233;n tiene soporte opengl), por si sonase la flauta:

http://sourceforge.net/project/showfiles.php?group_id=73619

efegea
26/06/2008, 20:45
Por cierto efegea, podrías probar a compilar en 64 bit la versión oficial del gens (que tambíén tiene soporte opengl), por si sonase la flauta:

http://sourceforge.net/project/showfiles.php?group_id=73619

Pero la que he tratado de compilar traía un parche para que compile bajo GCC 4 y la oficial, supongo que no, por lo que es más dificil que compile...

kraff2
26/06/2008, 21:00
Es que la oficial es de hace una semana, y la he compilado sin problemas en una distro actualizada (de 32 bits).