[ovs-discuss] openvswitch (Ubuntu) bug
blp at nicira.com
Wed Nov 24 20:25:46 UTC 2010
On Wed, Nov 24, 2010 at 11:49:16AM +0000, Dave Walker wrote:
> I'd like to raise that the Debian package imported to Ubuntu Natty
> failed to build from source. A bug has been opened against this
> package in Ubuntu .
> I believe it is due to linker behaviour change in Natty:
> "The linking behaviour was changed to not resolve symbols anymore
> in indirectly linked shared libraries. A binary directly using
> a symbol from a shared library has to link with this library.
> Details can be found at , an analysis of required changes (and
> some patches) for packages in main can be found at . A list
> of open issues is found at .
> " -- 
> This pretty much means that -lcrypto explicitly needs to be added
> where -lssl is used. I've added a trivial patch  to the Ubuntu
> package to achieve this, and seems to resolve the build failure.
> However, it should probably be part of configure.ac.
Thank you for the report.
It looks like Open vSwitch just needs to use pkg-config to check for
openssl instead of libssl.
Here's a patch, does it fix it?
From: Ben Pfaff <blp at nicira.com>
Date: Wed, 24 Nov 2010 12:25:10 -0800
Subject: [PATCH] configure: Check for pkg-config "openssl" library instead of "libssl".
Checking for libssl only does not necessarily link against libcrypto, so
the build can gratuitously fail.
Reported-by: Dave Walker <DaveWalker at ubuntu.com>
Ubuntu bug #680439.
AUTHORS | 1 +
m4/openvswitch.m4 | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/AUTHORS b/AUTHORS
index 3e80eef..d283def 100644
@@ -40,6 +40,7 @@ Brad Hall brad at nicira.com
Brandon Heller brandonh at stanford.edu
Bryan Fulton bryan at nicira.com
Cedric Hobbs cedric at nicira.com
+Dave Walker DaveWalker at ubuntu.com
Derek Cormier derek.cormier at lab.ntt.co.jp
DK Moon dkmoon at nicira.com
Ghanem Bahri bahri.ghanem at gmail.com
diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
index c5f0742..fe30eec 100644
@@ -75,18 +75,18 @@ AC_DEFUN([OVS_CHECK_OPENSSL],
if test "$ssl" != false; then
dnl Make sure that pkg-config is installed.
- PKG_CHECK_MODULES([SSL], [libssl],
+ PKG_CHECK_MODULES([SSL], [openssl],
if test "$ssl" = check; then
- AC_MSG_WARN([Cannot find libssl:
+ AC_MSG_WARN([Cannot find openssl:
OpenFlow connections over SSL will not be supported.
(You may use --disable-ssl to suppress this warning.)])
- AC_MSG_ERROR([Cannot find libssl (use --disable-ssl to configure without SSL support)])
+ AC_MSG_ERROR([Cannot find openssl (use --disable-ssl to configure without SSL support)])
More information about the discuss