'''OM 2007.2''' is the second version of the Openmoko distribution. Development began on 2007-07-26.

+

'''Om 2007.2''' was the second version of the Openmoko distribution. Development began on 2007-07-26. This distribution is not developed anymore.

−

Goals of the new version are an improved set of PIM applications, improved theming that fixes a lot of the usability problems of the 1st generation design, more formalized UI guidelines and a number of changes in the build system. The latter should introduce more recent software by staying closer in sync with upstream org.openembedded.dev.

+

Goals of this version were an improved set of PIM applications, improved theming that fixes a lot of the usability problems of the first generation design, more formalized UI guidelines and a number of changes in the build system. The latter had the goal of introducing more recent software by staying closer in sync with upstream org.openembedded.dev.

An official announcement was made by Sean Moss-Pultz on August 20:

An official announcement was made by Sean Moss-Pultz on August 20:

Line 11:

Line 12:

(Initially this was named OM-2008 in SVN but renamed shortly after that.)

(Initially this was named OM-2008 in SVN but renamed shortly after that.)

−

==FAQ==

+

== Known Issues ==

−

=== Q: What are differences between 2007.1 and 2007.2? ===

+

For the very latest status, see [http://docs.openmoko.org/trac/search?q=2007.2 all tickets with 2007.2] in the bug tracker.

−

* UI redesigned for small and recessed screen

+

===Missing Esc key===

−

* Simplified visuals for performance

+

−

* Simplified UI

+

−

* More interactions including finger scrolling

+

−

* [[Today|openmoko-today]] rewritten; works as application launcher and task manager as well

With the default image you can't escape edit mode in vi due to the missing Esc key. You need to [[Switching_Keyboards|install a new on-screen keyboard]], and in order to do this you'll need to set up USB networking first. You can then SSH into the FreeRunner from your computer and use the keyboard on that computer to edit files in vi.

−

* [[Openmoko2007.2#Pre-built_snapshot_images|Unofficial images]] listed at the bottom of this article

+

Alternative on-screen keyboards feature an escape key.

−

* Official snapshots and ipkg repository:

+

If you are stuck in vi you can type <tt>:q</tt> or <tt>:q!</tt> to exit without saving, or <tt>ZZ</tt> to save and exit.

−

** http://buildhost.openmoko.org/snapshots/2007.08/

+

−

=== Q: Where are official releases? ===

+

===Missing /, | and > keys===

−

No official releases yet, just official snapshots. The first release is targetted for October, 2007.

+

These keys are missing from the 0 button. This can be fixed by editing <tt>/etc/multitap-pad/im-multipress.conf</tt>, see [[Switching_Keyboards#Fix_Default| this page]], but unfortunately you need vi, or some other editor to do so. Therefore you need to SSH in and [[Getting_Started_with_your_Neo_FreeRunner#Set_up_USB-based_networking_and_update|set up USB networking]] first.

−

=== Q: My mrxvt (terminal) fonts are huge. ===

+

Alternative on-screen keyboards should have these characters.

−

Edit src/feature.h to set MIN_XFT_FONT_SIZE to lower value:

+

==="Signature Check Failed" errors when running `opkg update`===

−

#define MIN_XFT_FONT_SIZE (2)

+

−

and rebuild mrxvt & openmoko-devel-image.

+

−

End edit /etc/mrxvt/mrxvt.conf

+

The signatures are missing from the repository.

−

Mrxvt.xftSize: 4

+

−

Mrxvt.xftHint: 1

+

Workaround: If the Packages.gz files are downloading ok you can ignore this error.

+

After your first <tt>opkg upgrade</tt> you should get these signatures.

This happens when the phone goes to sleep after a few minutes. To unfreeze, unplug and replug the USB cable. To stop this from happening, press the Power button to get the Power menu, then choose Power Management: Disabled.

+

+

===My device is unresponsive. How do I perform a hard reset?===

+

+

For different boot methods, see [[Booting the Neo FreeRunner]].

+

+

===No GUI for controlling sound volume===

+

+

As of this writing, there is no way to adjust the volume from the screen.

+

+

Workaround:

+

Run the terminal application or [[USB_Networking|log in via usb]], and run the [[Neo alsamixer]] application. To see all the options, including Mic2, run

+

:alsamixer -V all

+

The mixer is simpler than it looks. Use the left and right arrow keys to select "headphone" or "PCM" and use the up and down arrow keys to adjust the volume. You can also adjust your microphone volume with the "mic2" adjustment. Press ESC when finished. Then exit the terminal application or log out of the USB login.

+

+

You may need to update configuration files in

+

:/usr/share/openmoko/scenarios/

+

to make the microphone setting permanent. type

+

:alsactl -f ''path-to-statefile'' store

+

to do this.

+

+

The default files are as follows (in /usr/share/openmoko/scenarios/):

+

:gsmhandset.state

+

:gsmheadset.state

+

:gsmspeakerout.state

+

:headset.state

+

:stereoout.state

+

+

These correspond to the various Sound Profiles accessible in the Debug Tool under Applications.

+

+

To manually restore one of the state files,

+

:alsactl -f ''path-to-statefile'' restore

+

+

One way to increase the volume of the microphone is to do the following:

+

# ssh into your FreeRunner

+

# vi /usr/share/openmoko/scenarios/gsmhandset.state

+

# search for "Mic2"

+

# change to "value 3"

+

If people report not being able to hear you when you call, then setting the Mic2 value to 2 or 3 should fix that.

+

+

'''Question: I am using headphones but only the right speaker work the left don't work how can I fix this ?'''

+

+

This should be set correctly by restoring gsmheadset.state.

+

Pull and replug the headset jack to make sure the correct state-file is restored.

+

To manually control the switch between Speaker and headset:

+

Start alsamixer, scroll along to the right until you find "Amp Spk" and mute it (m), the sound will then come out from both channels of the

+

headphones and not out of the speaker.

+

+

== Installing ==

+

+

If you want install this software distribution to your device, you have to follow these steps:

The MokoMakefile is now able to build OM-2007.2 images. If you use this new version of the MokoMakefile, you can ignore everything below and just continue building OM-2007.2 in the same way that you previously built images (i.e. according to [[MokoMakefile]]). Make sure you set the generation correctly at the top of the file.

+

The MokoMakefile is now able to build Om 2007.2 images. If you use this new version of the MokoMakefile, you can ignore everything below and just continue building Om 2007.2 in the same way that you previously built images (i.e. according to [[MokoMakefile]]). Make sure you set the generation correctly at the top of the file.

Follow the [http://wiki.openembedded.net/index.php/Getting_Started getting started] steps of OpenEmbedded. It is suggested to use Bitbake 1.8.8 at least.

Follow the [http://wiki.openembedded.net/index.php/Getting_Started getting started] steps of OpenEmbedded. It is suggested to use Bitbake 1.8.8 at least.

−

{{note|Instead of using '''git.openmoko.org''' (as indicated in OE GettingStarted), please make sure to use '''git.openmoko.org''' as [[MonotoneServer|monotone server]]. This ensures you have a working revision of the metadata and will render a successful build}}

+

{{note|Instead of using '''git.openembedded.net''' (as indicated in OE GettingStarted), please make sure to use '''git://git.openmoko.org/git/openmoko''' as [[MonotoneServer|monotone server]]. This ensures you have a working revision of the metadata and will render a successful build}}

Put the following in your local.conf

Put the following in your local.conf

−

BBFILES = "${HOME}/oe/org.openembedded.dev/packages/*/*.bb"

+

BBFILES = "${HOME}/oe/org.openembedded.dev/packages/*/*.bb"

−

+

−

MACHINE = "om-gta01"

+

MACHINE = "om-gta01"

−

DISTRO = "openmoko"

+

DISTRO = "openmoko"

−

+

−

ENABLE_BINARY_LOCALE_GENERATION = "1"

+

ENABLE_BINARY_LOCALE_GENERATION = "1"

−

GLIBC_GENERATE_LOCALES = "en_GB.UTF-8"

+

GLIBC_GENERATE_LOCALES = "en_GB.UTF-8"

For multi-core machines, the following additions can be used for a speed-up (numbers should be tweaked based on the actual number of cores):

For multi-core machines, the following additions can be used for a speed-up (numbers should be tweaked based on the actual number of cores):

−

PARALLEL_MAKE = "-j 4"

+

PARALLEL_MAKE = "-j 4"

−

BB_NUMBER_THREADS = "4"

+

BB_NUMBER_THREADS = "4"

To free disk space after builds, add:

To free disk space after builds, add:

−

INHERIT += "rm_work"

+

INHERIT += "rm_work"

−

Replace "${HOME}/oe" with the path to where your "org.openembeded.dev" folder lives. For the other entries have a look at ''conf/local.conf.sample'' about their meaning.

+

Replace "${HOME}/oe" with the path to where your "org.openembedded.dev" folder lives. For the other entries have a look at ''conf/local.conf.sample'' about their meaning.

Run ''bitbake <package name>'' (e.g. openmoko-devel-image).

Run ''bitbake <package name>'' (e.g. openmoko-devel-image).

Line 89:

Line 140:

Add the following line to your local.conf

Add the following line to your local.conf

−

require conf/distro/include/moko-autorev.inc

+

require conf/distro/include/moko-autorev.inc

Then run bitbake as normal. Openmoko will now build with latest SVN checkouts.

Then run bitbake as normal. Openmoko will now build with latest SVN checkouts.

That is an issue in a bitbake file. One should not use the short-name for sourceforge (sf.net) when certificates are only for exact host names. Accept the certificate and everything is fine for now.

That is an issue in a bitbake file. One should not use the short-name for sourceforge (sf.net) when certificates are only for exact host names. Accept the certificate and everything is fine for now.

==== openmoko-libs FTBFS ====

==== openmoko-libs FTBFS ====

−

Some applications have not been fully modified to build with the new libraries of Openmoko and still need the old-style ''openmoko-libs'' package. ''libmokogsm'' which is needed for ''openmoko-libs'' then fails to build. As a workaround you can remove the not yet ported applications that need ''openmoko-libs'' making it unneccessary itself. To do this edit ''packages/tasks/openmoko-taks.bb'' and find the following lines:

+

Some applications have not been fully modified to build with the new libraries of Openmoko and still need the old-style ''openmoko-libs'' package. ''libmokogsm'' which is needed for ''openmoko-libs'' then fails to build. As a workaround you can remove the not yet ported applications that need ''openmoko-libs'' making it unnecessary itself. To do this edit ''packages/tasks/openmoko-taks.bb'' and find the following lines:

−

.

+

.

−

.

+

.

−

.

+

.

−

openmoko-terminal \

+

openmoko-terminal \

−

matchbox-panel-2 \

+

matchbox-panel-2 \

−

matchbox-panel-2-applets \

+

matchbox-panel-2-applets \

−

matchbox-applet-inputmanager \

+

matchbox-applet-inputmanager \

−

# openmoko-appmanager \

+

# openmoko-appmanager \

−

matchbox-keyboard \

+

matchbox-keyboard \

−

matchbox-stroke \

+

matchbox-stroke \

−

openmoko-keyboard \

+

openmoko-keyboard \

−

.

+

.

−

.

+

.

−

.

+

.

−

Now put a hash (''#'') before ''openmoko-terminal'' and ''openmoko-keyboard''. You can verify that ''openmoko-libs'' is not needed any more by issuing ''bitbake -g openmoko-devel-image'' (= creates a dependency graph). There should be no mentioning of ''openmoko-libs'' in the file ''task-depends.dot''. '''Please note that the graphicall terminal and the virtual keyboard will be missing now.''' You can still have terminal access by following the [[USB Networking]] guide. For keyboard input in Qemu add the ''-usbdevice keyboard'' switch.

+

Now put a hash (''#'') before ''openmoko-terminal'' and ''openmoko-keyboard''. You can verify that ''openmoko-libs'' is not needed any more by issuing ''bitbake -g openmoko-devel-image'' (= creates a dependency graph). There should be no mentioning of ''openmoko-libs'' in the file ''task-depends.dot''. '''Please note that the graphical terminal and the virtual keyboard will be missing now.''' You can still have terminal access by following the [[USB Networking]] guide. For keyboard input in Qemu add the ''-usbdevice keyboard'' switch.

Line 133:

Line 184:

If you get these errors:

If you get these errors:

−

gtkcombobox.c: In function 'gtk_combo_box_size_request':

+

gtkcombobox.c: In function 'gtk_combo_box_size_request':

−

gtkcombobox.c:1859: warning: unused variable 'font_desc'

+

gtkcombobox.c:1859: warning: unused variable 'font_desc'

−

gtkcombobox.c:1858: warning: unused variable 'metrics'

+

gtkcombobox.c:1858: warning: unused variable 'metrics'

−

gtkcombobox.c:1857: warning: unused variable 'context'

+

gtkcombobox.c:1857: warning: unused variable 'context'

−

gtkcombobox.c:1855: warning: unused variable 'arrow_size'

+

gtkcombobox.c:1855: warning: unused variable 'arrow_size'

−

gtkcombobox.c:1854: warning: unused variable 'font_size'

+

gtkcombobox.c:1854: warning: unused variable 'font_size'

−

gtkcombobox.c: In function 'gtk_combo_box_size_allocate':

+

gtkcombobox.c: In function 'gtk_combo_box_size_allocate':

−

gtkcombobox.c:1962: error: 'arrow_size' undeclared (first use in this function)

+

gtkcombobox.c:1962: error: 'arrow_size' undeclared (first use in this function)

−

gtkcombobox.c:1962: error: (Each undeclared identifier is reported only once

+

gtkcombobox.c:1962: error: (Each undeclared identifier is reported only once

−

gtkcombobox.c:1962: error: for each function it appears in.)

+

gtkcombobox.c:1962: error: for each function it appears in.)

−

gtkcombobox.c:1965: error: 'font_desc' undeclared (first use in this function)

+

gtkcombobox.c:1965: error: 'font_desc' undeclared (first use in this function)

−

gtkcombobox.c:1966: error: 'context' undeclared (first use in this function)

+

gtkcombobox.c:1966: error: 'context' undeclared (first use in this function)

−

gtkcombobox.c:1967: error: 'metrics' undeclared (first use in this function)

+

gtkcombobox.c:1967: error: 'metrics' undeclared (first use in this function)

−

gtkcombobox.c:1969: error: 'font_size' undeclared (first use in this function)

+

gtkcombobox.c:1969: error: 'font_size' undeclared (first use in this function)

Go to your /build/tmp/work/fic-gta01-angstrom-linux-gnueabi/gtk+-2.10.14-r3/gtk+-2.10.14/gtk directory, and patch gtkcombobox.c with the following:

Go to your /build/tmp/work/fic-gta01-angstrom-linux-gnueabi/gtk+-2.10.14-r3/gtk+-2.10.14/gtk directory, and patch gtkcombobox.c with the following:

Line 152:

Line 203:

Thanks to rmoravcik in #openmoko (patch was taken from http://pastebin.ca/654717 )

Thanks to rmoravcik in #openmoko (patch was taken from http://pastebin.ca/654717 )

and restart the build. This may have some effect on internationalization (you will see a warning indicating that), but at least the build will continue. Thanks to rwhitby for the tip.

and restart the build. This may have some effect on internationalization (you will see a warning indicating that), but at least the build will continue. Thanks to rwhitby for the tip.

Line 196:

Line 247:

Alternatively, as suggested by XorA in #openmoko, if you are running a 64-bit host distribution, try forcing a different QEMU rev, also in local.conf:

Alternatively, as suggested by XorA in #openmoko, if you are running a 64-bit host distribution, try forcing a different QEMU rev, also in local.conf:

−

PREFERRED_VERSION_qemu-native = "0.9.0+cvs20070701"

+

PREFERRED_VERSION_qemu-native = "0.9.0+cvs20070701"

−

SRCDATE_qemu-native = 20070701

+

SRCDATE_qemu-native = 20070701

Line 204:

Line 255:

Go to your build/tmp/work/i686-linux/libxml2-native-2.6.29-r1/libxml2-2.6.29/include/libxml/ directory and patch xmlversion.h with the following:

Go to your build/tmp/work/i686-linux/libxml2-native-2.6.29-r1/libxml2-2.6.29/include/libxml/ directory and patch xmlversion.h with the following:

−

--- xmlversion.h 2007-08-17 10:45:42.000000000 +0100

+

--- xmlversion.h 2007-08-17 10:45:42.000000000 +0100

−

+++ xmlversion.h 2007-08-17 10:51:36.000000000 +0100

+

+++ xmlversion.h 2007-08-17 10:51:36.000000000 +0100

−

@@ -219,7 +219,7 @@

+

@@ -219,7 +219,7 @@

−

*

+

*

−

* Whether the Catalog support is configured in

+

* Whether the Catalog support is configured in

−

*/

+

*/

−

-#if 0

+

-#if 0

−

+#if 1

+

+#if 1

−

#define LIBXML_CATALOG_ENABLED

+

#define LIBXML_CATALOG_ENABLED

−

#endif

+

#endif

On my system the libxml2-native-2.6.29-r1 directory is in a directory named i686-linux, yours may be different. I believe this patch to be a workaround to make libxml2-native build. I am not yet sure what the consequences of enabling XML catalogue support are.

On my system the libxml2-native-2.6.29-r1 directory is in a directory named i686-linux, yours may be different. I believe this patch to be a workaround to make libxml2-native build. I am not yet sure what the consequences of enabling XML catalogue support are.

+

== Updating your image ==

+

'''REVIEW this section - buildhost is down, replaced. '''

−

+

Now that you have a functional 2007.2 image on your Neo, you will want to keep it updated. Fortunately, ipkg is already set up to pull updated packages from the Openmoko buildhost.

Now that you have a functional 2007.2 image on your Neo, you will want to keep it updated. Fortunately, ipkg is already set up to pull updated packages from the openmoko buildhost.

+

On the phone, in the terminal (or via ssh), if you have a live internet connection and DNS resolution set up in /etc/resolv.conf:

On the phone, in the terminal (or via ssh), if you have a live internet connection and DNS resolution set up in /etc/resolv.conf:

−

ipkg update && ipkg upgrade

+

ipkg update && ipkg upgrade

−

will bring your installed packages up to the most recent versions. Also have a look at alternative/additional ipkg sources at [[repositories]].

+

will bring your installed packages up to the most recent versions. Also have a look at alternative/additional ipkg sources at [[download]].

If you are also building your own images and packages, you can also run a simple httpd on your build host and serve your own ipkg files to the Neo.

If you are also building your own images and packages, you can also run a simple httpd on your build host and serve your own ipkg files to the Neo.

Line 263:

Line 284:

On the build host, for example:

On the build host, for example:

−

thttpd -d <path_to_moko/tmp/deploy/glibc/ipk> -p 8080

+

thttpd -d <path_to_moko/tmp/deploy/glibc/ipk> -p 8080

will serve your packages on port 8080.

will serve your packages on port 8080.

Line 269:

Line 290:

Then, on the neo, make a new file at /etc/ipkg/local-feed.conf with these contents:

Then, on the neo, make a new file at /etc/ipkg/local-feed.conf with these contents:

−

src/gz local-all http://192.168.0.200:8080/all

+

src/gz local-all http://192.168.0.200:8080/all

−

src/gz local-armv4t http://192.168.0.200:8080/armv4t

+

src/gz local-armv4t http://192.168.0.200:8080/armv4t

−

src/gz local-om-gta01 http://192.168.0.200:8080/om-gta01

+

src/gz local-om-gta01 http://192.168.0.200:8080/om-gta01

and ipkg on the Neo (update-upgrade) will pick up files from your local build host's repository (assuming its IP address is 192.168.0.200, as is default in the [[USB Networking]] setup) in addition to the openmoko buildhost.

and ipkg on the Neo (update-upgrade) will pick up files from your local build host's repository (assuming its IP address is 192.168.0.200, as is default in the [[USB Networking]] setup) in addition to the openmoko buildhost.

Line 281:

Line 302:

On the build host:

On the build host:

−

bitbake <name_of_package>

+

bitbake <name_of_package>

−

bitbake -crebuild package-index

+

bitbake -crebuild package-index

Then on the Neo:

Then on the Neo:

−

ipkg update

+

ipkg update

−

ipkg install <name_of_package>

+

ipkg install <name_of_package>

The new package might not show up in the program menu until you reboot or restart X.

The new package might not show up in the program menu until you reboot or restart X.

−

{{Languages|Openmoko2007.2}}

+

==FAQ==

+

=== Q: What are differences between 2007.1 and 2007.2? ===

+

+

* UI redesigned for small and recessed screen

+

* Simplified visuals for performance

+

* Simplified UI

+

* More interactions including finger scrolling

+

* openmoko-today rewritten; works as application launcher and task manager as well

Om 2007.2 is one of the many distributions that currently work on the Openmoko phones. You can compare a distribution with an Operating System on normal computers. It gives the phone all the software needed for operating. For more information about the different flavors, see distributions.

Om 2007.2 was the second version of the Openmoko distribution. Development began on 2007-07-26. This distribution is not developed anymore.

Goals of this version were an improved set of PIM applications, improved theming that fixes a lot of the usability problems of the first generation design, more formalized UI guidelines and a number of changes in the build system. The latter had the goal of introducing more recent software by staying closer in sync with upstream org.openembedded.dev.

With the default image you can't escape edit mode in vi due to the missing Esc key. You need to install a new on-screen keyboard, and in order to do this you'll need to set up USB networking first. You can then SSH into the FreeRunner from your computer and use the keyboard on that computer to edit files in vi.

Alternative on-screen keyboards feature an escape key.

If you are stuck in vi you can type :q or :q! to exit without saving, or ZZ to save and exit.

These keys are missing from the 0 button. This can be fixed by editing /etc/multitap-pad/im-multipress.conf, see this page, but unfortunately you need vi, or some other editor to do so. Therefore you need to SSH in and set up USB networking first.

This happens when the phone goes to sleep after a few minutes. To unfreeze, unplug and replug the USB cable. To stop this from happening, press the Power button to get the Power menu, then choose Power Management: Disabled.

As of this writing, there is no way to adjust the volume from the screen.

Workaround:
Run the terminal application or log in via usb, and run the Neo alsamixer application. To see all the options, including Mic2, run

alsamixer -V all

The mixer is simpler than it looks. Use the left and right arrow keys to select "headphone" or "PCM" and use the up and down arrow keys to adjust the volume. You can also adjust your microphone volume with the "mic2" adjustment. Press ESC when finished. Then exit the terminal application or log out of the USB login.

You may need to update configuration files in

/usr/share/openmoko/scenarios/

to make the microphone setting permanent. type

alsactl -f path-to-statefile store

to do this.

The default files are as follows (in /usr/share/openmoko/scenarios/):

gsmhandset.state

gsmheadset.state

gsmspeakerout.state

headset.state

stereoout.state

These correspond to the various Sound Profiles accessible in the Debug Tool under Applications.

To manually restore one of the state files,

alsactl -f path-to-statefile restore

One way to increase the volume of the microphone is to do the following:

ssh into your FreeRunner

vi /usr/share/openmoko/scenarios/gsmhandset.state

search for "Mic2"

change to "value 3"

If people report not being able to hear you when you call, then setting the Mic2 value to 2 or 3 should fix that.

Question: I am using headphones but only the right speaker work the left don't work how can I fix this ?

This should be set correctly by restoring gsmheadset.state.
Pull and replug the headset jack to make sure the correct state-file is restored.
To manually control the switch between Speaker and headset:
Start alsamixer, scroll along to the right until you find "Amp Spk" and mute it (m), the sound will then come out from both channels of the
headphones and not out of the speaker.

Before getting your feet wet, step back a moment and ask yourself why you want to build the Openmoko distribution image. Chances are you are a kernel and application developer and just want to develop on your package -- in that case building Openmoko is completely unnecessary and a waste of time. You may rather want to use the Openmoko Toolchain and build only the stuff that is interesting to you.

The MokoMakefile is now able to build Om 2007.2 images. If you use this new version of the MokoMakefile, you can ignore everything below and just continue building Om 2007.2 in the same way that you previously built images (i.e. according to MokoMakefile). Make sure you set the generation correctly at the top of the file.

Follow the getting started steps of OpenEmbedded. It is suggested to use Bitbake 1.8.8 at least.

NOTE: Instead of using git.openembedded.net (as indicated in OE GettingStarted), please make sure to use git://git.openmoko.org/git/openmoko as monotone server. This ensures you have a working revision of the metadata and will render a successful build

Some applications have not been fully modified to build with the new libraries of Openmoko and still need the old-style openmoko-libs package. libmokogsm which is needed for openmoko-libs then fails to build. As a workaround you can remove the not yet ported applications that need openmoko-libs making it unnecessary itself. To do this edit packages/tasks/openmoko-taks.bb and find the following lines:

Now put a hash (#) before openmoko-terminal and openmoko-keyboard. You can verify that openmoko-libs is not needed any more by issuing bitbake -g openmoko-devel-image (= creates a dependency graph). There should be no mentioning of openmoko-libs in the file task-depends.dot. Please note that the graphical terminal and the virtual keyboard will be missing now. You can still have terminal access by following the USB Networking guide. For keyboard input in Qemu add the -usbdevice keyboard switch.

On my system the libxml2-native-2.6.29-r1 directory is in a directory named i686-linux, yours may be different. I believe this patch to be a workaround to make libxml2-native build. I am not yet sure what the consequences of enabling XML catalogue support are.

and ipkg on the Neo (update-upgrade) will pick up files from your local build host's repository (assuming its IP address is 192.168.0.200, as is default in the USB Networking setup) in addition to the openmoko buildhost.

Or better yet, change the 192.168.0.200:8080 addresses above to the eth0 IP address of your build machine (instead of the usb0 IP address), and then you can access your local repository with your Neo plugged into any machine on your local net, or even via bluetooth.

Also if you are building your own packages or packages from the OE database that aren't part of Openmoko by default, you can install those packages as follows.

On the build host:

bitbake <name_of_package>
bitbake -crebuild package-index

Then on the Neo:

ipkg update
ipkg install <name_of_package>

The new package might not show up in the program menu until you reboot or restart X.

Views

Personal tools

OM 2007.2 is one of the many distributions that currently work on the Openmoko phones. You can compare a distribution with an Operating System on normal computers. It gives the phone all the software needed for operating. For more information about the different flavors, see distributions.

OM 2007.2 is the second version of the Openmoko distribution. Development began on 2007-07-26.

Goals of the new version are an improved set of PIM applications, improved theming that fixes a lot of the usability problems of the 1st generation design, more formalized UI guidelines and a number of changes in the build system. The latter should introduce more recent software by staying closer in sync with upstream org.openembedded.dev.

Q: Where to get snapshot images?

Q: Where are official releases?

No official releases yet, just official snapshots. The first release is targetted for October, 2007.

Q: My mrxvt (terminal) fonts are huge.

Edit src/feature.h to set MIN_XFT_FONT_SIZE to lower value:

#define MIN_XFT_FONT_SIZE (2)

and rebuild mrxvt & openmoko-devel-image.

End edit /etc/mrxvt/mrxvt.conf

Mrxvt.xftSize: 4
Mrxvt.xftHint: 1

Building 2007.2

Why to build

Before getting your feet wet, step back a moment and ask yourself why you want to build the Openmoko distribution image. Chances are you are a kernel and application developer and just want to develop on your package -- in that case building Openmoko is completely unnecessary and a waste of time. You may rather want to use the Openmoko Toolchain and build only the stuff that is interesting to you.

How to build

The MokoMakefile is now able to build OM-2007.2 images. If you use this new version of the MokoMakefile, you can ignore everything below and just continue building OM-2007.2 in the same way that you previously built images (i.e. according to MokoMakefile). Make sure you set the generation correctly at the top of the file.

Follow the getting started steps of OpenEmbedded. It is suggested to use Bitbake 1.8.8 at least.

NOTE: Instead of using git.openmoko.org (as indicated in OE GettingStarted), please make sure to use git.openmoko.org as monotone server. This ensures you have a working revision of the metadata and will render a successful build

That is an issue in a bitbake file. One should not use the short-name for sourceforge (sf.net) when certificates are only for exact host names. Accept the certificate and everything is fine for now.

openmoko-libs FTBFS

Some applications have not been fully modified to build with the new libraries of Openmoko and still need the old-style openmoko-libs package. libmokogsm which is needed for openmoko-libs then fails to build. As a workaround you can remove the not yet ported applications that need openmoko-libs making it unneccessary itself. To do this edit packages/tasks/openmoko-taks.bb and find the following lines:

Now put a hash (#) before openmoko-terminal and openmoko-keyboard. You can verify that openmoko-libs is not needed any more by issuing bitbake -g openmoko-devel-image (= creates a dependency graph). There should be no mentioning of openmoko-libs in the file task-depends.dot. Please note that the graphicall terminal and the virtual keyboard will be missing now. You can still have terminal access by following the USB Networking guide. For keyboard input in Qemu add the -usbdevice keyboard switch.

On my system the libxml2-native-2.6.29-r1 directory is in a directory named i686-linux, yours may be different. I believe this patch to be a workaround to make libxml2-native build. I am not yet sure what the consequences of enabling XML catalogue support are.

and ipkg on the Neo (update-upgrade) will pick up files from your local build host's repository (assuming its IP address is 192.168.0.200, as is default in the USB Networking setup) in addition to the openmoko buildhost.

Or better yet, change the 192.168.0.200:8080 addresses above to the eth0 IP address of your build machine (instead of the usb0 IP address), and then you can access your local repository with your Neo plugged into any machine on your local net, or even via bluetooth.

Also if you are building your own packages or packages from the OE database that aren't part of Openmoko by default, you can install those packages as follows.

On the build host:

bitbake <name_of_package>
bitbake -crebuild package-index

Then on the Neo:

ipkg update
ipkg install <name_of_package>

The new package might not show up in the program menu until you reboot or restart X.