[asterisk-dev] Dahdi compilation error on ARM

Rafael Seste rseste at gmail.com
Wed Sep 9 15:42:55 CDT 2009


On Wed, Sep 9, 2009 at 5:23 PM, Pavel Troller<patrol at sinus.cz> wrote:
>> On Wed, Sep 09, 2009 at 07:11:07PM +0200, Pavel Troller wrote:
>>
>> >   Yes, we know. It's simple. OOM means "Out Of Memory". Your machine runs out
>> > of memory during compilation (you don't have swap, it's also visible from the
>> > dump), so your system is simply too small to compile this. Add either RAM or
>> > a swap device.
>> >   With regards, Pavel Troller
>>
>> The SheevaPlug has 512MB RAM. It should be good enough.
>>
>> An extra swap can indeed help, even if it is on an external USB storage
>> partition.
I did that....I added a 2GB USB driver as a swap. It took more time
but the same error occurred.
After 20 min I got out of memory (512MB + 2GB)
The strange point is that I already compiled a complete version of
asterisk and got not errors.

I got the same error trying to install the sangoma U100 driver

I will post this problem o sheevaplug forum to see if anybody had it!!

>>
>> I still suspect a gcc bug. What software platform is it? What gcc?
>>
> Hi!
>  Yes, it can be a gcc bug, but if it is, it causes that gcc consumes so much
> memory, that it gets killed by the oom-killer. The killer is here because of a
> kernel feature called "overcommit". It, simply speaking, allows an app to
> allocate more virtual memory than is physically available, in the hope that the
> app will not use it for real. And when the app really wants to, the kernel
> cannot say "sorry, we don't have so much memory, I was lying before", and
> because it cannot really get any physical memory to satisfy the app (no swap),
> it should kill the app, because it cannot continue to run.
>  dahdi-base.c is a relatively big file, it has about 230kB here. I've tried to
> check the amount of memory needed to compile it and for my platform (x86,
> gcc-4.3.3) it took about 50MB of RAM. So, it would compile on a 512M system
> without problems (in the case that no more memory-hungry application is running
> concurrently). It seems that the particular ARM version of gcc is either really
> buggy, or it is abnormally memory-hungry. Are you sure, that you don't have
> a parallel make in progress (used on a multi-CPU/multicore systems, using make
> -j <number of concurrent processes>), it would easily eat all your RAM.
>

I didn't check if the makefile run with -j
I just use a simple make....
The gcc version that I'm using is from ubuntu repo
Installed: 4:4.3.3-1ubuntu1
http://ports.ubuntu.com jaunty/main

>  With regards, Pavel Troller
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> AstriCon 2009 - October 13 - 15 Phoenix, Arizona
> Register Now: http://www.astricon.net
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev
>



-- 
Rafael S. Seste



More information about the asterisk-dev mailing list