Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: xaps en 19 Febrero 2014, 11:09 am



Título: Compilar en 32bits desde linux 64bits
Publicado por: xaps en 19 Febrero 2014, 11:09 am
Buenos dias

Estoy programando un crackme sencillo para practicar ingenieria inversa, pero no consigo que se me compile correctamente en 32bits (Estoy usando un Linux 64bits). Compilo mediante g++ y usando la opción -m32 de la siguiente manera:
Código:
g++ -c -m32 crackme1.cpp
g++ -o crackme1.exe -m32 crackme1.o

El programa compila perfectamente y puedo ejecutarlo desde linux, pero cuando intento ejecutarlo desde un Windows 7 64bits o abrirlo con OllyDBG me dice que no es una aplicación de 32bits, sinó de 64. En Windows me sale un error también del estilo.

Ya he compilado antes en 32bits desde el mismo ordenador y sistema operativo y no he tenido problemas, así que no creo que sea tema de librerias o algo parecido :S

Os adjunto el código por si alguien se anima a intentar compilarlo bajo un sistema de 32 bits y a ver si alguien se le ocurre que puede estar pasando.

Código del crackme:
http://pastebin.com/hPSUHR4u

Gracias.


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: MeCraniDOS en 20 Febrero 2014, 12:27 pm
Os adjunto el código por si alguien se anima a intentar compilarlo bajo un sistema de 32 bits y a ver si alguien se le ocurre que puede estar pasando.

A mi me compila perfecto con Code::Blocks  :rolleyes:

Windows XP x86


(http://imageshack.com/a/img191/7434/jlx6.jpg)

Saludos  :silbar:


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: xaps en 21 Febrero 2014, 00:22 am
A mi me compila perfecto con Code::Blocks  :rolleyes:
El problema no es que compile o no compile, el problema es que aunque active el flag para que se compile en 32bits, lo hace en 64bits.

Si lo has compilado en un sistema 32bits te agradeceria que me enviaras un enlace con el archivo, ya que me gustaria analizarlo con Ollydbg.

Gracias y saludos.


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: MeCraniDOS en 23 Febrero 2014, 19:20 pm
Si lo has compilado en un sistema 32bits te agradeceria que me enviaras un enlace con el archivo, ya que me gustaria analizarlo con Ollydbg.

https://mega.co.nz/#!IR80GTzR!4w1tzCiYBuXj94xw8rCNU-RN0g7xCtcYpJtSd8W9y4c (https://mega.co.nz/#!IR80GTzR!4w1tzCiYBuXj94xw8rCNU-RN0g7xCtcYpJtSd8W9y4c)

Saludos  ;)


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: xaps en 23 Febrero 2014, 22:17 pm
https://mega.co.nz/#!IR80GTzR!4w1tzCiYBuXj94xw8rCNU-RN0g7xCtcYpJtSd8W9y4c (https://mega.co.nz/#!IR80GTzR!4w1tzCiYBuXj94xw8rCNU-RN0g7xCtcYpJtSd8W9y4c)

Saludos  ;)

Muchas gracias! :)


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: dmacias en 23 Febrero 2014, 23:50 pm
No se si te entendi bien, pero creo que lo que buscas es esto

instalas
Código:
mingw-w64-gcc

y luego para compilar

Código:
i686-w64-mingw32-gcc

lo que seria un ejemplo real

Código:
i686-w64-mingw32-gcc prueba.c -o prueba.exe

Espero que fueras eso lo que buscabas :)


Título: Re: Compilar en 32bits desde linux 64bits
Publicado por: dmacias en 24 Febrero 2014, 16:40 pm
No me fije k usas c++ en vez de c   :-X