Summary:ASTERISK-07084: asterisk does not obey libdir
Reporter:Jon Hood (squinky86)Labels:
Date Opened:2006-06-02 10:34:24Date Closed:2011-06-07 14:07:52
Versions:Frequency of
Description:I'm on a multilib-system with 32 bit (/usr/lib) and 64 bit (/usr/lib64) libraries; however, asterisk seems to want to always install libraries and modules into /usr/lib, even when they're compiled for 64 bit mode. Please correct the libdir installation path or allow the libdir to be overwritten when running make.


(reference for finding multilib issues):
Installing asterisk with gentoo with multilib-strict enabled (multilib-strict means it doesn't let libraries go into the wrong libdir). Note that mostly only developers have multilib-strict enabled to find what packages do not obey libdir settings:
!!! ERROR: net-misc/asterisk-1.2.7_p1-r1 failed.
Call stack:
 misc-functions.sh, line 420:   Called install_qa_check
 misc-functions.sh, line 219:   Called die

!!! File /var/tmp/portage/asterisk-1.2.7_p1-r1/image///usr/lib/asterisk/modules/app_sms.so matches a file type that is not allowed in /usr/lib
!!! If you need support, post the topmost build error, and the call stack if relevant.

!!! install_qa_check failed; exiting
Comments:By: Jason Parker (jparker) 2006-06-02 14:15:58

Distro packages are not created by the asterisk developers.  Please open a bug report with Gentoo.

By: Jon Hood (squinky86) 2006-06-02 14:27:45

Reopening issue- I am a gentoo developer but this is not a gentoo issue nor a gentoo packaging issue- I just have some references included if anyone wants more information.

First of all, any system with multilib, and this can be FC if you want, uses /usr/lib64 for 64-bit libraries. This issue is about asterisk's makefile hardcoding /usr/lib instead of checking to see if it should put libraries into the system's libdir (which isn't always /usr/lib). There needs to be a way to pass a libdir to the asterisk build process.
Secondly, I put the gentoo-specific checks in "additional information" because they are not pertinent to fixing this bug. That's exactly what it is- additional information. Ignore it if you don't know what it is.

By: Serge Vecher (serge-v) 2006-06-07 15:44:25

squinky: is this also an issue in 1.2.9 and / or trunk?

By: Jon Hood (squinky86) 2006-06-07 15:53:40

This problem still exists in asterisk-
I'll test out trunk tonight.

By: Jon Hood (squinky86) 2006-06-07 16:02:46

trunk correctly defines variables and can be told to install into a /usr/lib64 libdir.

By: Serge Vecher (serge-v) 2006-06-19 11:45:56

squinky86: are you able to provide a patch that fixes this for 1.2?

By: Russell Bryant (russell) 2006-07-02 23:32:02

In Asterisk 1.2, you just have to change the ASTLIBDIR setting in the Makefile.  In the trunk, this has already been addressed by using the libdir option from configure.  I'm sorry if this is a pain, but it has already been addressed for the upcoming release ...