X-Recipient: archive-cygwin@delorie.com
DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type:content-transfer-encoding;
	 q=dns; s=default; b=IYLvW2PAfV5dQpeFCtzf7O+TF6hPRe5HAmP38FuSft6
	Thxer5l9xd2uxSz6YeFw3ElLQuBlfA8pzT/4LGo72skDADCpjKhS989gsBpGfrOH
	g9weHyeP5oxUmU4cSLynyq5U/weTRmZ4l1KQriStqxz6L4+HAxzl3N+HHCOFJ3Yw
	=
DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id
	:list-unsubscribe:list-subscribe:list-archive:list-post
	:list-help:sender:message-id:date:from:mime-version:to:subject
	:references:in-reply-to:content-type:content-transfer-encoding;
	 s=default; bh=+JVw0kt23AToiVej0KJlZ23Ziyw=; b=bnIMkO0hBbgRL8pDz
	Ga+txg09xjnzndTYpByHaFZaXzmJNONNbUBReofg8/RVdgASuyaclbylM9KhkErG
	2QCqqxG5Dev8GXbD5WKI2eKSHzSffobhuv/epGBO9fYQMETwpu3bsjnJIQOqTxoG
	4yFwzTk0p7aout1sJQlx9qL9gU=
Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
Authentication-Results: sourceware.org; auth=none
X-Virus-Found: No
X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,FREEMAIL_REPLY,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=no version=3.3.2
X-HELO: mail-wi0-f174.google.com
X-Received: by 10.194.92.244 with SMTP id cp20mr1307802wjb.109.1404674345764;        Sun, 06 Jul 2014 12:19:05 -0700 (PDT)
Message-ID: <53B9A123.6030703@gmail.com>
Date: Sun, 06 Jul 2014 21:18:59 +0200
From: Marco Atzeri <marco.atzeri@gmail.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
To: cygwin@cygwin.com
Subject: Re: rebaseall breaks some packages(?)
References: <b4mr42oujhi.fsf@jpl.org> <53B91501.18796CB7@boland.nl> <167898398.20140706223456@yandex.ru>
In-Reply-To: <167898398.20140706223456@yandex.ru>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
X-IsSubscribed: yes

On 06/07/2014 20:34, Andrey Repin wrote:
> Greetings, D. Boland!
>
>
>> My students (100+) repeatedly got these errors,

than eventually they should ask help here..

>> What's the deal with this "rebasing" anyway? Every compiler has a built-in
>> mechanism to create unique offsets. Windows itself also rebases binaries at
>> load-time.
>
> Windows and POSIX models require different load techniques.
> Cygwin provide POSIX compatibility layer.

On Posix the fork is a fundamental function.
Fork requires that all dll's on children process
are reloaded at the same address used in the father process.
Windows make this very difficult and rebase align
dll loading spaces in NOT overlapping ones making collision
and fork failures more unlikely.

>> On the other hand, why not rebase at compile-time?

on 32 bit, we will not have enough space anyway.
On both platform  we should syncronize all the package maintainers at a 
certain point for all distributed shared library, titanic job and 
useless as the first upgrade of any shared library package will require
likely a different address space.

>> Rebasing should not be the responsibility of the user, but of the developer.
It is currently done by setup. But sometime things go wrong
and a you need a fresh restart.
Think of it like car tires, usually you don't touch them
but if the tire breaks you need to change it.

> Cygwin users are developers. That's the intended audience, anyway.

That is clearly a wrong assumptions.
If our user were all developers we will be very few.
I expect very few users of my packages to be software developers

> --
> WBR,
> Andrey Repin (anrdaemon@yandex.ru) 06.07.2014, <22:18>

Regards
Marco

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

