public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* How to make sure GCC links only with old runtime that is supplied with the system
@ 2022-10-20 10:33 olologin
  2022-10-20 10:39 ` Jonathan Wakely
  0 siblings, 1 reply; 2+ messages in thread
From: olologin @ 2022-10-20 10:33 UTC (permalink / raw)
  To: gcc-help

[-- Attachment #1: Type: text/plain, Size: 1063 bytes --]

Hi everyone,
I am kind of new to cross-compiling (if we can call my task like this), so
maybe my question is kind of stupid.

I need to build my project for old runtimes (libstdc++, libgcc_s, etc) that
came with GCC 6, but I can build my sourcecode only with newest C++
features, so I chose GCC 12 for this.
Of course my API is old enough to support GCC 6. And of course I am aware
of potential risks (like some implementations that can be missing in the
old runtime).

Currently I am doing this in a very hacky way, and build my project in a
container that looks like this:
https://gist.github.com/olologin/b4ba2db91fc5c526d625715b39ac4579
As you can see, starting from line 73 it gets hacky because I could not
find a better way to make sure GCC 12 links my code with GCC 6 runtime
instead of GCC 12.
So I decided that I should just get rid of all *.so, *.a and *.o files in
GCC12 install directory, and later when I build my project I point GCC12 on
GCC6 runtime with -Wl,-L.

Is there a better way to do this? Maybe I am missing something.
Thanks in advance.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-10-20 10:39 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-20 10:33 How to make sure GCC links only with old runtime that is supplied with the system olologin
2022-10-20 10:39 ` Jonathan Wakely

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).