[ELDK] openssl support in ELDK-5.3

arun sharma arun.coral at gmail.com
Wed Jan 30 06:41:47 CET 2013


Hi Detlev,

Thanks for replying so quick and effective. It helped me a lot, I
understood the concept of installing header or packages in our ELDK
environment but now stuck with following while installing openssl-dev for
armv5te.

openssl-dev: unsatisfied recommendation for libssl-dev
openssl-dev: unsatisfied recommendation for libcrypto-dev

The point here is where to find libssl-dev and libcrypto-dev, i found
libssl and libcrypto but not their dev. Please suggest, already looked over
Google a lot.

Regards




On Wed, Jan 23, 2013 at 6:14 PM, arun sharma <arun.coral at gmail.com> wrote:

>
>
> ---------- Forwarded message ----------
> From: Detlev Zundel <dzu at denx.de>
> Date: Wed, Jan 23, 2013 at 3:50 AM
> Subject: Re: [ELDK] openssl support in ELDK-5.3
> To: arun sharma <arun.coral at gmail.com>
> Cc: eldk at lists.denx.de
>
>
> Hello arun sharma,
>
> > I have been trying to compile freeswitch for arm, found trouble in make
> > with "openssl/crypto.h NOt found". It was used to be there in eldk4.2.
> > Please suggest how to get through this?
>
> This boils down to the fact that in ELDKs up to 4.x we were using the
> provided rootfilesystem also together with the cross toolchain.  In
> recent ELDKs, the toolchain is completely separate from the multiple
> provided rootfilesystems.
>
> So effectively the question is what packages are included in the tool
> chain (actually in its "sysroot" directory) and if there is an easy way
> to add that.
>
> Luckily, at least the latter question can be answered easily.  In
> ELDKs > 5.0 the toolchain contains an "opkg" implementation that can be
> used to
> install a .ipk package into the cross development environment.
>
> Here is an example using the armv7a toolchain:
>
>   [dzu at pollux openssl]$ gcc -Wall -lssl -lcrypto -o ssl-demo ssl-demo.c
>
> Ok, so natively the example compiles fine.
>
>   [dzu at pollux openssl]$ eldk-switch -r 5.2 armv7a
>   Setup for armv7a (using ELDK 5.2)
>   [dzu at pollux openssl]$ ${CROSS_COMPILE}gcc -Wall -lssl -lcrypto -o
> ssl-demo ssl-demo.c
>   ssl-demo.c:11:26: fatal error: openssl/rand.h: No such file or directory
>   compilation terminated.
>   [dzu at pollux openssl]$
>
> That's exactly what you see - the ssl librarys are missing in the (sato)
> Toolchain.
>
> If you have the ipkg file for the openssl-dev, then you can install it
> into the toolchain itself.  This looks like this:
>
>   [dzu at pollux openssl]$ type opkg-cl
>   opkg-cl is /opt/eldk-5.2/armv7a/sysroots/i686-eldk-linux/usr/bin/opkg-cl
>   [dzu at pollux openssl]$
>
> Ok, so this is the "opkg-cl" tool that runs natively.
>
>   [dzu at pollux openssl]$ sudo
> /opt/eldk-5.2/armv7a/sysroots/i686-eldk-linux/usr/bin/opkg-cl
> --force-depends -o
> /opt/eldk-5.2/armv7a/sysroots/armv7a-vfp-neon-linux-gnueabi/ -f
> /opt/eldk-5.2/armv7a/sysroots/armv7a-vfp-neon-linux-gnueabi/etc/opkg.conf
> install /tmp/openssl-dev_1.0.0j-r15.3_armv7a-vfp-neon.ipk
>   [sudo] password for dzu:
>   Upgrading openssl-dev on root from 1.0.0h-r15.1 to 1.0.0j-r15.3...
>   openssl-dev: unsatisfied recommendation for libssl-dev
>   openssl-dev: unsatisfied recommendation for libcrypto-dev
>   Collected errors:
>    * satisfy_dependencies_for: Cannot satisfy the following dependencies
> for openssl-dev:
>    * openssl (= 1.0.0j-r15.3) *
>   [dzu at pollux openssl]$ ${CROSS_COMPILE}gcc -Wall -lssl -lcrypto -o
> ssl-demo ssl-demo.c
>   [dzu at pollux openssl]$
>
> Note that there the "-o" option to opkg-cl is needed to tell it the
> location of the sysroot directory it should install to.  One also needs
> to specify "-f" with the corresponding opkg.conf file (otherwise it will
> find a config file that does not specify armv7a architecture for
> packages).  Maybe somewhere in the future these options are compiled in
> as default into the opkg-cl binary, but until then the command line will
> be long, sorry.  For this example I also override the dependency check
> just to show that the package can be installed.
>
> Now for the more problematic facts of this procedure - the .ipk files
> are currently not hosted on our ftp server as this would use up too much
> disk space for all thearchitectures, so you need to generate this
> yourself by compiling the eldk from scratch (see
> http://www.denx.de/wiki/view/ELDK-5/EldkBuilding).  It is also
> neccessary that the packages generated fit the toolchain tarball as the
> sysroot hierarchy in the toolchain contains an opkg "packages" file with
> md5sums of the package files.  If those things do not match, you will
> see something like this:
>
>   Collected errors:
>    * opkg_install_pkg: Package openssl-dev md5sum mismatch. Either the
> opkg or the package index are corrupt. Try 'opkg update'.
>    * opkg_install_cmd: Cannot install package openssl-dev.
>
> That's why I used eldk 5.2 above because this is an installation that I
> have the fitting .ipkg files for ;)
>
> Ok, I hope I could shed some light on the current procedure to
> arbitrarily extend the cross compilation environment.
>
> Best wishes
>   Detlev
>
> --
> Der Kluge tue gleich anfangs, was der Dumme erst am Ende.
>                                     --- Baltasar Gracian
> --
> DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-40 Fax: (+49)-8142-66989-80 Email: dzu at denx.de
>
>


More information about the eldk mailing list