From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from fencepost.gnu.org (fencepost.gnu.org [IPv6:2001:470:142:3::e]) by sourceware.org (Postfix) with ESMTPS id 6DE813898383 for ; Sun, 20 Nov 2022 15:58:22 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 6DE813898383 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gnu.org Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gnu.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=MIME-version:References:Subject:In-Reply-To:To:From: Date; bh=bv53yB5nzkYLesEK0nMVFJB0wA2pj+ZsdxTWfkv1Ffk=; b=BXXmE2JfMU61RLYHqyWO 50vYuN+U+HgcC4QxGWdnEn/0Vdlb4VcT2D6TNn55LN0mPsz3jqxpww/NS4g9rMurZq1x0/seySfK7 wOlItx9Kb69NJ7Fr4MOZRUi2Q7d2BkJ6JqwXlxUvts0hamhMFV7y1rbwg1F32HjYe+MDgB4bF+pzC qIUXs1pg3vUoKd0bFNQvmAyAZWCJSJQwh4IBOuWETSPqoKTKAuRrVb1/5GCgUqxdHHflROh6c7EAY +apQb+Vyylf/7Y17V1/hZgxS1itebxMgTvZ634gbmoFtUF2pJkffWeLFwXi4IxArpx/QD70Yycjwl gPSrtf19sONdKw==; Received: from [87.69.77.57] (helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1owmi5-0004ag-OJ; Sun, 20 Nov 2022 10:58:22 -0500 Date: Sun, 20 Nov 2022 17:58:31 +0200 Message-Id: <834jut62jc.fsf@gnu.org> From: Eli Zaretskii To: Pali =?utf-8?Q?Roh=C3=A1r?= Cc: gcc@gcc.gnu.org, mingw-w64-public@lists.sourceforge.net In-Reply-To: <20221120154408.us5szwo7eaiwz2ba@pali> (message from Pali =?utf-8?Q?Roh=C3=A1r?= on Sun, 20 Nov 2022 16:44:08 +0100) Subject: Re: gcc parameter -mcrtdll= for choosing Windows C RunTime DLL library References: <20221120125348.a6xh7kxmvrimse72@pali> <83cz9h65wc.fsf@gnu.org> <20221120150411.yimchs4ic3xtvny3@pali> <837czp6464.fsf@gnu.org> <20221120154408.us5szwo7eaiwz2ba@pali> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=2.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_BARRACUDACENTRAL,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: > Date: Sun, 20 Nov 2022 16:44:08 +0100 > From: Pali Rohár > Cc: gcc@gcc.gnu.org, mingw-w64-public@lists.sourceforge.net > > > Installing a redistributable is a nuisance, and dependence on non-system > > libraries might make the program non-free. > > On new windows versions they may be preinstalled (depends on newness of > windows version). I'm talking about older ones. It is customary nowadays to build on Windows 11 and then run on Windows 8. > And if your application uses features unavailable in > older (or default) crt versions then this make application code > simplifier. Also redistributable packages are in most cases installed by > Windows update mechanism, which could be marked as system library. But > well, this is more license discussion than development discussion... I mentioned that because people might inadvertently build GPL'ed GNU software using this option, and violate the GPL without knowing it. This is relevant to those who read this list and port GNU software to MS-Windows. > > > Note that with this option, you can also choose older version than the > > > default one (WinXP msvcrt.dll). So e.g. you can choose msvcrt20.dll or > > > crtdll.dll for older Windows version. > > > > Using the OS default MSVCRT already gets me that, at zero cost. > > Here "OS default MSVCRT" means Windows XP MSVCRT.DLL. > > On older windows versions there is no pre-installed MSVCRT.DLL. There > is MSVCRT20.DLL or CRTDLL.DLL (based on oldness of windows version). So > it is not at zero cost, you have yo either do that nuisance and install > MSVCRT.DLL as you write above or switch to older CRT version which is in > OS preinstalled. I never saw any problems with programs linked against MSVCRT.DLL, on all versions of Windows from XP up to Windows 10. None.