[Home]

Summary:ASTERISK-10726: Issues while cross compiling asterisk-addons
Reporter:Ovidiu Sas (ovi)Labels:
Date Opened:2007-11-08 23:02:26.000-0600Date Closed:2008-02-07 15:01:59.000-0600
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Addons/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) addons-menuselect.diff
( 1) asterisk-ooh323c_config.log
( 2) config.log.gz
( 3) make.log
( 4) menuselect_config.log.gz
( 5) menuselect_mxml_config.log.gz
Description:While cross-compiling asterisk-addons I noticed that cross compile options are passed to the menuselect/mxml build:
=== configuring in mxml (/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/work/asterisk-addons-1.4.4-r1/asterisk-addons-1.4.4/menuselect/mxml)
configure: running /bin/sh ./configure
--prefix=/usr/local  'CC=' 'LD=' 'AR=' 'CFLAGS=' 'LDFLAGS=-L/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,
-rpath-link,
/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/lib
-Wl,-O1'
'CPPFLAGS=-isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include'
'CPP=armeb-linux-gcc -E'
--cache-file=/dev/null
--srcdir=.


And here's the compile output:
make[3]: Entering directory `/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/work/asterisk-addons-1.4.4-r1/asterisk-addons-1.4.4/menuselect/mxml'
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-attr.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-entity.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-file.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-index.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-node.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-search.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-set.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-private.c
gcc -O -Wall  -isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include -c mxml-string.c


The '-isystem/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux/include' should not be passed as an argument since mxml should be compiled against the native host.


This issue was fixed for asterisk a while ago (maybe the same fix needs to be aplied here too).  Here's a list of cross-compile issues that were fixed for asterisk:
http://bugs.digium.com/view.php?id=8637
http://bugs.digium.com/view.php?id=9784

****** ADDITIONAL INFORMATION ******

Here's how the main configure was run:
NOTE: Running /home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/work/asterisk-addons-1.4.4-r1/asterisk-addons-1.4.4/configure            
--build=i686-linux
--host=armeb-linux
--target=armeb-linux
--prefix=/usr
--exec_prefix=/usr
--bindir=/usr/bin
--sbindir=/usr/sbin
--libexecdir=/usr/libexec
--datadir=/usr/share
--sysconfdir=/etc
--sharedstatedir=/usr/com        
--localstatedir=/var
--libdir=/usr/lib
--includedir=/usr/include
--oldincludedir=/usr/include
--infodir=/usr/share/info
--mandir=/usr/share/man
--with-ssl=/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux    
--with-termcap=/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux                  
--with-curl=/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux
--with-ncurses=/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux
--without-mysqlclient
--with-asterisk=/home/admin/slug-3.10/releases/slugos-3.10-beta/openslug-nslu2.tmp/staging/armeb-linux
Comments:By: Ovidiu Sas (ovi) 2007-11-08 23:06:18.000-0600

main config.log uploaded (./asterisk-addons-1.4.4/config.log)

By: Ovidiu Sas (ovi) 2007-11-14 13:07:18.000-0600

A similar issue is exposed by zaptel 1.4.6.

By: Jason Parker (jparker) 2007-11-14 13:17:36.000-0600

I've been looking at this, and pondering how to fix the problem.  It may just be that CPPFLAGS is being set, but if that's the case - it wouldn't really be an issue, because mxml is all C.  I'll try to post a patch shortly.

By: Digium Subversion (svnbot) 2007-11-14 17:03:52.000-0600

Repository: asterisk-addons
Revision: 486

_U  trunk/
U   trunk/Makefile

------------------------------------------------------------------------
r486 | qwell | 2007-11-14 17:03:51 -0600 (Wed, 14 Nov 2007) | 14 lines

Merged revisions 485 via svnmerge from
https://origsvn.digium.com/svn/asterisk-addons/branches/1.4

(closes issue ASTERISK-10726)
........
r485 | qwell | 2007-11-14 17:03:37 -0600 (Wed, 14 Nov 2007) | 5 lines

.EXPORT_ALL_VARIABLES + menuselect == bad.
We really don't want to pass things like NCURSES_INCLUDE down to menuselect...

Issue 11205.

........

------------------------------------------------------------------------

By: Ovidiu Sas (ovi) 2007-12-07 23:09:04.000-0600

The issue here is that none of the initial params of the main `configure' were passed down for asterisk-ooh323c `configure' (see http://bugs.digium.com/file_download.php?file_id=16415&type=bug).

The configure is not able to detect the cross compile environment.

By: Jason Parker (jparker) 2008-02-07 15:01:59.000-0600

This should now be fixed in asterisk-addons trunk as of revision 524.  It required a very large amount of restructuring of the build system - because of this, I don't feel that it is appropriate for 1.4.