Conversation

[DCC Fehler] E2161 Error: RLINK32: Out of memory!

(overview of excerpts from articles in conversation)

Newsgroup: embarcadero.public.delphi.ide

# Lines
wrote on 12-Nov-2009:

Today I tried to compile a delphi project with a huge resource file and received the following error message:
[DCC Fehler] E2161 Error: RLINK32: Out of memory!
The resource file was created with brcc32 without errors. It contains 360 resources with a total of 475 MB of memory.
Additional Informations:
IDE = Embarcadero__ Delphi__ 2010 Version 14.0.3513.24210
42
  
Mike Williams (TeamB) replied on 12-Nov-2009:

Uwe Kuhring wrote:
  (snip)

Purely out of curiosity how long does an exe that size take to load?
  I've never seen an exe that big.
  --
  -Mike (TeamB)
10
    
Uwe Kuhring replied on 12-Nov-2009:

(snip)

Depends. Loading the file from a state of the art SSD drive takes about 3 seconds. Loading from standard usb 2.0 drives will take more than a minute.
    Uwe
    
    
    
20
  
Wayne Niddery replied on 12-Nov-2009:

"Uwe Kuhring" wrote in message news:✉forums.codegear.com...
  (snip)

One solution is to put the resources in one or more DLLs instead of the main
  application. The main app can easily load resources (images, etc) from the
  "resource-only" DLLs.
  --
23
  
Jan Derk replied on 12-Nov-2009:

Uwe Kuhring wrote:
  (snip)



Looks like Embarcadero needs 64bit Delphi to create a linker that can actually
  use those 12GB on your system ;)
  Jan Derk
  
14
    
Uwe Kuhring replied on 12-Nov-2009:

(snip)

Well, I agree, this should work. But putting the resources in multiple DLLs would have downsides:
    - You have to divide the resoures into several groups without knowing the group limitations. So you either risk out of memory errors or create more DLLs than necessary.
    - If single resources have to be exchanged or updated, things getting more complicated, cause you have to locate the appropriate resource DLL. You need some extra management here
    - The advantage of resource files is partially lost, cause with this method you will have several external files. Probably that's exactly the thing you don't want to have.
    Alternatively it is possible to create a single archive file containing all resources and read the required data from this archive at runtime. So no extra management for different DLLs would be needed. But again you would have at least two different files. Is there any way to put all the stuff into a single exe? In the past it was possible to append self defined data structures to an existing delphi exe. You had to open the exe at runtime and read data from the original end of the program. Actually this c
75
  
Uwe Schuster replied on 15-Nov-2009:

Uwe Kuhring wrote:
  (snip)

I am not aware of a limitation. I guess there is a problem with a least
  one of your resources. You could try to find them and if you're
  successful then you should create a QC report for the problem.
  BTW, Delphi/RAD Studio 2010 Update 2 will hopefully released soon.
48
    
Uwe Kuhring replied on 24-Nov-2009:

(snip)

I don't think it's a problem with one of the resources, cause when I split them into two groups of resources, each group compiles well. So at least the problem is not independent from the sequence of the resource files which is no property of any resource file. Thank you for the link. I will try again with Update 2.
    I will flag the question as answered now, cause we found another way to integrate the resources. Thank you all for your answers.
    Uwe
    
    
38
FYI: Phrase searches are enclosed in either single or double quotes
 
 
Originally created by
Tamarack Associates
Mon, 13 May 2024 15:42:26 UTC
Copyright © 2009-2024
HREF Tools Corp.