Archive for January, 2007

Compiling and testing Ekiga

Ekiga in the Maemo development environment

Following with my last post, in the project I am collaborating with, we are interested in making VoIP calls using our libraries in the Nokia 770. We are going to explore the possibility of using Ekiga, a VoIP and videconferencing client for GNOME. Furthermore, as I will probably buy a N800 in the next days or weeks, I am getting ready to test videconferencing with Ekiga on the N800 :-) .

My first impressions, it is going to be a little hard to have a fully functional Ekiga on the 770/N800, but so far sounds work, calls work also, and video hardware I think it will work.

Here you may find some screenshots of Ekiga running on the Maemo 2.1 environment.

These are the instructions to compile it. Pay attention to the options passed to the configure scripts, otherwise it will not compile. Follow strictly the order of my instructions to install all the libraries needed by Ekiga.

  • Login on the scrathbox environment, and select the profile:
    • sbox-config -st SDK_PC (or SDK_ARMEL to cross-compile for ARM)
  • Download LDAP sources
  • tar zxvf openldap-2.3.32.tgz
  • cd openldap-2.3.32
  • ./configure –disable-backends –enable-shell
  • make depend
  • make
  • make install
  • Download Ekiga sources
  • tar zxvf pwlib-1.10.2.tar.gz
  • cd pwlib-1.10.2
  • ./configure && make && make install
  • cd ..
  • tar zxvf opal-2.2.3.tar.gz
  • cd opal-2.2.3
  • ./configure && make && make install
  • cd ..
  • tar zxvf ekiga-2.0.3.tar.gz
  • cd ekiga-2.0.3
  • ./configure –disable-doc –disable-gnome –disable-avahi –disable-sdl –with-pwlib-dir=/usr/local –with-opal-dir=/usr/local
  • make
  • make install

Now Ekiga is compiled and installed in the scratchbox. You can test it, by following these instructions:

  • Launch Xephyr (follow the instructions given in this post if needed)
  • af-sb-init.sh start
  • run-standalone.sh ekiga

Ekiga will launch now the configuration wizard. Although it will not be properly working (very big fonts, the virtual keyboard interferes with the windows, etc), I think it could be adapted to work on the 770/N800.

25 comments January 19th, 2007

Yet another tutorial to install the Maemo development environment

In research group, I am collaborating in a project that intends to test some libraries on the Nokia 770/N880. As a first step, I wrote a little tutorial to install the Maemo development environment, based on the official tutorial.

I can not link to the wiki page because it is internal to the group, and the tool that we are using does not allow to grant access only to one page. So I reproduce here the tutorial.

How to install the Maemo development environment

Maemo is the same sytem that the Nokia 770 runs, but intended to be executed in an usual computer. With this environment, you may test your programs before compiling them to the ARM architecture. It is exactly the same system that the Nokia 770 (except propietary applications such as the web browser), but compiled for i386.

  • Download the installer.
  • Execute it with root permissions (as root or with sudo)
  • If you are lucky enough, it will work under your system. I am not, so I switched to the alternative method..
  • The Debian packages seem not to work under Ubuntu Edgy, so I used the tar.gz files.
  • Obtain the following files
  • Untar all the files in ‘/’, in the above order
  • Execute as root /scratchbox/run_me_first.sh, and then add your user with /scratchbox/sbin/sbox_adduser. Choose the same username than in your system, and reply to all the questions with the default answers.
  • Restart your session, or execute su your_username
  • Now you are able to login in the scratchbox environment with /scratchbox/login
  • Create a .bash_profile with the following contents. You can use vi if you want.
    • unalias ls
    • export LANGUAGE=en_GB
    • export PAGER=less
    • export DISPLAY=:2
  • Now that the scratchbox is set up, download the Maemo SDK
  • Follow the rest of instructions
  • Now you have the environment set up to compile applications for the Nokia 770, but they will not run on the actual Nokia 770, because the architecture of the binaries will be i386. Let us set up also the environment to compile applications for the ARMEL architecture.
  • Download the following file:
  • Follow these instructions
  • Now you should have two different configurations in your scratchbox environment: SDK_PC and SDK_ARMEL
  • To test an application in your computer, you should use the environment SDK_C. Select it with the following command:
    • sbox-config -st SDK_PC
  • Once you are sure that your application is ready to be run on the Nokia 770, switch to the SDK_ARMEL configuration, and recompile
    • sbox-config -st SDK_ARMEL
  • Thanks to QEMU, you may execute the ARMEL binaries in your computer before uploading them to the Nokia 770. Some features may not behave as in the actual 770 though.

Installing a X server for the Maemo environment

  • There is a X server preinstalled with the Maemo development environment. To use it, create, outside the scratchbox, a file with the following contents

    #!/bin/sh -e
    prefix=/scratchbox/users/${LOGNAME}/targets/SDK_PC/usr
    export LD_LIBRARY_PATH=${prefix}/lib; export LD_LIBRARY_PATH
    exec ${prefix}/bin/Xephyr :2 -host-cursor -screen 800x480x16 -dpi 96 -ac
  • You may call it start-xephyr.sh
  • To use this X server with the Maemo development environment, run the file, outside the scratchbox. The X server will be up and running, on the display number 2. This display appears as a window in your desktop.
  • To launch the Maemo desktop environment, inside the scratchbox, execute the following:
    • af-sb-init.sh start
  • The Maemo desktop should appear in the window corresponding to the Xephyr X server.
  • Only a small set of applications is installed in the Maemo environment, and it lacks all the propietary applications from Nokia (such as the web browser). It is intended to test your applications rather than to be used as a substitute of the Nokia 770.
  • Once you get bored with the Maemo desktop, stop it with the following command
    • af-sb-init.sh stop

sources.list for the Maemo environment

The scratchbox is like just another system within your Linux system. The two configurations (SDK_PC and SDK_ARMEL) are based on Debian, and so they use APT to manage software packages. You must set up the proper repositories to be used inside the scratchbox environment. Be careful and do not use the following repositories in your computer, only within the strachbox environment.

Go and edit /etc/apt/sources.list, and the following repositories. Remove any repository already included in the file. Remember, edit the file once you have login in the scratchbox. Do not edit the sources.list in your system.

deb http://catalogue.tableteer.nokia.com/certified/ mistral user
deb http://catalogue.tableteer.nokia.com/non-certified/ mistral user
deb http://repository.maemo.org/extras/ mistral free non-free
deb-src http://repository.maemo.org/extras/ mistral free non-free
deb http://repository.maemo.org/ scirocco free non-free
deb-src http://repository.maemo.org/ scirocco free non-free

Execute apt-get update after editing the file.

5 comments January 19th, 2007

The 770 reinvented: welcome N800

Nokia have just released a new Internet Table. This time it is called N800. The hardware has been improved. It has now 128 MB RAM and 256 MB flash ROM (to store the filesystem). The memory card system has been switched from RS-MCC to SD cards, which are quite cheaper, and it now has two card slots. Memory cards may be up to 2 GB. Among the new features, we find also a web cam, with a resolution of 640×480. It is apparently intended to make “video” calls using Google Talk, although this is something that should be confirmed as soon as the new lucky owners of the gadget test it. The rest of features are the same than in the 770 (wifi, bluetooth and so on).

The design has been also improved. The N800 is lighter than the 770 (about 90 grams). The width is greater and the height lower, and the position of the buttons and headphones plugs is now more ergonomical.

It does not have an integrated keyboard.

Here it is the product page at nokia.com. It costs 399 Euro when buying from Spain (about 50 more Euro than the 770).

Here you can find some photos of the new device, including some comparison of dimensions with the 770.

Some other links of blogs talking about the new gadget:

And now the one million dollar question: is it worthy to buy the new N800 if you already own a 770? The new N800 is a better device than the 770. With a faster CPU and more memory it is expected to be way faster than the 770. This should influence the multimedia capabilities; for instance, video playing should be much better in the N800. Another strong point is that you can use two memory cards, and that the format is SD. The memory cards can be up to 2 GB, so you may have up to 4 extra GB, which is quite a lot for movies, music, etc. With that capacity, the N800 is a real multimedia device. For instance, I have a 512 MB card in my 770, and every time I copy a movie to the card I have to remove all the music and the maps of Maemo Mapper. With 4 GB I could store a movie, my favourite music and the maps of Maemo Mapper (I have Madrid and surroundings stored in my card, and it is quite useful when I get lost in the city, that happens quite often :-P ). The rest of features are pretty much the same than in the 770, except the new webcam, which I do not think I would use too much.

So, summarizing, if you don’t own a 770 and are thinking of buying it, forget it and go for the N800. It is worthy to spend 50 more Euro. If you already own the 770, it does not make sense to have both devices. Try to sell your 770 before buying the new N800. The other option is to cross your fingers and get a discount from the Developer Device Program. Personally, right now I am trying to sell my 770, and I am crossing my fingers ;-) .

Regarding the operating system, I expect the new releases of Maemo (3.0, codename Bora) and the Internet Table system (IT 2007) to be compatible with the current system. Also, the already available packages should be compatible with this new system, or at least, easily recompilable to make them binary-compatible with the new system. The releases page says that the compatibilty among Maemo 2.1 and 3.0 is rather good. Here you may find some details about the compatibility issues.

Add comment January 8th, 2007


What's this?

This is a blog about the new Nokia 770. It will show tricks, hacks, reviews, etc about this impressive gadget. Comments and feedback are welcome.

You can contact me at isra _at_ herraiz.org, or just leaving a comment in any post.

Calendar

January 2007
M T W T F S S
« Jul    
1234567
891011121314
15161718192021
22232425262728
293031  

Posts by Month

Posts by Category

Valid XHTML
Valid CSS
No-www.org