| Deutsch English Français Italiano |
|
<87o724m288.fsf@nosuchdomain.example.com> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail
From: Keith Thompson <Keith.S.Thompson+u@gmail.com>
Newsgroups: comp.lang.c
Subject: Re: else ladders practice
Date: Sun, 24 Nov 2024 19:17:11 -0800
Organization: None to speak of
Lines: 56
Message-ID: <87o724m288.fsf@nosuchdomain.example.com>
References: <3deb64c5b0ee344acd9fbaea1002baf7302c1e8f@i2pn2.org>
<vhgr1v$2ovnd$1@paganini.bofh.team> <vhic66$1thk0$1@dont-email.me>
<vhins8$1vuvp$1@dont-email.me> <vhj7nc$2svjh$1@paganini.bofh.team>
<vhje8l$2412p$1@dont-email.me> <WGl%O.42744$LlWc.33050@fx42.iad>
<vhkr9e$4bje$1@dont-email.me> <vhptmn$3mlgf$1@paganini.bofh.team>
<vhq6b4$17hkq$1@dont-email.me> <vhqm3l$3ntp7$1@paganini.bofh.team>
<vhso61$1o2of$1@dont-email.me> <vhtrns$71ic$1@paganini.bofh.team>
<vhtvvc$1ukc7$1@dont-email.me> <vhuc2j$7s5i$1@paganini.bofh.team>
<vhv5m4$27sco$1@dont-email.me>
<87wmgsmme0.fsf@nosuchdomain.example.com>
<vi03n5$2c7jl$1@dont-email.me>
<87sergmhkc.fsf@nosuchdomain.example.com>
<vi0enr$2el9e$1@dont-email.me>
MIME-Version: 1.0
Content-Type: text/plain
Injection-Date: Mon, 25 Nov 2024 04:17:29 +0100 (CET)
Injection-Info: dont-email.me; posting-host="b40b20f4d5912db9f2a914577ca2f33c";
logging-data="2752829"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/ej91YhOGKOMTinPgjup/B"
User-Agent: Gnus/5.13 (Gnus v5.13)
Cancel-Lock: sha1:BaaCRBgw1xrnjj0OCMsumDUKIJQ=
sha1:tW25SYc8ZCSxvvIn2YfrmoC8Ig8=
Bytes: 3921
Bart <bc@freeuk.com> writes:
> On 24/11/2024 21:45, Keith Thompson wrote:
>> Bart <bc@freeuk.com> writes:
[...]
>>> A more useful installation would of course need more standard headers,
>>> an assembler, linker, and whatever .a files are needed to provide the
>>> standard library.
>> Sure, those are all part of a C implementation, though they're not
>> part of gcc.
>
> This seems to be a thing with Linux, where a big chunk of a C
> implementation is provided by the OS.
I'm not sure what you mean by "provided by the OS". Linux-based
systems tend to be very modular, with almost everything provided by
some installable binary package. Some of those packages have to
be provided by default, for example any dynamic libraries relied
on by most executables. Files that are needed for development,
such as header files, compilers, and associated tools such as
assemblers and linkers, may be optional.
> That is, standard headers, libraries, possibly even 'as' and 'ld'
> utilities.
On my system (Ubuntu), the as and ld commands are provided by the
binutils package ("binutils-x86-64-linux-gnu"). Some distributions
may install these by default. Others do not, but they're easy
to install.
> On Windows, C compilers tend to be self-contained (except
> for Clang which appears to be parasitical: it used to piggy-back onto
> gcc, then it switched to MSVC).
I don't know what you mean by "piggy-back onto gcc".
> I'm not sure what the utility to compile C programs is called, if it
> is not 'gcc'. But this is a C group, I would expect people to know it
> is a C compiler, or the front end of one.
>
> However I use 'gcc' in other forums and everyone knows what I mean.
>
> What do /you/ call the C compiler that is invoked by gcc?
I call it gcc.
"gcc" is the name for several things. It's the "GNU Compiler
Collection". It's the command invoked as the driver for any of
several compilers that are part of the GNU Compiler Collection.
It can refer specifically to the C compiler. It's mildly confusing
for historical reasons, but most people don't have much of a
problem with it, and don't pretend that it's more confusing than
it really is.
--
Keith Thompson (The_Other_Keith) Keith.S.Thompson+u@gmail.com
void Void(void) { Void(); } /* The recursive call of the void */