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> <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: Subject: Re: Binutils objcopy bug (was Re: rebase segfault) From: Reini Urban To: cygwin AT cygwin DOT com Content-Type: text/plain; charset=ISO-8859-1 X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , 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 : >>>> >>>> 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