Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.c++ > #67869
| Path | csiph.com!eternal-september.org!feeder.eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Tim Rentsch <tr.17687@z991.linuxsc.com> |
| Newsgroups | comp.lang.c++ |
| Subject | Re: Trying to be generic with the linker (ld instead of g++) |
| Date | Thu, 22 Aug 2019 04:47:29 -0700 |
| Organization | A noiseless patient Spider |
| Lines | 39 |
| Message-ID | <864l29ifqm.fsf@mailhub.linuxsc.com> (permalink) |
| References | <fd41e1db-a2dc-445e-8ecb-f176d3361e03@googlegroups.com> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset=us-ascii |
| Injection-Info | reader02.eternal-september.org; posting-host="59398aca864cd103291b848dd2e1e135"; logging-data="26432"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19WDoTPjOFiD6gyHh3Y3uez0RiVms/vUyw=" |
| User-Agent | Gnus/5.11 (Gnus v5.11) Emacs/22.4 (gnu/linux) |
| Cancel-Lock | sha1:g4/lXkRwgQLv0IzyOq2MLt8WfqQ= sha1:442YZEyA957J+YKCKZiKegMg+KQ= |
| Xref | csiph.com comp.lang.c++:67869 |
Show key headers only | View raw
Frederick Gotham <cauldwell.thomas@gmail.com> writes:
> I've been doing web searches all morning to try solve this so I'm
> here now as last resort.
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Typically if we want to combine C and C++ in one program, we can
> do three steps:
>
> gcc -c *.c
> g++ -c *.cpp
> g++ -o prog *.o
>
> So we use 'gcc' to compile the C code. Then we use 'g++' to compile
> the C++ code. Finally we use 'g++' a second time to link the object
> files together into one executable file.
>
> I'm trying to be as generic as possible here in the final step (i.e.
> linking), and so I want to replace the second use of 'g++' with 'ld',
> so something like:
>
> gcc -c *.c
> g++ -c *.o
> ld -o prog *.o
>
> [...]
Forgive me if this is a dumb question. Is there some reason
you have to use gcc in the first step? How about doing this
instead:
g++ -x c -c *.c
g++ -x c++ -c *.cpp
g++ -o prog *.o
Substituting clang for g++ should also work here. Disclaimer: I
haven't verified anything beyond confirming that both g++ and
clang accept the -x c and -x c++ options.
Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Trying to be generic with the linker (ld instead of g++) Frederick Gotham <cauldwell.thomas@gmail.com> - 2019-08-20 04:09 -0700
Re: Trying to be generic with the linker (ld instead of g++) Bart <bc@freeuk.com> - 2019-08-20 12:25 +0100
Re: Trying to be generic with the linker (ld instead of g++) Frederick Gotham <cauldwell.thomas@gmail.com> - 2019-08-20 04:34 -0700
Re: Trying to be generic with the linker (ld instead of g++) Chris Vine <chris@cvine--nospam--.freeserve.co.uk> - 2019-08-21 01:07 +0100
Re: Trying to be generic with the linker (ld instead of g++) Keith Thompson <kst-u@mib.org> - 2019-08-20 15:50 -0700
Re: Trying to be generic with the linker (ld instead of g++) Bart <bc@freeuk.com> - 2019-08-21 00:27 +0100
Re: Trying to be generic with the linker (ld instead of g++) Ralf Fassel <ralfixx@gmx.de> - 2019-08-20 14:05 +0200
Re: Trying to be generic with the linker (ld instead of g++) David Brown <david.brown@hesbynett.no> - 2019-08-20 14:10 +0200
Re: Trying to be generic with the linker (ld instead of g++) Keith Thompson <kst-u@mib.org> - 2019-08-20 15:58 -0700
Re: Trying to be generic with the linker (ld instead of g++) Tim Rentsch <tr.17687@z991.linuxsc.com> - 2019-08-22 04:47 -0700
Don't extensions still work? (Was: Trying to be generic with the linker (ld instead of g++)) gazelle@shell.xmission.com (Kenny McCormack) - 2019-08-22 12:12 +0000
Re: Don't extensions still work? (Was: Trying to be generic with the linker (ld instead of g++)) David Brown <david.brown@hesbynett.no> - 2019-08-22 15:08 +0200
Re: Don't extensions still work? (Was: Trying to be generic with the linker (ld instead of g++)) Tim Rentsch <tr.17687@z991.linuxsc.com> - 2019-08-22 12:57 -0700
csiph-web