[opensuse-factory] (python-)cryptopp ABI issues
Hi, the package python-cryptopp in factory (https://build.opensuse.org/package/show?package=python-cryptopp&project=openSUSE%3AFactory) contains an embedded copy of cryptopp-5.5.2. I'm quite surprised to see it in factory at all because no other package uses it. In the build service, there is a package of cryptopp-5.6.0 (https://build.opensuse.org/package/show?package=libcryptopp&project=devel%3Alibraries%3Ac_c%2B%2B). Problem: cryptopp does not build a shared library by default and therefore does not have upstream version information for the shared library. The package in the build service is rather naïvely using "libcryptopp.so.5" as the SONAME - I assume that ".so.5" has been chosen because the package version starts with a five, but that will not work because binary compatibility does break between releases. Ubuntu and Debian are currently at ".so.8" for cryptopp-5.6.0 (http://packages.ubuntu.com/source/natty/libcrypto++, http://packages.debian.org/source/sid/libcrypto++) and ".so.9" for cryptopp-5.6.1 (http://packages.debian.org/source/experimental/libcrypto++). Mandriva used to sync with Debian, but is now stuck at cryptopp-5.5.2 and therefore ".so.6". Fedora copied the package from Mandriva at version 5.5.2 and is since then stuck at ".so.6", too, even though Fedora has newer versions that did break the ABI. What should be done in such a situation? I'd suggest to either drop python-cryptopp from factory (it's outdated and broken anyway), or add cryptopp-5.6.1 to factory with the Debian SONAME (since there are so many distibution-invented SONAMES already that we don't to need to invent our own, and Fedora's one is broken) and update python-cryptopp to make it use the external cryptopp package. Andreas -- Neu: GMX De-Mail - Einfach wie E-Mail, sicher wie ein Brief! Jetzt De-Mail-Adresse reservieren: http://portal.gmx.net/de/go/demail -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On 2010-12-15 18:02:17 +0100, andreas.hanke@gmx-topmail.de wrote:
or add cryptopp-5.6.1 to factory with the Debian SONAME (since there are so many distibution-invented SONAMES already that we don't to need to invent our own, and Fedora's one is broken) and update python-cryptopp to make it use the external cryptopp package.
this solution imho. darix -- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 15/12/10 14:15, Marcus Rueckert escribió:
On 2010-12-15 18:02:17 +0100, andreas.hanke@gmx-topmail.de wrote:
or add cryptopp-5.6.1 to factory with the Debian SONAME (since there are so many distibution-invented SONAMES already that we don't to need to invent our own, and Fedora's one is broken) and update python-cryptopp to make it use the external cryptopp package.
this solution imho.
Yep, I would pick that one too. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.15 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org/ iEYEARECAAYFAk0I9/IACgkQhbiInYWJi9NASgCfTVY7ojTpxdDM1cac0/bqs37o sgAAnAq++jsEv9wRrCDtAfShnBgGG4u3 =uEGS -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Hi,
El 15/12/10 14:15, Marcus Rueckert escribió:
On 2010-12-15 18:02:17 +0100, andreas.hanke@gmx-topmail.de wrote:
or add cryptopp-5.6.1 to factory with the Debian SONAME (since there are so many distibution-invented SONAMES already that we don't to need to invent our own, and Fedora's one is broken) and update python-cryptopp to make it use the external cryptopp package.
this solution imho.
Yep, I would pick that one too.
I have done part of this locally (created a libcryptopp package based on the one in devel:libraries:c_c++, updated to version 5.6.1, built as a shared library with ".so.9"), all with plain rpmbuild. How can I get involved to get this submitted? The next step would be to update python-cryptopp in factory to make use of it, i.e. --disable-embedded-cryptopp. (The build currently fails for an unrelated reason; maybe 0.5.12 is too old for Python 2.7?) Andreas -- GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt auch mit gratis Notebook-Flat! http://portal.gmx.net/de/go/dsl -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 15/12/10 22:38, andreas.hanke@gmx-topmail.de escribió:
The next step would be to update python-cryptopp in factory to make use of it, i.e. --disable-embedded-cryptopp.
Just did, (SR#56186) however opened pandora's box. ;) fail 1: /sbin/ldconfig: /usr/lib64/libcryptopp.so.5 is not a symbolic link... fail2: For some reason C++ code is getting compiled with GCC but linked with g++ , that looks wrong to me,though it works. Someone familiar with setuptools or the python build system has to check that. -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.15 (GNU/Linux) Comment: Using GnuPG with SUSE - http://enigmail.mozdev.org/ iEYEARECAAYFAk0JgWMACgkQhbiInYWJi9OcYQCfZYWRs6cWSYpJ6fzO72V91+Ti /QUAoJl7AI3kNyLTEGUvxejnigSQOAE6 =ASke -----END PGP SIGNATURE----- -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Hi,
fail 1: /sbin/ldconfig: /usr/lib64/libcryptopp.so.5 is not a symbolic link...
that is another bug in the current (5.6.0) cryptopp package - it installs the same file twice, as libcryptopp.so.5.6.0 and libcryptopp.so.5, both with SONAME libcryptopp.so.5. Now ldconfig sees that there should be a symbolic link from libcryptopp.so.5 to libcryptopp.so.5.6.0, but doesn't create it because it would have to delete a library in order to do so. I've fixed that in my local package that I'd like to submit, but don't know how to submit ... Andreas -- GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt auch mit gratis Notebook-Flat! http://portal.gmx.net/de/go/dsl -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
On Thu, 16 Dec 2010 04:59:19 +0100, andreas.hanke@gmx-topmail.de wrote:
I've fixed that in my local package that I'd like to submit, but don't know how to submit ...
Assuming you have an obs account and the package quilt installed: - branch the package in question - create a new patch following the quilt howto at http://nordisch.org. - interate the patch into the package. - check-in the modified package - In the directory with your package do sr -m "<reason_for_request>" <original_package_project> HTH Philipp -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
Hi,
fail2: For some reason C++ code is getting compiled with GCC but linked with g++ , that looks wrong to me,though it works.
Someone familiar with setuptools or the python build system has to check that.
this is OK. For compilation, GCC determines the language from the source filename extensions, so it does not matter if gcc or g++ is used. For linkage, GCC can no longer do that, so g++ must be used to get the correct standards libraries. It may look strange, but is valid. But now I have found yet another problem: There is a second package named "python-pycryptopp" (https://build.opensuse.org/package/show?package=python-pycryptopp&project=devel%3Alanguages%3Apython) in addition to "python-cryptopp" which contains the same software (and has the same bug of using the embedded cryptopp sources instead of the external package). How shall we proceed to avoid further double/triple/quadruple work? Andreas -- GMX DSL Doppel-Flat ab 19,99 Euro/mtl.! Jetzt auch mit gratis Notebook-Flat! http://portal.gmx.net/de/go/dsl -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-factory+help@opensuse.org
participants (4)
-
andreas.hanke@gmx-topmail.de
-
Cristian Rodríguez
-
Marcus Rueckert
-
Philipp Thomas