[Freeswitch-users] Cross compiling freeswitch for raspberry pi

Dušan Dragić dragic.dusan at gmail.com
Wed Dec 4 02:51:44 MSK 2013


Autotools is definitely a pain when cross compiling.
I'm probably gonna build it in a chroot (well systemd-nspawn, but same
thing) for now using qemu-arm-static, as Jeff and Ken sugested.
That is how I did it last time when I compiled FS for rpi (few months
back), but it's slow and I wanted to try cross-compiling it (and I'm
not giving up on this idea just yet).

I'm gonna compare config.cache between cross compile and native to see
if there are any glaring differences.

Did anyone have a chance to look at that backtrace, any ideas whats going on?

Also I found this wiki page:
https://wiki.freeswitch.org/wiki/Raspberry_PI-specific_documentation
It references a script
(https://github.com/bmanojlovic/rpi-cross-compile/blob/master/debootstrap_raspbian_chroot)
which seems to create a "mixed" chroot where the compiler is running
on x86 while everything else is running emulated with qemu.
At least that is what I think it does (by looking at the script),
haven't used it yet.

On 3 December 2013 22:46, Ken Rice <krice at freeswitch.org> wrote:
> Even with SwitchPI I do not cross compile, never got it work properly that
> way, and tried various methods including distcc et al...
>
> the problem with cross compiling is autotools is a pain to get working
> correctly in a cross compile environment you have to tell it most of the
> answers instead of letting it guess them...
>
> I would just compile it under raspbian on a RPi or i.MX5 (this is what the
> Raspbian team was using last time I looked for building everything) and then
> go from there... yes it takes a while, but even so last time i tried to
> cross compile it, or qemu it, those were not that much faster then native
>
>
> On Tue, Dec 3, 2013 at 3:29 PM, Anthony Minessale
> <anthony.minessale at gmail.com> wrote:
>>
>> Or look at http://www.switchpi.org/
>>
>>
>>
>> On Tue, Dec 3, 2013 at 3:15 PM, Jeff Leung <jleung at v10networks.ca> wrote:
>>>
>>> I'd suggest that you look into qemu as a cpu emulator.  You can use that
>>> to chroot into an armv6 user land and compile freeswitch natively from
>>> there.
>>>
>>>
>>>
>>> -------- Original message --------
>>> From: Dušan Dragić <dragic.dusan at gmail.com>
>>> Date: 12-03-2013 12:24 PM (GMT-08:00)
>>> To: FreeSWITCH Users Help <freeswitch-users at lists.freeswitch.org>
>>> Subject: [Freeswitch-users] Cross compiling freeswitch for raspberry pi
>>>
>>>
>>> Hi all,
>>>
>>> This weekend I tried my luck at cross-compiling freeswitch for
>>> raspberry pi (armv6). After a few bumps along the way (opened jiras
>>> for those) I managed to build it, but  when running freeswitch on the
>>> target system it segfaults during startup.
>>>
>>> I'm building on Fedora 19 x86_64 using the prebuilt toolchain from
>>> https://github.com/raspberrypi/tools (I can build a toolchain from
>>> source if anyone thinks it might be better). Raspbian debootstrap
>>> created base system is used as sysroot (also tried loop mounted
>>> raspbian image as sysroot).
>>>
>>> My simple build environment setup script:
>>> http://pastebin.freeswitch.org/21698
>>>
>>> The build process (source the script, configure and compile):
>>> ./bootstrap.sh
>>> . ~/fs-cc-env.sh
>>> ./configure --build=x86_64-redhat-linux --host=arm-linux-gnueabihf
>>> --with-sysroot=$SYSROOT
>>> make
>>>
>>> make install didn't work (I guess it's kinda expected, didn't really
>>> look into it) so I just copied the binaries, libraries and modules to
>>> rpi.
>>> Also mod_spidermonkey and mod_xml_rpc were disabled. Didn't even try
>>> to build mod_spidermonkey and mod_xml_rpc failed to build (well it
>>> builds but makefile tries to run
>>> libs/xmlrpc-c/lib/expat/gennmtab/gennmtab which was compiled for arm
>>> and should have been x86, probably should create jira for this as
>>> well).
>>>
>>> Console log when FS is started:
>>> http://pastebin.freeswitch.org/21699
>>>
>>> and backtrace:
>>> http://pastebin.freeswitch.org/21700
>>>
>>> Is my build environment sane? What am I missing, any hints? Has anyone
>>> successfully cross-compiled FS for raspberry pi?
>>>
>>> Thanks,
>>> --
>>> Dušan Dragić
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>>
>>> 
>>> 
>>>
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>>
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
>>>
>>
>>
>>
>> --
>> Anthony Minessale II
>>
>> FreeSWITCH http://www.freeswitch.org/
>> ClueCon http://www.cluecon.com/
>> Twitter: http://twitter.com/FreeSWITCH_wire
>>
>> AIM: anthm
>> MSN:anthony_minessale at hotmail.com
>> GTALK/JABBER/PAYPAL:anthony.minessale at gmail.com
>> IRC: irc.freenode.net #freeswitch
>>
>> FreeSWITCH Developer Conference
>> sip:888 at conference.freeswitch.org
>> googletalk:conf+888 at conference.freeswitch.org
>> pstn:+19193869900
>>
>> _________________________________________________________________________
>> Professional FreeSWITCH Consulting Services:
>> consulting at freeswitch.org
>> http://www.freeswitchsolutions.com
>>
>> 
>> 
>>
>> Official FreeSWITCH Sites
>> http://www.freeswitch.org
>> http://wiki.freeswitch.org
>> http://www.cluecon.com
>>
>> FreeSWITCH-users mailing list
>> FreeSWITCH-users at lists.freeswitch.org
>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>> http://www.freeswitch.org
>>
>
>
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
>
> 
> 
>
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
>
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org
>



-- 
Dušan Dragić



Join us at ClueCon 2013 Aug 6-8, 2013
More information about the FreeSWITCH-users mailing list