Re: package headers for user applications
- To: Neil Williams <codehelp@debian.org>
- Cc: debian-embedded@lists.debian.org
- Subject: Re: package headers for user applications
- From: hoefle marco <marco.hoefle@nanotronic.ch>
- Date: Tue, 09 Jun 2009 10:08:00 +0200
- Message-id: <1244534880.7967.47.camel@wks02-lin.nanotronic.local>
- In-reply-to: <20090528194744.ad56079d.codehelp@debian.org>
- References: <1243500017.3111.11.camel@wks02-lin.nanotronic.local> <20090528194744.ad56079d.codehelp@debian.org>
On Thu, 2009-05-28 at 19:47 +0100, Neil Williams wrote:
> On Thu, 28 May 2009 10:40:17 +0200
> hoefle marco <marco.hoefle@nanotronic.ch> wrote:
>
> > Hello,
> > to port an application to emdebian crush running on an arm (PXA270)
> > board we need the dbus package installed.
> > I found the package under grip package sources:
> > libdbus-1-3_1.2.1-5em1_arm.deb
>
> Don't use Grip for the source of packages in Crush. Use Debian.
> Building the package with emdebian-tools then applies the same changes
> as would exist in the Grip package - indeed, it applies a few extra
> ones too for Crush.
>
> > I put this package on the target and installed it using dpkg.
>
> (Don't build stuff on Crush.)
So you suggest to rebuild the emdebian tar ball using emsandbox instead
of installing the binary package directly on the target?
> > Our user
> > application needs the according dbus/dbus.h header file. What is the
> > suggested way to put it to /usr/arm-linux-gnu/include to be able to
> > cross compile our user app?
>
> On your desktop machine:
>
> $ dpkg -S /usr/include/dbus-1.0/dbus/dbus.h
> libdbus-1-dev: /usr/include/dbus-1.0/dbus/dbus.h
>
> $ apt-cross -v -a arm -i libdbus-1-dev
> [enter sudo password if prompted]
Got an error from apt-cross:
hoefle@wks02-lin:~$ dpkg -S /usr/include/dbus-1.0/dbus/dbus.h
libdbus-1-dev: /usr/include/dbus-1.0/dbus/dbus.h
hoefle@wks02-lin:~$ sudo apt-cross -v -a arm -i libdbus-1-dev
Could not open
file /home/hoefle/.apt-cross/testing/lists/http.us.debian.org_debian_dists_testing_main_source_Sources - open (2 No such file or directory)
This is in the lists dir:
http.us.debian.org_debian_dists_testing_Release
http.us.debian.org_debian_dists_testing_Release.gpg
lock
partial
www.emdebian.org_debian_dists_testing_main_source_Sources
www.emdebian.org_debian_dists_testing_Release
www.emdebian.org_debian_dists_testing_Release.gpg
I don't know why apt-cross wants to pick
http.us.debian.org_debian_dists_testing_main_source_Sources
I got our used application (a led daemon controlled by dbus messages)
working. I put the header files by hand
to /usr/arm-linux-gnu/include/dbus (from the libdbus-1-dev package
downloaded from a debian repository).
The user application consists also of a user library which I could cross
compile. I copied the libdbusapihasler.so.0.0.0
to /usr/arm-linux-gnu/lib
Afterward I could cross compile and link the led daemon using:
arm-linux-gnu-gcc -std=c99 -g -O2 -o ledd ledd.o -ldbusapihasler
-lpthread
This is I suppose a very *dirty* way.
Reply to: