On 7/16/2017 1:16 PM, Denis Excoffier wrote:
Hello,

I have a Cygwin installation under Windows 7 (32 bits).

After 'rebase-trigger full' and 'Setup', autorebase seems to finish okay, but 
the /etc/rebase.db.i386 remains absent after that.
Not a real problem after all (since rebase was functioning well until some 
recent date and all is already rebased), but some
third party builds (like e.g. perl) insist on the presence of the 
/etc/rebase.db.i386 database.

Indeed, rebase segfaults in rebase.c and nothing is rebased. This occurs (see 
rebase-4.4.2) immediately after "Skip trailing
entries as long as there is no hole." because at some point, all 
img_info_list[end].base are equal to 0, the while() is getting
always true, and the variable 'end' is decremented by 1 at every iteration, 
until it reaches -1 where the segfault occurs.

I must confess that my system contains all the available packages (except for 
debuginfo ones), and the rebase_all contains 9275 lines.
Later, i uninstalled a few packages (a few categories in fact), and my 
rebase_all contained 8337 lines, rebase worked well and
/etc/rebase.db.i386 was present.

Question: how is 'rebase' supposed to notify the user that the list of files is 
too large (i.e. that the overall amount of DLL sizes
is more than 0x070000000)? In source code, i found no specific message to 
indicate this.

I would find notification of such overflow useful as well.

And once I have over-committed by installing too many packages,
I have found it rather difficult to figure out what to remove
that will actually help, given the general snarl of dependencies
of one thing on another ...  Maybe there is room for another tool
that works over the database and helps determine what can be done.

Regards - Eliot Moss

--
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

Reply via email to