User:Tstaerk

Contents

[edit] Incubator

Here I prepare articles for this wiki to come.

[edit] how to add an application to the menu

cd /usr/share/applications/hildon/ 

Here you copy a desktop file. /etc/xdg/menus/hildon.menu:

<Filename>blah</Filename>

einf├╝gen

[edit] maemo 5

Installing maemo 5 (freemantle, see codenames) for N900 (maemo 5 does not run on the N810) in a SUSE Linux 11.2 x32 virtual machine resulted in

Processing was halted because there were too many errors.

So trying SUSE 11.1 (where maemo 4 worked):

root@i386 # useradd -m scratchboxuser
root@i386 # passwd scratchboxuser
root@i386 # wget http://repository.maemo.org/stable/fremantle/maemo-scratchbox-install_5.0.sh
root@i386 # chmod 777 maemo-scratchbox-install_5.0.sh
root@i386 # ./maemo-scratchbox-install_5.0.sh -s /scratchbox
root@i386 # /scratchbox/sbin/sbox_adduser scratchboxuser
root@i386 # su - scratchboxuser
scratchboxuser@i386 $ wget http://repository.maemo.org/stable/fremantle/maemo-sdk-install_5.0.sh
scratchboxuser@i386 $ sh maemo-sdk-install_5.0.sh

results in

Happy hacking!
scratchboxuser@i386 $ /scratchbox/login
scratchboxuser@i386 $ sb-conf select FREEMANTEL_ARMEL

[edit] cmake

[sbox-FREMANTLE_ARMEL: ~] > cd
[sbox-FREMANTLE_ARMEL: ~] > wget http://www.cmake.org/files/v2.6/cmake-2.6.2.tar.gz
[sbox-FREMANTLE_ARMEL: ~/cmake-2.6.2] > tar xvzf cmake-2.6.2.tar.gz
[sbox-FREMANTLE_ARMEL: ~/cmake-2.6.2] > cd cmake-2.6.2
[sbox-FREMANTLE_ARMEL: ~/cmake-2.6.2] > ./bootstrap && make -j4 && make install

[edit] subversion

[sbox-FREMANTLE_ARMEL: ~] > apt-get install subversion

[edit] Qt

Download Qt everywhere 4.6 and build it using

./configure --prefix=/usr && make -j2 && make install

[edit] libical

libical is needed for kdepimlibs

cd
wget http://downloads.sourceforge.net/project/freeassociation/libical/libical-0.44/libical-0.44.tar.gz?use_mirror=switch
tar xvzf libical-0.44.tar.gz
cd libical-0.44
./configure && make -j2 && make install

[edit] gpgme

gpgme is needed for kdepimlibs

curl ftp://ftp.gnupg.org/gcrypt/gpgme/gpgme-1.1.8.tar.bz2 > gpgme-1.1.8.tar.bz2
bunzip2  gpgme-1.1.8.tar.bz2
tar xvf gpgme-1.1.8.tar
cd gpgme-1.1.8
./configure && make -j2 && make install

[edit] boost

libboost is needed for kdepimlibs

apt-get install libboost-graph-dev

[edit] giflib

wget http://downloads.sourceforge.net/project/giflib/giflib%204.x/giflib-4.1.6/giflib-4.1.6.tar.bz2?use_mirror=switch

[edit] Xephyr

SUSE 11.2: xorg-x11-server-extra

main.cpp

#include <QApplication>
#include <QPushButton>
int main(int argc, char ** argv)
{
  QApplication qa(argc,argv);
  QPushButton* qp=new QPushButton("hello world");
  qp->show();
  return qa.exec();
}

Build and run it:

export DISPLAY=:4
qmake -project && qmake && make && ./qttest

[edit] Compiling on the N810

wget http://repository.maemo.org/pool/maemo4.1.2/free/g/glibc/libc6-dev_2.5.0-1osso10_armel.deb
  • get linux kernel headers
wget http://repository.maemo.org/pool/maemo4.1.2/free/l/linux-kernel-headers/linux-kernel-headers_2.6.16.osso11-1_armel.deb
  • get libgcc
wget http://repository.maemo.org/pool/maemo4.1.2/free/g/gcc-3.4/libgcc1_3.4.4cs2005q3.2-5.osso8_armel.deb
  • install everything
dpkg -i gcc-3.4_3.4.4cs2005q3.2-5.osso8_armel.deb libc6-dev_2.5.0-1osso10_armel.deb linux-kernel-headers/linux-kernel-headers_2.6.16.osso11-1_armel.deb
  • do the usual test
Nokia-N810-43-7:~# cat main.c
#include <stdio.h>

int main()
{ printf("hello world"); }

Nokia-N810-43-7:~# gcc-3.4 -o greeter main.c
Nokia-N810-43-7:~# ./greeter
hello worldNokia-N810-43-7:~#

[edit] C++

  • Try to compile a C++ program
Nokia-N810-43-7:/media/mmc1# cat main.cpp
#include <iostream>
int main()
{
  std::cout << "hello C++" << std::endl;
}
Nokia-N810-43-7:/media/mmc1# gcc-3.4 main.cpp
<unknown> tried to exec cc1plus but failed (No such file or directory)
  • download g++
wget http://repository.maemo.org/pool/maemo4.1.2/free/g/gcc-3.4/g++-3.4_3.4.4cs2005q3.2-5.osso8_armel.deb
  • download lib standard C++
wget http://repository.maemo.org/pool/maemo4.1.2/free/g/gcc-3.4/libstdc++6-dev_3.4.4cs2005q3.2-5.osso8_armel.deb
  • install g++
dpkg -i libstdc++6-dev_3.4.4cs2005q3.2-5.osso8_armel.deb g++-3.4_3.4.4cs2005q3.2-5.osso8_armel.deb
  • try to compile main.cpp again
gcc-3.4 main.cpp
/var/tmp/ccQkm9NS.o: In function `std::__verify_grouping...
  • ok, but do it right
gcc-3.4 -lstdc++ main.cpp
./a.out
hello C++

[edit] Compiling software with automake

Does not work.

[edit] Compiling Qt software

Nokia-N810-43-7:~# cat /etc/apt/sources.list
deb http://repository.maemo.org/extras/ diablo free
deb-src http://repository.maemo.org/extras/ diablo free
Nokia-N810-43-7:~# apt-get install libqtcore4 
apt-get install libqt4-dev
# cat qttest2.cpp 
#include <QApplication>
#include <QPushButton>
int main(int argc, char ** argv)
{
  QApplication qa(argc,argv);
  QPushButton* qp=new QPushButton("hello world");
  qp->show();
  return qa.exec();
}

# g\+\+-3.4 -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I. -I. qttest2.cpp  -lQtCore -lQtGui
# ./a.out

[edit] Contributions

Here are the contributions I am proud of