Welcome to the Linux Foundation Forum!

LDS Script Error: insufficient program headers

Hi,

I am building a project using the GNU / Cygwin tool chain, cross compiled for the MIPS-ELF.

My problem involves the linker, ld (really mips-elf-ld). I receive this error

message, when I build.

mips-elf-ld:

project.out: Not enough room for program headers, try linking with -N

mips-elf-ld: final link failed: Bad value

dmake.exe: Error code 129, while making '\project.out'

I modified a sample that I was given, the sample does not for whatever reason have to deal with

insufficent headers, so the LDS mapping file does not have anything

there that I can use. I am trying on my own to solve the problem, but

so far no luck.

Further Information: Adding in the line ". = SIZEOF_HEADERS;" as the

first line in the SECTIONS block, changes the error message to saying

that the linker allocated 3 headers but needs space for 16. What do I

have to add to the LDS file to solve the problem?

I tried to add a PHDRS block, as the unversal example does

not give enough information to tailor it to my needs. The internet example is:

PHDRS

{

headers PT_PHDR PHDRS ;

interp PT_INTERP ;

text PT_LOAD FILEHDR PHDRS ;

data PT_LOAD ;

dynamic PT_DYNAMIC ;

}

Adding this block makes the problem worse or at the least does not

solve the problem. I tried adding in various things to this block,

after adding it, but got nowhere.

Is there some way to just state that number, since I now know that I

need 16 headers. I did research and know that one header is 32-bytes.

Thanks in advance,

Sarah

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training