This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Invalid relocation for xpdf

Tobias Zawada writes:
> Hello all,
> first of all thanks for cygwin! It is very useful to me.
> I get the runtime errors of the following kind for some time now:
> Cygwin runtime failure: /usr/bin/xpdf.exe: Invalid relocation.  Offset
> 0x2f7fdbad9 at address 0x100494523 doesn't fit into 32 bits
> Killing all cygwin processes and running rebaseall from dash does not 
> I've installed the source package for xpdf and compiled it. This 
version runs
> fine (from /usr/local/bin/xpdf). So I have a workaround and it is not 
a blocker
> for me. Thank you for looking at the problem though.

I've reproduced this.  The source code at compiles into 
a reference of XtInherit(), in the cygXt-6.dll.  Unfortunately the 
relocation needed to reach that library up where rebase puts it is too 
big to fit in the space the compiler/linker left for it.  You can solve 
this issue by rebasing cygXt-6.dll.  Here's what I did for example:

/usr/bin# rebase -i cygXt*
/usr/bin/cygXt-6.dll              base 0x0003ffa70000 size 0x00058000

/usr/bin# rebase --base=0x0ffa70000 cygXt-6.dll

/usr/bin# rebase -i cygXt*
/usr/bin/cygXt-6.dll              base 0x0000ffa70000 size 0x00058000

xpdf seems to run fine after that.  If you solve your issue this way, 
you'll have to repeat it after every run of setup*.exe because it'll 
rebase the library up out of range again automatically :-( .

I've run into the same issue with libgmp used by some other app.  I 
wonder why our toolchain generates relocation entries that cannot be 
resolved properly at runtime given the huge address space we use on 64-
bit Windows.


Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]