Ok I found it - .a archive files only have 6 digits for user Ids and 
lvm-ar.cpp isnt properly checking for overflow causing huge padding 
characters to be written.

I generated a pull request although I don't know why this hasn't been a 
problem for someone before now.

Thanks.

On Monday, January 5, 2015 4:15:42 PM UTC, Lee Morgan wrote:
>
> Actually I've found it happens with the freetype test case 'python 
> tests/runner.py test_freetype' as this invokes the linker.
>
> Again it quickly creates an 8gb file and writes empty strings. If left 
> running it will eventually start appending - I haven't left it long enough 
> to finish - although the appending makes me suspect it will just fill the 
> disk.
>
> I last tried with sdk-master-64bit but the incoming sdk has the same 
> behaviour. I've left settings.js alone assuming 'emsdk install xxx' will 
> overwrite it from the repo so it should be sensible defaults.
>
> The /tmp where the temporary library file is created is on a partition 
> with 12G free space.
>
> I'm stumped on what would cause it though.
>
>
> On Friday, December 19, 2014 8:06:48 PM UTC, Alon Zakai wrote:
>>
>> That sounds strange. The output library is bigger than the input files, 
>> and contains lots of empty space? Is it functional otherwise though?
>>
>> Do you have a testcase that shows the problem?
>>
>> - Alon
>>
>>
>> On Fri, Dec 19, 2014 at 3:41 AM, Lee Morgan <[email protected]> 
>> wrote:
>>>
>>> Hi
>>>
>>> llvm-ar appears to be writing a huge and empty file when trying to build 
>>> a library.
>>>
>>> strace reports thousands of 4k writes of blank strings and I can zip the 
>>> eventual output from 8Gb to 8Mb. 
>>>
>>> Does anyone know why this could be?
>>>
>>> Thanks!
>>>
>>> (on ubuntu 14.4)
>>> ./emsdk list
>>>
>>> The following individual tools exist:
>>>            clang-incoming-32bit     
>>>            clang-incoming-64bit     
>>>            clang-master-32bit       INSTALLED
>>>     (*)    clang-master-64bit       INSTALLED
>>>            emscripten-1.25.0         INSTALLED
>>>            emscripten-1.27.0        
>>>            emscripten-incoming      
>>>     (*)    emscripten-master         INSTALLED
>>>
>>>
>>> The following Emscripten SDK versions are available:
>>>          sdk-incoming-32bit       
>>>          sdk-incoming-64bit       
>>>          sdk-master-32bit         INSTALLED
>>>     *    sdk-master-64bit         INSTALLED
>>>
>>> Items marked with * are activated for the current user.
>>> Items marked with (*) are selected for use, but your current shell 
>>> environment is not configured to use them. Type "source ./emsdk_env.sh" to 
>>> set up your current shell to use them, or call "emsdk activate --global 
>>> <name_of_sdk>" to permanently activate them.
>>>
>>> To access the historical archived versions, type 'emsdk list --old'
>>>
>>>  -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "emscripten-discuss" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>

-- 
You received this message because you are subscribed to the Google Groups 
"emscripten-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to