ARCADE FOREVER

[TUTORIAL] Compilar AdvanceMenu/AdvMenuPLUS (Linux, Windows y DOS), Descarga de compiladores, Instrucciones de compilación y optimización

« Older   Newer »
  Share  
daesdae
view post Posted on 9/9/2012, 19:42 by: daesdae     +2   +1   -1




Compilar AdvanceMenu/AdvMenuPLUS (DOS, Windows y Linux)



00 - Descargar codigo fuente del "advmenuplus"

- Versiones publicadas: https://sourceforge.net/projects/advmenupl...vmenuplus/beta/

- Código Fuente de la última revisión: Descargar Código

- Para ver las revisiones que se van añadiendo: https://sourceforge.net/p/advmenuplus/code/commit_browser

01 - Compilar version DOS/Windows

- Descargar el compilador:
· DJGPP (DOS) djgpp-advmenuplus.zip (16.6MB)
· MINGW (Windows) Mingw-advmenuplus.zip (43.7MB)

- Descomprimir el compilador en "c:\" debe quedar: "c:\djgpp" o "c:\Mingw"

- Descomprimir el codigo fuente del advancemenu o advmenuplus en cualquier sitio.

- Para optimizar, consultar el apartado "03 - Optimización"

- Para comenzar la compilación ejecutar el archivo "compile-dos.bat" o "compile-win.bat" que se encuentra en la carpeta raiz del codigo fuente

- Si todo ha ido bien se habrá creado el ejecutable "advmenu.exe/advmenup.exe" en la carpeta raiz del codigo fuente

Notas:
- Si en el codigo fuente no se encuentra el bat "compile-dos.bat" o "compile-win.bat" copiar el bat "compile.bat" que se encuentra en la carpeta EXTRAS del compilador
- Si al compilar la version para Windows da un error por algo de 'splash', copiar las imagenes que se encuentran en "c\Mingw\EXTRAS\SPLASH" en el directorio raiz del codigo fuente
- La version Windows necesita para su ejecucion las librerias: sdl.dll, libexpat.dll, freetype6.dll y zlib1.dll que se encuentran en: "c:\Mingw\EXTRAS\LIBS"

02 - Compilar version Linux

- Para compilar se necesitan tener instalados los siguientes paquetes
- built-essential (gcc,g++)
- libsdl1.2-dev
- libexpat1-dev
- libfreetype6-dev
- nasm
- libsvga1-dev (1.9.25 - versión pre-release) (Opcional)
Web oficial: www.svgalib.org/
Source code: http://mail.arava.co.il/~matan/svgalib/
Para debian podéis encontrar el paquete en:
repositorio: deb http://ftp.de.debian.org/debian]http://ftp...bian.org/debian experimental main
web: http://packages.debian.org/experimental/i3...bsvga1/download

Para instalar los paquetes:
CODE
sudo apt-get install PAQUETE

Ejemplo:
CODE
sudo apt-get install built-essential

Para compilar e instalar libsvga1-dev:
CODE
make install


Una vez instalados los paquetes anteriores:
- Descargar y descomprimir el codigo fuente del advmenu/advmenuplus en cualquier directorio
- Desde el directorio del codigo fuente ejecutar los comandos:
CODE
./configure
make


- Para optimizar, consultar el apartado "03 - Optimización"

03 - Optimización

Windos o DOS:

- Antes de compilar, editar el archivo "Makefile.usr" y escoger una optimización quitando el símbolo '#' (almohadilla/Sharp) de la línea escogida. Por defecto (sin editar el Makefile) se optimiza para Pentium.
- Las posibles optimizaciones son:
CODE
# Select the optimization flags: (optimized build for Pentium by default)
# Optimized build for Pentium
#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=pentium -Wall -Wno-sign-compare -Wno-unused
# Optimized build for Pentium Pro, Pentium II, Pentium III, Celeron
#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=pentium2 -Wall -Wno-sign-compare -Wno-unused
# Optimized build for Pentium IV
#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=pentium4 -Wall -Wno-sign-compare -Wno-unused
# Optimized build for K6, K6-II, K6-III
#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=k6 -Wall -Wno-sign-compare -Wno-unused
# Optimized build for Duron, Athlon, Athlon XP, Athlon MP
#CONF_CFLAGS_OPT=-O2 -fomit-frame-pointer -march=athlon -Wall -Wno-sign-compare -Wno-unused


Nota: Dado que el programa no consume muchos recursos, no vais a notar a penas o nada una mejora en el rendimiento, por lo que desde mi humilde opinión dejar la optimización por defecto.

Linux:

- Para compilar sin alguna librería:
CODE
./configure --disable-LIBRERIA

Ejemplo, sin libsvga:
CODE
./configure --disable-svgalib


- Para optimizar para una determinada arquitectura:
CODE
./configure CFLAGS="FLAGS"

donde FLAGS son los descritos en el apartado anterior (Windos o DOS)

Ejemplo para Pentium IV:
CODE
./configure CFLAGS="-O2 -fomit-frame-pointer -march=pentium4 -Wall -Wno-sign-compare -Wno-unused"


Estos FLAGS dependen de la versión del compilador GCC que se use por lo que puede que no funciones.
Dejo enlaces a documentación al respecto:

Articulo cojonudo que aclara muchas cosas, entre ellas que no hay que perder mucho tiempo en este asunto de optimizar
www.gentoo.org/doc/es/gcc-optimization.xml

Otro de los amigos de gentoo
http://en.gentoo-wiki.com/wiki/Safe_Cflags

En este muestran los distintos flags según la arquitectura de los Intel
http://en.gentoo-wiki.com/wiki/Safe_Cflags/Intel

Y por ultimo, en el que podemos ver los flags que admiten los distintos gcc
http://gcc.gnu.org/onlinedocs/ -> GCC X.X.X Manual -> Hardware Models and Configurations

FIN

Edited by daesdae - 21/12/2016, 17:19
 
Top
16 replies since 9/9/2012, 19:42   8661 views
  Share