delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2013/01/26/01:32:56

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-5.3 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,KHOP_RCVD_TRUST,KHOP_THREADED,RCVD_IN_DNSWL_LOW,RCVD_IN_HOSTKARMA_YE,TW_BJ,TW_JC
X-Spam-Check-By: sourceware.org
MIME-Version: 1.0
X-Received: by 10.68.227.73 with SMTP id ry9mr19996558pbc.73.1359181934250; Fri, 25 Jan 2013 22:32:14 -0800 (PST)
In-Reply-To: <5102A09A.7040506@gmail.com>
References: <50F5D246 DOT 6010902 AT gmail DOT com> <50F653AB DOT 80102 AT gmail DOT com> <20130116123509 DOT GA16991 AT calimero DOT vinschen DOT de> <50F6AD63 DOT 8080106 AT gmail DOT com> <20130124030145 DOT 22fa143f AT YAAKOV04> <20130124092746 DOT GC8311 AT calimero DOT vinschen DOT de> <510103AF DOT 3080305 AT gmail DOT com> <20130124100037 DOT GB24121 AT calimero DOT vinschen DOT de> <51027B9E DOT 3080104 AT gmail DOT com> <CAEwic4b6jQkh+5FT+R1um12U09nqHoNcR1Vj7kZpsuvQb7pMpg AT mail DOT gmail DOT com> <20130125150006 DOT GC26731 AT calimero DOT vinschen DOT de> <5102A09A DOT 7040506 AT gmail DOT com>
Date: Fri, 25 Jan 2013 23:32:14 -0700
Message-ID: <CAHiT=DE5doJnH43DRmbkn7jhN=+cjPo8Cftfsw6fy0+GkZeSzA@mail.gmail.com>
Subject: Re: Binutils objcopy bug (was Re: rebase segfault)
From: Reini Urban <rurban AT x-ray DOT at>
To: cygwin AT cygwin DOT com
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On Fri, Jan 25, 2013 at 8:11 AM, marco atzeri wrote:
> On 1/25/2013 4:00 PM, Corinna Vinschen wrote:
>>
>> On Jan 25 14:19, Kai Tietz wrote:
>>>
>>> 2013/1/25 marco atzeri <marco DOT atzeri AT gmail DOT com>:
>>>>
>>>> On 1/24/2013 11:00 AM, Corinna Vinschen wrote:
>>>>
>>>>> I already explained why:  The SEGV happens during relocation.
>>>>> The file header has been changed already.  If you call the
>>>>> same rebase, it will try to rebase the file to the same new
>>>>> address.  If current file base address == requested file base
>>>>> address, rebase will return without performing any action.
>>>>>
>>>>
>>>> Hi Corinna,
>>>> I would like your opinion on this .reloc strange issue of
>>>> dict_snowball, as I have the impression I found the root cause.
>>>> [...]
>>>> Questions:
>>>> - Is it anomalous to have a .reloc portion addressing the
>>>> debug_* sections (so the original build file is broken)
>>>> - or should strip recognize and remove reloc portion not
>>>> anymore relevant ?
>>>>
>>>> rebase is choking on this portion of the .reloc table
>>>>
>>>>>
>>>>> Corinna
>>>>>
>>>>
>>>> Thansk in advance
>>>> Marco
>>>
>>>
>>> Well, here are my 2-cents about that issue.  In general it is a flaw
>>> to have an base-relocation in debug-section, as this means such a
>>> section can't be moved into a separate debug-file anymore, due that
>>> has no relocation-information.
>>> Nevertheless it would be good, if objcopy gets adjusted to eliminated
>>> base-relocations of stripped sections.
>>
>>
>> But the tool generating these debug relocs is gas, isn't it?  Why
>> on earth does it do that?!?
>>
>> I still think rebase is not to blame here.  It has to assume that
>> the relocation info is correct, doesn't it?
>
>
> rebase is not to blame. I agree ;-)
> Someone else is incorrectly managing the reloc table,
> and also objcopy seems innocent ...
>
> Postgresql dll's are built in this way:

My strong guess is dllwrap.
No other packages uses the ancient dllwrap anymore.
I tried to get rid of it, but got stuck somewhere else.

> gcc -ggdb -O2 -pipe
> -fdebug-prefix-map=/pub/devel/postgresql/postgresql-9.2.2-1/build=/usr/src/debug/postgresql-9.2.2-1
> -fdebug-prefix-map=/pub/devel/postgresql/postgresql-9.2.2-1/src/postgresql-9.2.2=/usr/src/debug/postgresql-9.2.2-1
> -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement
> -Wendif-labels -Wmissing-format-attribute -Wformat-security
> -fno-strict-aliasing -fwrapv -fexcess-precision=standard
> -I/pub/devel/postgresql/postgresql-9.2.2-1/src/postgresql-9.2.2/src/include/snowball
> -I/pub/devel/postgresql/postgresql-9.2.2-1/src/postgresql-9.2.2/src/include/snowball/libstemmer
> -I../../../src/include
> -I/pub/devel/postgresql/postgresql-9.2.2-1/src/postgresql-9.2.2/src/include
> -c -o dict_snowball.o
> /pub/devel/postgresql/postgresql-9.2.2-1/src/postgresql-9.2.2/src/backend/snowball/dict_snowball.c
>
>
> dllwrap -o dict_snowball.dll --dllname dict_snowball.dll  --def
> libdict_snowballdll.def dict_snowball.o api.o utilities.o
> stem_ISO_8859_1_danish.o  stem_ISO_8859_1_dutch.o stem_ISO_8859_1_english.o
> stem_ISO_8859_1_finnish.o stem_ISO_8859_1_french.o  stem_ISO_8859_1_german.o
> stem_ISO_8859_1_hungarian.o  stem_ISO_8859_1_italian.o
> stem_ISO_8859_1_norwegian.o  stem_ISO_8859_1_porter.o
> stem_ISO_8859_1_portuguese.o  stem_ISO_8859_1_spanish.o
> stem_ISO_8859_1_swedish.o  stem_ISO_8859_2_romanian.o stem_KOI8_R_russian.o
> stem_UTF_8_danish.o  stem_UTF_8_dutch.o stem_UTF_8_english.o
> stem_UTF_8_finnish.o  stem_UTF_8_french.o stem_UTF_8_german.o
> stem_UTF_8_hungarian.o  stem_UTF_8_italian.o stem_UTF_8_norwegian.o
> stem_UTF_8_porter.o  stem_UTF_8_portuguese.o stem_UTF_8_romanian.o
> stem_UTF_8_russian.o  stem_UTF_8_spanish.o stem_UTF_8_swedish.o
> stem_UTF_8_turkish.o -L../../../src/port -Wl,--allow-multiple-definition
> -Wl,--enable-auto-import -L/usr/local/lib -Wl,--as-needed
> -L../../../src/backend -lpostgres

-- 
Reini Urban
http://cpanel.net/   http://www.perl-compiler.org/

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019