discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Build problems and some possible solutions


From: Josh Blum
Subject: Re: [Discuss-gnuradio] Build problems and some possible solutions
Date: Sun, 08 Jan 2012 12:07:42 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:8.0) Gecko/20111124 Thunderbird/8.0


On 01/08/2012 10:39 AM, Volker Schroer wrote:
> Hi !
> 
> I'm using gentoo linux with multilib support and did a fresh git clone
> from the repository.
> 
> running ./bootstrap results in
> 
> 
> 
> configure.ac:39: installing `./install-sh'
> configure.ac:39: installing `./missing'
> gnuradio-core/src/guile/Makefile.am: installing `./depcomp'
> gnuradio-core/src/lib/swig/Makefile.am:77: installing `./py-compile'
> grc/freedesktop/Makefile.am:35: `pkglibexecdir' is not a legitimate
> directory for `SCRIPTS'
> configure.ac:22: installing `./install-sh'
> configure.ac:22: installing `./missing'
> lib/Makefile.am: installing `./depcomp'
> 
> As I have installed
> automake (GNU automake) 1.11.2
> 
> most of the Makefile.in 's  are not written.
> 
> As I don't  know the legitimate directory for SCRIPTS I commented out
> line 35 in
> 
> grc/freedesktop/Mikefile.am
> 
> that is
> 
> dist_pkglibexec_SCRIPTS = grc_setup_freedesktop
> 
> After that bootstrap generates all files.
> 
> 
> Then I run ./configure --prefix=/usr/local/gnuradio
> 
> The result was
> 
> The following architectures will be built:
>      generic 32 64 3dnow abm popcount mmx sse sse2 orc sse3 ssse3 sse4_a
> sse4_1 sse4_2 avx
> 
> 
> *********************************************************************
> The following GNU Radio components have been successfully configured:
> 
> config
> gruel
> volk
> gnuradio-core
> gr-digital
> gr-audio
> gr-vocoder
> gr-atsc
> gr-noaa
> gr-pager
> gr-trellis
> gr-video-sdl
> gr-wxgui
> gr-qtgui
> gr-utils
> gnuradio-examples
> grc
> docs
> 
> You my now run the make command to build these components.
> 
> *********************************************************************
> The following components were skipped either because you asked not
> to build them or they didn't pass configuration checks:
> 
> gr-comedi
> gr-uhd
> gr-shd
> 
> These components will not be built.
> 
> Running make leads to the problem that volk cannot be build.
> 
> The error message is
> 
>  
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_ssse3_32.a(libvolk_ssse3_32_la-volk_machine_ssse3_32.o)' is
> incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_sse2_32.a(libvolk_sse2_32_la-volk_machine_sse2_32.o)'
> is incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_sse4_1_32.a(libvolk_sse4_1_32_la-volk_machine_sse4_1_32.o)'
> is incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_sse4_a_32.a(libvolk_sse4_a_32_la-volk_machine_sse4_a_32.o)'
> is incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_sse4_2_32.a(libvolk_sse4_2_32_la-volk_machine_sse4_2_32.o)'
> is incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_avx_32.a(libvolk_avx_32_la-volk_machine_avx_32.o)' is
> incompatible with i386:x86-64 output
> /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.3/../../../../x86_64-pc-linux-gnu/bin/ld:
> i386 architecture of input file
> `./.libs/libvolk_sse3_32.a(libvolk_sse3_32_la-volk_machine_sse3_32.o)'
> is incompatible with i386:x86-64 output
> 
> I found this problem in the 3.5.1 tarball, too.
> 
> Maybe this is due to the definitions in  archs.xml
> that says
> 
> <arch name="32" type="x86" no_test="true" >
> <flag>m32</flag>
> <overrule>MD_SUBCPU</overrule>
> <overrule_val>x86_64</overrule_val>
> </arch>
> 
> After removing the line
> <overrule_val>x86_64</overrule_val>
> 
> and after again bootraping and configuring everything works well. But I
> don't know if there are other side- effects on other systems.
> 
> 
> But
> make installmake[5]: Entering directory
> `/home/schroer/gnuradiocomponents/gnuradio/gr-vocoder/python'
> make[6]: Entering directory
> `/home/schroer/gnuradiocomponents/gnuradio/gr-vocoder/python'
> make[6]: Für das Ziel »install-exec-am« ist nichts zu tun.
> test -z
> "/usr/local/gnuradio/lib64/python2.7/site-packages/gnuradio/vocoder" ||
> /bin/mkdir -p
> "/usr/local/gnuradio/lib64/python2.7/site-packages/gnuradio/vocoder"
>  /usr/bin/install -c -m 644 __init__.py cvsd.py
> '/usr/local/gnuradio/lib64/python2.7/site-packages/gnuradio/vocoder'
> /bin/sh: Zeile 15: --destdir: Kommando nicht gefunden.
> make[6]: *** [install-vocoderPYTHON] Fehler 127
> 
> 
> Is this one of the possible side effects ? I suppose not, but at the
> moment I have no solution.
> 
> Any hint would be welcome.
> 


There is a multi-lib problem with volk + autotools build. The problem
is, if the compiler check of -m32 and -m64 both pass, both flags get
used, and the result is broken libraries.

To the best of my knowledge, the issue is fixed for the cmake build on
the master branch. But I don't think any releases to date have cmake.

To build with autotools, one possible work-around would be to remove the
"<arch name="32"...>" entry from the archs.xml.

-Josh



reply via email to

[Prev in Thread] Current Thread [Next in Thread]