https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87769

--- Comment #7 from Mateusz Zych <mte.zych at gmail dot com> ---
Hi Joseph, ;)


Thank you very much for your advice - it was really helpful!
I've managed to implement a script creating standalone GNU toolchain for C++:

 - https://github.com/mtezych/cpp/blob/master/CreateToolchain.sh


However, I still have an issue with some configurations of triples.
For example,
the following cross-compiling configurations are building successfully:

   HOST   = x86_64-pc-linux-gnu
   TARGET = x86_64-glibc-linux-gnu

   HOST   = x86_64-linux-gnu
   TARGET = x86_64-glibc-linux-gnu

   HOST   = x86_64-pc-linux-gnu
   TARGET = x86_64-unknown-linux-gnu

   HOST   = x86_64-unknown-linux-gnu
   TARGET = x86_64-pc-linux-gnu

Even cross-compiling for x86 works:

   HOST   = x86_64-unknown-linux-gnu
   TARGET = i686-pc-linux-gnu

However, for some reason these configurations do not work:

   HOST   = x86_64-linux-gnu
   TARGET = x86_64-pc-linux-gnu

   HOST   = x86_64-pc-linux-gnu
   TARGET = x86_64-linux-gnu

Also, I cannot build an isolated compiler:

   HOST   = x86_64-linux-gnu
   TARGET = x86_64-linux-gnu

   HOST   = x86_64-pc-linux-gnu
   TARGET = x86_64-pc-linux-gnu

   HOST   = x86_64-unknown-linux-gnu
   TARGET = x86_64-unknown-linux-gnu

   HOST   = x86_64-glibc-linux-gnu
   TARGET = x86_64-glibc-linux-gnu


Can you explain to me what's the significance of a vendor in a triplet?
That is, what's the difference between these triplets?

 - x86_64-linux-gnu
 - x86_64-pc-linux-gnu
 - x86_64-none-linux-gnu
 - x86_64-glibc-linux-gnu
 - x86_64-unknown-linux-gnu

Maybe there is a piece of documentation, blog post or an article,
that you can point me to, which explains this?


Which triplet configuration I should use for a host and a target,
when I am using regular GNU/Linux distro (Ubuntu MATE 18.04 LTS)
and want to target wide range or GNU/Linux distros?

Are triples returned by these commands good values for triples?
 $ gcc -dumpmachine -> x86_64-linux-gnu
 $ make -v          -> x86_64-pc-linux-gnu


Thank you, Mateusz

Reply via email to