[C con Clase] compilación de una libreria para arquitectura ARMV4

RFOG rfog en cableworld.es
Vie Jul 20 17:48:01 CEST 2007


El problema está bastante extendido, pero es un problema un tanto  
"extraño". Es decir, para cada arquitectura hay repartidos por todo el  
código fuente compilaciones condicionales dependiendo de la arquitectura,  
como ARM, MIPS, etc. El problema es que no es un tema unificado, ya que  
una partes requieren _ARM, otras ARM, otras quizás otros valores. Y no es  
culpa de MS, sino de las empresas anexas que desarrollan ese código, que  
no siguen las mismas pautas.

La solución más socorrida pasa por coger el stdafx.h de un proyecto  
antiguo (incluso del eVC 3) que compile bien e insertarlo en el stdafx.h  
de tu proyecto actual, así como mirar qué definiciones hay en las opciones  
del preprocesador.

Macros que debes definir hay muchas, en uno de los proyectos que yo manejo  
con el eVC tengo:

DEBUG,ARM,_ARM_,ARMV4I,UNDER_CE=$(CEVersion),_WIN32_WCE=$(CEVersion),$(CePlatform),UNICODE,_UNICODE

pero tu podrías necesitar más.



En Fri, 20 Jul 2007 16:39:09 +0200, ERVA <abraxas_dragon en yahoo.com.mx>  
escribió:

> Hola:
>
> En estos dias estoy tratando de compilar unas librerias en Microsoft  
> Visual Studio  (Visual C++) para una arquitectura ARMV4 que corresponde  
> con un sistema Windows Pocket PC, pero no he tenido mucho éxito. La  
> salida me arrojá alguno errores que los comparto con ustedes:
>
> /**********************************************************/
> ..\funccomm.c(667) : error C2037: left of 'tm_year' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(681) : error C2037: left of 'tm_mon' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(682) : error C2037: left of 'tm_mday' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(683) : error C2037: left of 'tm_hour' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(684) : error C2037: left of 'tm_min' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(685) : error C2037: left of 'tm_sec' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(699) : error C2037: left of 'tm_mon' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(700) : error C2037: left of 'tm_mday' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(701) : error C2037: left of 'tm_hour' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(702) : error C2037: left of 'tm_min' specifies undefined  
> struct/union 'tm'
> ..\funccomm.c(703) : error C2037: left of 'tm_sec' specifies undefined  
> struct/union 'tm'
> ..\pkcs5.c(21) : fatal error C1083: Cannot open include file:  
> 'sys\timeb.h': No such file or directory
> ...\r_random.c(49) : fatal error C1083: Cannot open include file:  
> 'sys\timeb.h': No such file or directory
> /***********************************************************************/
>
> Tomando en cuenta los dos últimos mensajes de error, encontré en otras  
> listas de correo  
> (http://sources.redhat.com/ml/pthreads-win32/2003/msg00101.html y  
> http://cygwin.com/ml/pthreads-win32/2004/msg00070.html) donde tratan de  
> compilar una librería para WinCE en eVC++ (muy similar a lo que estoy  
> haciendo, pero para  otra librería). Sugieren agregar una macro (_ARM_ o  
> WINCE, dependiendo) en ciertas partes del código.
>
> Lo que a mí me confunde es cuál es el criterio que se tiene que seguir  
> para hacer esas modificaciones.
>
> Ahora bien, dandome una vuelta por las macros definidas en mi Visual  
> C++ para WinCE encontré dos macros definidas: _ARM_ y ARM.
>
> Espero me puedan orientar, por favor.
>
> De antemano gracias.
>
> Reciban un afectuoso saludo.
> _______________________________________________
> Lista de correo Cconclase Cconclase en listas.conclase.net
> http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net
> Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ



-- 
Visita mi  blog principal: http://rfog.blogsome.com
Y este sobre programación: http://geeks.ms/blogs/rfog
Libros, ciencia ficción y  programación
========================================
No tenemos más derecho a consumir felicidad sin producirla, que a consumir  
riqueza sin producirla.
		-- George Bernard Shaw. (1856-1950) Dramaturgo irlandés.




Más información sobre la lista de distribución Cconclase