he conseguido un iphone

Re: he conseguido un iphone

Postby mastintin » Sun Nov 21, 2010 7:57 pm

Antonio Linares wrote:Manuel,

El problema seguramente se debe a que no se está inicializando la máquina virtual de Harbour, ya que el punto de entrada de la aplicación no es el de Harbour.

Prueba a poner estas llamadas:
Code: Select all  Expand view

void dummy( void )
{
    // hb_cmdargInit( argc, argv );
    hb_vmInit( HB_TRUE ); // inicializa la maquina virtual de Harbour  
   
   if( symFPH == NULL )
        symFPH = hb_dynsymSymbol( hb_dynsymFindName( "DUMMY" ) );
   
    hb_vmPushSymbol( symFPH );
    hb_vmPushNil();
    hb_vmDo( 0 );        

    MsgInfo(@"no");

    hb_vmQuit(); // termina la maquina virtual de Harbour
}
 


Antonio no funciona ....
incluso asi casca :
Code: Select all  Expand view

void dummy(void)
{
    MsgInfo(@"nono");   
   
      hb_vmInit( HB_TRUE ); // inicializa la maquina virtual de Harbour  
   
   
    //if( symFPH == NULL )
    //  symFPH = hb_dynsymSymbol( hb_dynsymFindName( "MIA" ) );
   
      //  hb_vmPushSymbol( symFPH );
   
        //hb_vmPushNil();
    //  hb_vmDo( 0 );        

//  hb_vmQuit();
   
    MsgInfo(@"no")
   
}
 
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Mon Nov 22, 2010 6:44 am

Manuel,

En base a tus explicaciones para compilar los PRGs desde el xcode, estoy usando esta regla:

Image

Pero me genera este error:
/bin/sh: INPUT_FILE_BASE: command not found

A ti te está compilando bien ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Mon Nov 22, 2010 7:01 am

Asi parece que funciona: (falta proporcionarle el path para los ficheros de cabecera al compilar *.c)

/Users/anto/harbour/bin/harbour ${INPUT_FILE_BASE}.prg -n -o${DERIVED_FILES_DIR}/${INPUT_FILE_BASE}.c

manteniendo como "with output files:"

$(DERIVED_FILES_DIR)/$(INPUT_FILE_BASE).c
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Mon Nov 22, 2010 7:11 am

Asi he conseguido que use los ficheros de cabecera de Harbour :-)

La idea es que trate nuestros ficheros C como ficheros suyos, y les pase los flags del xcode, etc:

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Mon Nov 22, 2010 1:38 pm

Bueno, de momento la consola de xcode reporta un error concreto a solucionar:

Image

Ese es el error que se genera al llamar a hb_vmInit( TRUE );
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Mon Nov 22, 2010 10:30 pm

Implementada la clase SegmetedControl tanto desde codigo como desde recursos .Faltan mejoras y algunas funciones mas pero ya está funcionando correctamente desde ambos .

Saludos.

Code: Select all  Expand view


function Main()

   local oWnd := TWindow():New()
   local osegment = TSegment():New( oWnd, 77, 50, 207, 44 )
   
    osegment:addbutton("hola")
    osegment:addbutton("Adios")
   
   osegment:bChange:={|o| msginfo(str(o:nValue))    }

   
   oWnd:Activate()
   
return nil  

 

------------------------------- editado para ampliar ------------------------------------
Ya funciona el preprocesado de segments .....
Code: Select all  Expand view

function Main()

   local oWnd := TWindow():New()
   local osegment
   
 @ 77,50 SEGMENTED oSegment  ITEMS {"hola","Adios" } OF oWnd ;
            ON CHANGE  {|o| msginfo(str(o:nValue)) }  SIZE 207,44    
   
   oWnd:Activate()

return nil  
 



Image
Last edited by mastintin on Tue Nov 23, 2010 9:47 am, edited 2 times in total.
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Tue Nov 23, 2010 1:42 am

Ya podemos construir desde xcode! :-)

El error de la inicialización del GT es un error relacionado con el uso de g++ (en vez de gcc) y que ya se detectó en el 2009 y supuestamente se arregló, aunque a nosotros nos está apareciendo. Asi que lo que he hecho es anular la inicialización de la consola de Harbour, que además no la vamos a usar para nada :-)
(aqui se comentó http://www.mail-archive.com/harbour@har ... 23216.html)

Aqui esta la libreria libhbvm.a sin inicialización de consola:
http://www.mediafire.com/?weex3440tdvn04e
Ojo al enlazar, no incluir libhbvmmt.a !

He modificado main.m de esta forma para probar desde xcode:
Code: Select all  Expand view

#import <UIKit/UIKit.h>

void hb_vmInit( BOOL );

int main(int argc, char *argv[]) {
   
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    NSLog( @"antes de vmInit()" );
    hb_vmInit( TRUE );
    NSLog( @"despues de vmInit" );
    // int retVal = UIApplicationMain(argc, argv, nil, nil);
    [pool release];
    return 0; // retVal;
}
 

y añado un PRG que solo contiene una llamada a NSLog() (la he subido nueva al repositorio):
Code: Select all  Expand view

function Main()

   NSLog( "Si" )
   
return nil  
 

Y en la consola de xcode se muestra:
2010-11-23 02:38:54.168 harb1[5960:307] antes de vmInit()
2010-11-23 02:38:54.180 harb1[5960:307] Si
2010-11-23 02:38:54.183 harb1[5960:307] despues de vmInit

Debugger stopped.

Asi que ya podemos seguir haciendo pruebas y ver hasta donde avanzamos :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Tue Nov 23, 2010 2:08 am

Nuestras ventanas desde PRG funcionando! :-)

Al construir desde xcode se ejecuta el ...appdelegate.m del proyecto. Si en didFinishLaunchingWithOptions copiamos el código que tenemos en mainapp.m:
Code: Select all  Expand view

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    
   
    // Override point for customization after application launch.
    NSLog( @"antra en appdelegate" );

    PHB_SYMB symMain = hb_dynsymSymbol( hb_dynsymFindName( "MAIN" ) );
   
    NSLog( @"aqui" );
   
    // app = self;
   
    hb_vmPushSymbol( symMain );
    hb_vmPushNil();
    hb_vmDo( 0 );
   
    // Add the view controller's view to the window and display.
    // [window addSubview:viewController.view];
    // [window makeKeyAndVisible];

    return YES;
}
 

Salta perfectamente a nuestro PRG y desde ahi creamos la ventana correctamente :-)

Además la aplicación parece que se firma bien! Estoy usando una licencia de desarrollador de Apple y parece funcionar correctamente. Es decir:

YA NO NECESITAMOS QUE EL IPHONE TENGA JAILBREAK!!! :-D

Proxima prueba: Ejecutar en el simulador...
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Tue Nov 23, 2010 2:18 am

Image
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Tue Nov 23, 2010 8:04 am

Bien , Antonio , bien :D .
Exactamente eso estaba intentando hacer con el tema de la function dummy() , si se lanzaba dummy tambien podia lanzar main :P .
Ahora tenemos superado el tema de copiado y lanzado al iphone.
Sería importante hacer "mixtas" las librerias de harbour para iphone .Una misma libreria serviría para el iphone y el simulador y facilitaría el tema mucho .
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby mastintin » Tue Nov 23, 2010 8:23 am

Una cosa queda en el tintero ... Xcode no generará la aplicacion si no tenemos un certificado de desarrollador de apple .
Si uno se dedica profesionalmente a programar no supone un gran problema el desembolso a realizar , pero si solo se pretende "probar" o usamos el simulador que no necesita certificado ( de momento no disponible :D ) o usamos un iphone con jailbreak y "simulamos" que tenemos certificado para que xcode compile el programa ...
Seguir esta guía para el tema del certificado ( lo del paquete para cydia es otro tema ) http://iapps.scenebeta.com/tutorial/como-publicar-una-aplicacion-en-cydia-xcode-3-2-3iphone-sdk-4
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby Antonio Linares » Tue Nov 23, 2010 10:23 am

Manuel,

Sería importante hacer "mixtas" las librerias de harbour para iphone .Una misma libreria serviría para el iphone y el simulador y facilitaría el tema mucho


Si. Ayer intenté modificar el make pero no lo terminé. Es algo que tenemos que hacer para facilmente pasar del simulador al teléfono real y viceversa.

Otra idea es unir todas las librerias de Harbour usando lipo, con lo que será mucho más simple el proceso. Una única libreria :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby Antonio Linares » Tue Nov 23, 2010 11:08 am

Acabo de actualizar el iphone a la nueva versión 4.2.1, aun sin jailbreak, y la aplicación que usa Harbour funciona perfectamente en el iphone :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42099
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: he conseguido un iphone

Postby mastintin » Tue Nov 23, 2010 11:56 am

Antonio Linares wrote:Otra idea es unir todas las librerias de Harbour usando lipo, con lo que será mucho más simple el proceso. Una única libreria :-)

Creo que esta es la mejor opción , una unica librería para los dos sistemas permite cambiar de una a otra rapido.
saludos.
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

Re: he conseguido un iphone

Postby mastintin » Tue Nov 23, 2010 2:35 pm

Compilado y enviado al iphone con xCode ... con archivo de recursos ... :D :D
Image
User avatar
mastintin
 
Posts: 1516
Joined: Thu May 27, 2010 2:06 pm

PreviousNext

Return to FiveMac / FivePhone (iPhone, iPad)

Who is online

Users browsing this forum: No registered users and 2 guests