Bug 1278522 - Please rebuild gmp-ecm in rawhide due to missing symbol
Summary: Please rebuild gmp-ecm in rawhide due to missing symbol
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: gmp-ecm
Version: rawhide
Hardware: All
OS: All
medium
medium
Target Milestone: ---
Assignee: Jerry James
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-11-05 17:03 UTC by Paulo Andrade
Modified: 2015-11-06 20:00 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-11-06 20:00:01 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Paulo Andrade 2015-11-05 17:03:22 UTC
$ gmp-ecm
gmp-ecm: symbol lookup error: /lib64/libecm.so.0: undefined symbol: __gmpn_add_nc
$ rpm -q gmp-ecm
gmp-ecm-6.4.4-6.fc23.x86_64.rpm

Rebuilding the package corrects the problem:

$ rpm -q gmp-ecm
gmp-ecm-6.4.4-6.fc24.x86_64
$ gmp-ecm
Invalid arguments. See gmp-ecm --help.

Comment 1 Jerry James 2015-11-06 18:03:30 UTC
I have rebuilt it.  But this worries me.  Does this mean that gmp dropped a symbol without bumping the soname?

Comment 2 Paulo Andrade 2015-11-06 18:51:56 UTC
  The symbol is not public. gmp-ecm "cheats" at build time, and
uses it if it is available, and even adds a prototype to it,
like this, on a header not installed:

#ifdef HAVE___GMPN_ADD_NC
#ifndef __gmpn_add_nc
__GMP_DECLSPEC mp_limb_t __gmpn_add_nc (mp_ptr, mp_srcptr, mp_srcptr,
    mp_size_t, mp_limb_t);
#endif
#endif


  I checked newer gmp, and I believe it reworked the __gmpn_add_nc
symbol:

$ objdump -T /lib64/libgmp.so|grep __gmpn_add_nc | awk '{print $7;}'
__gmpn_add_nc_coreisbr
__gmpn_add_nc_pentium4
__gmpn_add_nc_x86_64
__gmpn_add_nc_bobcat
__gmpn_add_nc_atom
__gmpn_add_nc_core2

  Previously, there was a single __gmpn_add_nc symbol.

Comment 3 Jerry James 2015-11-06 20:00:01 UTC
Oh, I see.  Thanks for the explanation.  I'll close this as fixed, then.


Note You need to log in before you can comment on or make changes to this bug.