All of lore.kernel.org
 help / color / mirror / Atom feed
* Qt should be linked to openssl at compilation
       [not found] <37aa3d7e-7cbb-48f7-8339-8f2b6f7ee06d@zimbra33-e6.priv.proxad.net>
@ 2011-11-16 19:47 ` Francois Dupoux
  2011-11-16 20:38   ` Holger Hans Peter Freyther
  2011-11-16 20:57   ` Mark Hatle
  0 siblings, 2 replies; 10+ messages in thread
From: Francois Dupoux @ 2011-11-16 19:47 UTC (permalink / raw)
  To: poky

Hi,

Would it be possible to link Qt with openssl at compilation time ?

The problem we are having is our minimal root filesystem provides one Qt-4.7 application which connects to an HTTPS backend. But the openssl library is not in the root filesystem as it is not linked to any other application. So we end up with a run time error when Qt fails to dynamically load openssl:

QSslSocket: cannot call unresolved function d2i_X509

In that particular case this error is triggered by this function call:
QSslCertificate::fromPath("/path/to/ca.crt");

We are using Qt-Embedded but I guess the problem would be exactly the same with Qt-x11

So it would be great to just link Qt with openssl so that all SSL related classes can work.

We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in recipes-qt/qt4.

Many thanks
Francois


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 19:47 ` Qt should be linked to openssl at compilation Francois Dupoux
@ 2011-11-16 20:38   ` Holger Hans Peter Freyther
  2011-11-16 20:57   ` Mark Hatle
  1 sibling, 0 replies; 10+ messages in thread
From: Holger Hans Peter Freyther @ 2011-11-16 20:38 UTC (permalink / raw)
  To: poky

On 11/16/2011 08:47 PM, Francois Dupoux wrote:

> We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in recipes-qt/qt4.

or make the QtNetwork package have RDEPENDS on libssl/libcrypto.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 19:47 ` Qt should be linked to openssl at compilation Francois Dupoux
  2011-11-16 20:38   ` Holger Hans Peter Freyther
@ 2011-11-16 20:57   ` Mark Hatle
  2011-11-16 21:20     ` Francois Dupoux
  1 sibling, 1 reply; 10+ messages in thread
From: Mark Hatle @ 2011-11-16 20:57 UTC (permalink / raw)
  To: poky

On 11/16/11 1:47 PM, Francois Dupoux wrote:
> Hi,
>
> Would it be possible to link Qt with openssl at compilation time ?
>
> The problem we are having is our minimal root filesystem provides one Qt-4.7 application which connects to an HTTPS backend. But the openssl library is not in the root filesystem as it is not linked to any other application. So we end up with a run time error when Qt fails to dynamically load openssl:
>
> QSslSocket: cannot call unresolved function d2i_X509
>
> In that particular case this error is triggered by this function call:
> QSslCertificate::fromPath("/path/to/ca.crt");
>
> We are using Qt-Embedded but I guess the problem would be exactly the same with Qt-x11
>
> So it would be great to just link Qt with openssl so that all SSL related classes can work.
>
> We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in recipes-qt/qt4.

Slightly off topic perhaps, but are you using the RPM packaging back-end?

This should have identified the usage of the openssl library and added it to the 
dependency set.  If it didn't I'm interested to know why it failed to detect it.

This is an outstanding enhancement request to add that same level of dependency 
detection to deb and ipkg.  Until then, if you want to use deb or ipkg you will 
likely need to add an RDEPENDS to openssl to get the dynamic version.

--Mark

> Many thanks
> Francois
> _______________________________________________
> poky mailing list
> poky@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 20:57   ` Mark Hatle
@ 2011-11-16 21:20     ` Francois Dupoux
  2011-11-16 21:32       ` Mark Hatle
  0 siblings, 1 reply; 10+ messages in thread
From: Francois Dupoux @ 2011-11-16 21:20 UTC (permalink / raw)
  To: Mark Hatle; +Cc: poky

----- Original Message -----
From: "Mark Hatle" <mark.hatle@windriver.com>
To: poky@yoctoproject.org
Sent: Wednesday, 16 November, 2011 8:57:14 PM
Subject: Re: [poky] Qt should be linked to openssl at compilation

> So it would be great to just link Qt with openssl so that all SSL related classes can work.
>
> We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in recipes-qt/qt4.

Slightly off topic perhaps, but are you using the RPM packaging back-end?

This should have identified the usage of the openssl library and added it to the 
dependency set.  If it didn't I'm interested to know why it failed to detect it.

This is an outstanding enhancement request to add that same level of dependency 
detection to deb and ipkg.  Until then, if you want to use deb or ipkg you will 
likely need to add an RDEPENDS to openssl to get the dynamic version.

Hi Mark,

Yes, I am using RPM packages, with the latest stable version (poky-6.0)

Thanks


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 21:20     ` Francois Dupoux
@ 2011-11-16 21:32       ` Mark Hatle
  2011-11-16 21:57         ` William Mills
                           ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Mark Hatle @ 2011-11-16 21:32 UTC (permalink / raw)
  To: Francois Dupoux; +Cc: poky

On 11/16/11 3:20 PM, Francois Dupoux wrote:
> ----- Original Message -----
> From: "Mark Hatle"<mark.hatle@windriver.com>
> To: poky@yoctoproject.org
> Sent: Wednesday, 16 November, 2011 8:57:14 PM
> Subject: Re: [poky] Qt should be linked to openssl at compilation
>
>> So it would be great to just link Qt with openssl so that all SSL related classes can work.
>>
>> We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in recipes-qt/qt4.
>
> Slightly off topic perhaps, but are you using the RPM packaging back-end?
>
> This should have identified the usage of the openssl library and added it to the
> dependency set.  If it didn't I'm interested to know why it failed to detect it.
>
> This is an outstanding enhancement request to add that same level of dependency
> detection to deb and ipkg.  Until then, if you want to use deb or ipkg you will
> likely need to add an RDEPENDS to openssl to get the dynamic version.
>
> Hi Mark,
>
> Yes, I am using RPM packages, with the latest stable version (poky-6.0)

What is your base configuration, i.e. machine type (or architecture) .. and 
which image type are you building for?

I'd like to try to reproduce this linking to openssl, but not getting referenced 
in the dependency set.

--Mark

> Thanks



^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 21:32       ` Mark Hatle
@ 2011-11-16 21:57         ` William Mills
  2011-11-16 22:33           ` Francois Dupoux
  2011-11-16 22:09         ` Holger Hans Peter Freyther
  2011-11-16 22:30         ` Francois Dupoux
  2 siblings, 1 reply; 10+ messages in thread
From: William Mills @ 2011-11-16 21:57 UTC (permalink / raw)
  To: Mark Hatle; +Cc: poky



On 11/16/2011 04:32 PM, Mark Hatle wrote:
> On 11/16/11 3:20 PM, Francois Dupoux wrote:
>> ----- Original Message -----
>> From: "Mark Hatle"<mark.hatle@windriver.com>
>> To: poky@yoctoproject.org
>> Sent: Wednesday, 16 November, 2011 8:57:14 PM
>> Subject: Re: [poky] Qt should be linked to openssl at compilation
>>
>>> So it would be great to just link Qt with openssl so that all SSL 
>>> related classes can work.
>>>
>>> We just need to add "-openssl-linked" to QT_CONFIG_FLAGS in 
>>> recipes-qt/qt4.
>>
>> Slightly off topic perhaps, but are you using the RPM packaging 
>> back-end?
>>
>> This should have identified the usage of the openssl library and 
>> added it to the
>> dependency set.  If it didn't I'm interested to know why it failed to 
>> detect it.
>>
>> This is an outstanding enhancement request to add that same level of 
>> dependency
>> detection to deb and ipkg.  Until then, if you want to use deb or 
>> ipkg you will
>> likely need to add an RDEPENDS to openssl to get the dynamic version.
>>
>> Hi Mark,
>>
>> Yes, I am using RPM packages, with the latest stable version (poky-6.0)

Francois,  are you building your application using bitbake or 
externally?  Are you adding it to your board using an RPM package or 
just coping it there?

If your building it externally and just copying it, all the magic others 
are talking about won't happen.  However you can just add the openssl 
packages to you target.  You can do this by building them and using RPM 
or you can create a custom image/task recipie and add the needed 
packages.  You could even use HOB if you want an easy way to create a 
custom image.

If your building your app in bitbake, then ignore me and continue your 
conversation with Mark.





^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 21:32       ` Mark Hatle
  2011-11-16 21:57         ` William Mills
@ 2011-11-16 22:09         ` Holger Hans Peter Freyther
  2011-11-16 23:42           ` Mark Hatle
  2011-11-16 22:30         ` Francois Dupoux
  2 siblings, 1 reply; 10+ messages in thread
From: Holger Hans Peter Freyther @ 2011-11-16 22:09 UTC (permalink / raw)
  To: poky

On 11/16/2011 10:32 PM, Mark Hatle wrote:

> 
> I'd like to try to reproduce this linking to openssl, but not getting
> referenced in the dependency set.

Qt has three SSL options:
	1.) no SSL
	2.) dlopen at runtime (the one probably configured), some people
            believe it avoids the OpenSSL advertizement clause.. and saves
	    static initialization when SSL is not used..
	3.) link to OpenSSL (the -openssl-linked config option the original
	    mail is referring to)


Either you do 2.) and make QtNetwork RDEPEND on libssl/libcrypt and make sure
the symlinks are present... or you do 3.) as proposed in the original email.


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 21:32       ` Mark Hatle
  2011-11-16 21:57         ` William Mills
  2011-11-16 22:09         ` Holger Hans Peter Freyther
@ 2011-11-16 22:30         ` Francois Dupoux
  2 siblings, 0 replies; 10+ messages in thread
From: Francois Dupoux @ 2011-11-16 22:30 UTC (permalink / raw)
  To: Mark Hatle; +Cc: poky

----- Original Message -----
From: "Mark Hatle" <mark.hatle@windriver.com>
To: "Francois Dupoux" <fdupoux@free.fr>
Cc: poky@yoctoproject.org
Sent: Wednesday, 16 November, 2011 9:32:55 PM
Subject: Re: [poky] Qt should be linked to openssl at compilation

> What is your base configuration, i.e. machine type (or architecture) .. and 
> which image type are you building for?
> I'd like to try to reproduce this linking to openssl, but not getting referenced 
> in the dependency set.

Hi Mark,

I have created a custom machine which is similar to "qemuarm", and also 
a custom image which includes the packages I need. 

Here is my configuration:

==> poky-edison/build/conf/local.conf
BB_NUMBER_THREADS = "4"
PARALLEL_MAKE = "-j 4"
MACHINE = "mymachine"
PACKAGE_CLASSES ?= "package_rpm"
DISTRO = "poky"
EXTRA_IMAGE_FEATURES = "debug-tweaks"
USER_CLASSES ?= "image-mklibs image-prelink"

In another bblayer I have created a configuration file for mymachine:

==> meta-mine/conf/machine/mymachine.conf
require conf/machine/qemuarm.conf
IMAGE_FSTYPES = "squashfs"
KERNEL_IMAGETYPE = "uImage"
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
PREFERRED_VERSION_linux-libc-headers = "2.6.32"
PREFERRED_PROVIDER_virtual/kernel = "linux-mine"

I have also created a custom recipe for the image:

==> meta-mine/recipes-core/images/my-image.bb
inherit core-image
IMAGE_INSTALL = "\
        task-core-boot busybox conffiles \
        module-init-tools module-init-tools-depmod \
        tslib tslib-calibrate tslib-tests \
        qt4-embedded-fonts-ttf-dejavu \
        qt4-embedded-fonts-ttf-vera \
        qt4-embedded-plugin-iconengine-svgicon \
        qt4-embedded-plugin-imageformat-gif \
        qt4-embedded-plugin-imageformat-ico \
        qt4-embedded-plugin-imageformat-jpeg \
        qt4-embedded-plugin-imageformat-mng \
        qt4-embedded-plugin-imageformat-svg \
        qt4-embedded-plugin-imageformat-tiff \
        my-qt-application \
"

The recipe for out Qt application inherits qt4e and contains no particular DEPENDS/RDEPENDS.

Also I have imported recipes-qt/qt4 from poky-trunk in my custom bblayer to be able to get 
qt-4.7.4 with the stable poky-6.0 release but I don't think it should make any difference

The build machine is running CentOS-6.0 x86_64

Thanks
Francois


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 21:57         ` William Mills
@ 2011-11-16 22:33           ` Francois Dupoux
  0 siblings, 0 replies; 10+ messages in thread
From: Francois Dupoux @ 2011-11-16 22:33 UTC (permalink / raw)
  To: William Mills; +Cc: poky

Hi William,

I confirm I am building all the packages in a 100% automated way using
bitbake, I am not copying any binary manually, and I am just using
the squashfs root filesystem built by bitbake.

Thanks
Francois

----- Original Message -----
From: "William Mills" <wmills@ti.com>
To: "Mark Hatle" <mark.hatle@windriver.com>
Cc: "Francois Dupoux" <fdupoux@free.fr>, poky@yoctoproject.org
Sent: Wednesday, 16 November, 2011 9:57:00 PM
Subject: Re: [poky] Qt should be linked to openssl at compilation


>> Hi Mark,
>>
>> Yes, I am using RPM packages, with the latest stable version (poky-6.0)

Francois,  are you building your application using bitbake or 
externally?  Are you adding it to your board using an RPM package or 
just coping it there?

If your building it externally and just copying it, all the magic others 
are talking about won't happen.  However you can just add the openssl 
packages to you target.  You can do this by building them and using RPM 
or you can create a custom image/task recipie and add the needed 
packages.  You could even use HOB if you want an easy way to create a 
custom image.

If your building your app in bitbake, then ignore me and continue your 
conversation with Mark.





^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Qt should be linked to openssl at compilation
  2011-11-16 22:09         ` Holger Hans Peter Freyther
@ 2011-11-16 23:42           ` Mark Hatle
  0 siblings, 0 replies; 10+ messages in thread
From: Mark Hatle @ 2011-11-16 23:42 UTC (permalink / raw)
  To: poky

On 11/16/11 4:09 PM, Holger Hans Peter Freyther wrote:
> On 11/16/2011 10:32 PM, Mark Hatle wrote:
>
>>
>> I'd like to try to reproduce this linking to openssl, but not getting
>> referenced in the dependency set.
>
> Qt has three SSL options:
> 	1.) no SSL
> 	2.) dlopen at runtime (the one probably configured), some people
>              believe it avoids the OpenSSL advertizement clause.. and saves
> 	    static initialization when SSL is not used..

Ahh, I didn't know there was a dlopen option.  If that is the case then there is 
no way for auto detection to be able to determine the need for OpenSSL.  So 
RDEPENDS would be the correct way in that case.

--Mark

> 	3.) link to OpenSSL (the -openssl-linked config option the original
> 	    mail is referring to)
>
>
> Either you do 2.) and make QtNetwork RDEPEND on libssl/libcrypt and make sure
> the symlinks are present... or you do 3.) as proposed in the original email.
> _______________________________________________
> poky mailing list
> poky@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/poky



^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2011-11-16 23:42 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <37aa3d7e-7cbb-48f7-8339-8f2b6f7ee06d@zimbra33-e6.priv.proxad.net>
2011-11-16 19:47 ` Qt should be linked to openssl at compilation Francois Dupoux
2011-11-16 20:38   ` Holger Hans Peter Freyther
2011-11-16 20:57   ` Mark Hatle
2011-11-16 21:20     ` Francois Dupoux
2011-11-16 21:32       ` Mark Hatle
2011-11-16 21:57         ` William Mills
2011-11-16 22:33           ` Francois Dupoux
2011-11-16 22:09         ` Holger Hans Peter Freyther
2011-11-16 23:42           ` Mark Hatle
2011-11-16 22:30         ` Francois Dupoux

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.