Talk:How to run OpenMoko Apps on PC

From Openmoko

(Difference between revisions)
Jump to: navigation, search
(no autogen in openmoko-libs)
 
Line 98: Line 98:
  
 
--[[User:Shahn|Shahn]] 15:35, 8 May 2007 (CEST)
 
--[[User:Shahn|Shahn]] 15:35, 8 May 2007 (CEST)
 +
 +
== no autogen in openmoko-libs ==
 +
 +
How comes I have to autogen.sh in $OPENMOKODIR/openmoko-libs ? [[User:Micktaiwan|micktaiwan]] 18:12, 2 March 2008 (CET)

Latest revision as of 19:12, 2 March 2008

Question: What about running apps under an emulator instead of building them for the PC ? Ideally use the OE stuff to build a diskimage and point the emulator at that to 'boot' off of and run, etc.

Answer: That's what Qemu is for. Use OpenEmbedded to produce openmoko-devel-image for MACHINE = "qemuarm".

Q2: That's just yet another target; I could build them for PPC too if I wanted, sure, but it's not *useful*. What I'm looking for is a way to build the exact same bits you'd build for the Neo itself and have them runnable by pointing an emulator at them. Does *that* exist? Qemu looks like the core of something that might work that way, but definitely not quite there.

[edit] Problems with build on Ubuntu Edgy

1. I checked out svn version 993. 2. Installed some qt development packages to get qmake. 3. cd into OM-2007 as per instructions. 4. type>qmake (no output, ok?) 5. type>make and get (failure):

cd openmoko-libs && qmake openmoko-libs.pro -o Makefile cd openmoko-libs && make -f Makefile make[1]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs' cd libmokocore && qmake libmokocore.pro -o Makefile Cannot find directory: /devel/qmake cd libmokocore && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokocore' rm -f libmokocore.so.0.0.1 libmokocore.so libmokocore.so.0 libmokocore.so.0.0 g++ -shared -Wl,-soname,libmokocore.so.0 -o libmokocore.so.0.0.1 -L/usr/share/qt3/lib -lqt-mt -lpthread ln -s libmokocore.so.0.0.1 libmokocore.so ln -s libmokocore.so.0.0.1 libmokocore.so.0 ln -s libmokocore.so.0.0.1 libmokocore.so.0.0 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokocore' cd libmokonet && qmake libmokonet.pro -o Makefile Cannot find directory: /devel/qmake cd libmokonet && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokonet' rm -f libmokonet.so.0.0.1 libmokonet.so libmokonet.so.0 libmokonet.so.0.0 g++ -shared -Wl,-soname,libmokonet.so.0 -o libmokonet.so.0.0.1 -L/usr/share/qt3/lib -lqt-mt -lpthread ln -s libmokonet.so.0.0.1 libmokonet.so ln -s libmokonet.so.0.0.1 libmokonet.so.0 ln -s libmokonet.so.0.0.1 libmokonet.so.0.0 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokonet' cd libmokoui && qmake libmokoui.pro -o Makefile Cannot find directory: /devel/qmake WARNING: Failure to find: moko-nativation-list.h cd libmokoui && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokoui' gcc -c -pipe -Wall -W -O2 -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I/usr/include/qt3 -o moko-alignment.o moko-alignment.c In file included from moko-alignment.c:20: moko-alignment.h:22:30: error: gtk/gtkalignment.h: No such file or directory moko-alignment.h:24:25: error: glib-object.h: No such file or directory In file included from moko-alignment.c:20: moko-alignment.h:35: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef’ moko-alignment.h:40: error: expected specifier-qualifier-list before ‘GtkAlignmentClass’ moko-alignment.h:43: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘moko_alignment_get_type’ moko-alignment.h:45: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token moko-alignment.c:30: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘G_DEFINE_TYPE’ moko-alignment.c:41: error: expected ‘)’ before ‘*’ token moko-alignment.c:42: error: expected ‘)’ before ‘*’ token moko-alignment.c:43: error: expected ‘)’ before ‘*’ token moko-alignment.c: In function ‘moko_alignment_class_init’: moko-alignment.c:50: error: ‘parent_class’ undeclared (first use in this function) moko-alignment.c:50: error: (Each undeclared identifier is reported only once moko-alignment.c:50: error: for each function it appears in.) moko-alignment.c:50: warning: implicit declaration of function ‘g_type_class_peek_parent’ moko-alignment.c:51: error: ‘GtkWidgetClass’ undeclared (first use in this function) moko-alignment.c:51: error: ‘widget_class’ undeclared (first use in this function) moko-alignment.c:51: warning: implicit declaration of function ‘GTK_WIDGET_CLASS’ moko-alignment.c:54: warning: implicit declaration of function ‘g_type_class_add_private’ moko-alignment.c:57: error: ‘moko_alignment_realize’ undeclared (first use in this function) moko-alignment.c:58: error: ‘moko_alignment_size_request’ undeclared (first use in this function) moko-alignment.c:59: error: ‘moko_alignment_size_allocate’ undeclared (first use in this function) moko-alignment.c:62: warning: implicit declaration of function ‘gtk_widget_class_install_style_property’ moko-alignment.c:62: warning: implicit declaration of function ‘g_param_spec_boxed’ moko-alignment.c:66: error: ‘GTK_TYPE_BORDER’ undeclared (first use in this function) moko-alignment.c:66: error: ‘G_PARAM_READABLE’ undeclared (first use in this function) moko-alignment.c: In function ‘moko_alignment_init’: moko-alignment.c:74: warning: implicit declaration of function ‘GTK_WIDGET_UNSET_FLAGS’ moko-alignment.c:74: warning: implicit declaration of function ‘GTK_WIDGET’ moko-alignment.c:74: error: ‘GTK_NO_WINDOW’ undeclared (first use in this function) moko-alignment.c: At top level: moko-alignment.c:77: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token moko-alignment.c:83: error: expected ‘)’ before ‘*’ token moko-alignment.c:120: error: expected ‘)’ before ‘*’ token moko-alignment.c:200: error: expected ‘)’ before ‘*’ token make[2]: *** [moko-alignment.o] Error 1 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokoui' make[1]: *** [sub-libmokoui] Error 2 make[1]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs' make: *** [sub-openmoko-libs] Error 2

Looks like it starts with some missing include files? Anyone have any ideas?

Thanks.

[edit] Missing libgsmd

I tried to build trunk/src/target/OM-2007/openmoko-libs, but ./autogen.sh (or the called ./configure, i guess) complains about the missing libgsmd.

I did an ./autogen.sh ; make; make install in trunk/src/target/gsm. That seems to fix the problem. Is this the way to go?

--Shahn 15:35, 8 May 2007 (CEST)

[edit] no autogen in openmoko-libs

How comes I have to autogen.sh in $OPENMOKODIR/openmoko-libs ? micktaiwan 18:12, 2 March 2008 (CET)

Personal tools

Question: What about running apps under an emulator instead of building them for the PC ? Ideally use the OE stuff to build a diskimage and point the emulator at that to 'boot' off of and run, etc.

Answer: That's what Qemu is for. Use OpenEmbedded to produce openmoko-devel-image for MACHINE = "qemuarm".

Q2: That's just yet another target; I could build them for PPC too if I wanted, sure, but it's not *useful*. What I'm looking for is a way to build the exact same bits you'd build for the Neo itself and have them runnable by pointing an emulator at them. Does *that* exist? Qemu looks like the core of something that might work that way, but definitely not quite there.

Problems with build on Ubuntu Edgy

1. I checked out svn version 993. 2. Installed some qt development packages to get qmake. 3. cd into OM-2007 as per instructions. 4. type>qmake (no output, ok?) 5. type>make and get (failure):

cd openmoko-libs && qmake openmoko-libs.pro -o Makefile cd openmoko-libs && make -f Makefile make[1]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs' cd libmokocore && qmake libmokocore.pro -o Makefile Cannot find directory: /devel/qmake cd libmokocore && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokocore' rm -f libmokocore.so.0.0.1 libmokocore.so libmokocore.so.0 libmokocore.so.0.0 g++ -shared -Wl,-soname,libmokocore.so.0 -o libmokocore.so.0.0.1 -L/usr/share/qt3/lib -lqt-mt -lpthread ln -s libmokocore.so.0.0.1 libmokocore.so ln -s libmokocore.so.0.0.1 libmokocore.so.0 ln -s libmokocore.so.0.0.1 libmokocore.so.0.0 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokocore' cd libmokonet && qmake libmokonet.pro -o Makefile Cannot find directory: /devel/qmake cd libmokonet && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokonet' rm -f libmokonet.so.0.0.1 libmokonet.so libmokonet.so.0 libmokonet.so.0.0 g++ -shared -Wl,-soname,libmokonet.so.0 -o libmokonet.so.0.0.1 -L/usr/share/qt3/lib -lqt-mt -lpthread ln -s libmokonet.so.0.0.1 libmokonet.so ln -s libmokonet.so.0.0.1 libmokonet.so.0 ln -s libmokonet.so.0.0.1 libmokonet.so.0.0 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokonet' cd libmokoui && qmake libmokoui.pro -o Makefile Cannot find directory: /devel/qmake WARNING: Failure to find: moko-nativation-list.h cd libmokoui && make -f Makefile make[2]: Entering directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokoui' gcc -c -pipe -Wall -W -O2 -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DQT_TABLET_SUPPORT -I/usr/share/qt3/mkspecs/default -I. -I/usr/include/qt3 -o moko-alignment.o moko-alignment.c In file included from moko-alignment.c:20: moko-alignment.h:22:30: error: gtk/gtkalignment.h: No such file or directory moko-alignment.h:24:25: error: glib-object.h: No such file or directory In file included from moko-alignment.c:20: moko-alignment.h:35: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘typedef’ moko-alignment.h:40: error: expected specifier-qualifier-list before ‘GtkAlignmentClass’ moko-alignment.h:43: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘moko_alignment_get_type’ moko-alignment.h:45: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token moko-alignment.c:30: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘G_DEFINE_TYPE’ moko-alignment.c:41: error: expected ‘)’ before ‘*’ token moko-alignment.c:42: error: expected ‘)’ before ‘*’ token moko-alignment.c:43: error: expected ‘)’ before ‘*’ token moko-alignment.c: In function ‘moko_alignment_class_init’: moko-alignment.c:50: error: ‘parent_class’ undeclared (first use in this function) moko-alignment.c:50: error: (Each undeclared identifier is reported only once moko-alignment.c:50: error: for each function it appears in.) moko-alignment.c:50: warning: implicit declaration of function ‘g_type_class_peek_parent’ moko-alignment.c:51: error: ‘GtkWidgetClass’ undeclared (first use in this function) moko-alignment.c:51: error: ‘widget_class’ undeclared (first use in this function) moko-alignment.c:51: warning: implicit declaration of function ‘GTK_WIDGET_CLASS’ moko-alignment.c:54: warning: implicit declaration of function ‘g_type_class_add_private’ moko-alignment.c:57: error: ‘moko_alignment_realize’ undeclared (first use in this function) moko-alignment.c:58: error: ‘moko_alignment_size_request’ undeclared (first use in this function) moko-alignment.c:59: error: ‘moko_alignment_size_allocate’ undeclared (first use in this function) moko-alignment.c:62: warning: implicit declaration of function ‘gtk_widget_class_install_style_property’ moko-alignment.c:62: warning: implicit declaration of function ‘g_param_spec_boxed’ moko-alignment.c:66: error: ‘GTK_TYPE_BORDER’ undeclared (first use in this function) moko-alignment.c:66: error: ‘G_PARAM_READABLE’ undeclared (first use in this function) moko-alignment.c: In function ‘moko_alignment_init’: moko-alignment.c:74: warning: implicit declaration of function ‘GTK_WIDGET_UNSET_FLAGS’ moko-alignment.c:74: warning: implicit declaration of function ‘GTK_WIDGET’ moko-alignment.c:74: error: ‘GTK_NO_WINDOW’ undeclared (first use in this function) moko-alignment.c: At top level: moko-alignment.c:77: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token moko-alignment.c:83: error: expected ‘)’ before ‘*’ token moko-alignment.c:120: error: expected ‘)’ before ‘*’ token moko-alignment.c:200: error: expected ‘)’ before ‘*’ token make[2]: *** [moko-alignment.o] Error 1 make[2]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs/libmokoui' make[1]: *** [sub-libmokoui] Error 2 make[1]: Leaving directory `/home/esalazar/openmoko/trunk/src/target/OM-2007/openmoko-libs' make: *** [sub-openmoko-libs] Error 2

Looks like it starts with some missing include files? Anyone have any ideas?

Thanks.

Missing libgsmd

I tried to build trunk/src/target/OM-2007/openmoko-libs, but ./autogen.sh (or the called ./configure, i guess) complains about the missing libgsmd.

I did an ./autogen.sh ; make; make install in trunk/src/target/gsm. That seems to fix the problem. Is this the way to go?

--Shahn 15:35, 8 May 2007 (CEST)