On Wed, Sep 27, 2017 at 12:34 AM, Jonathan Wakely <jwakely....@gmail.com> wrote: > On 27 September 2017 at 05:49, R0b0t1 <r03...@gmail.com> wrote: >> On Tue, Sep 26, 2017 at 4:30 PM, Jonathan Wakely <jwakely....@gmail.com> >> wrote: >>> On 26 September 2017 at 22:05, R0b0t1 <r03...@gmail.com> wrote: >>>> Hello, >>>> >>>> I am having problems understanding the build instructions for GCC. I >>>> can almost always produce toolchains which function but I can find >>>> programs or scripts which do more or less the same thing that produce >>>> nonfunctional toolchains or which abort at some stage of compilation. >>>> (To clarify: I have no problem compiling the project, but I need help >>>> knowing all options which must be configured.) >>> >>> What does "knowing all options which must be configured" mean? >>> >>> Must be configured for what? >>> >> >> For a working, "self contained" toolchain (no dependencies outside of >> some directory). I'm sorry I can't be more specific, that is part of >> the problem. >> >> It is possible I am aware of all steps that anyone else is aware of. >> If that is the case perhaps I am experiencing bugs or configuration >> issues. >> >>>> This is related to my questions about generating an arm-none-eabi >>>> toolchain, however I also wish to build targets for >>>> x86_64-pc-linux-gnu, aarch64-unknown-linux-gnu, >>>> powerpc64le-unknown-linux-gnu, etc. >>>> >>>> Broadly, I have the following questions: >>>> >>>> 1) What is the complete list of dependencies for a GCC based >>>> toolchain? I am led to believe it is: zlib, gmp, mpfr, mpc, isl, >>>> expat, binutils, gcc, glibc, and gdb. >>> >>> https://gcc.gnu.org/install/prerequisites.html should be clear. >>> >>> isl is optional, it's not required. expat is not needed. zlib is not >>> needed, because the source for it is included in the GCC tree. >>> >> >> Thank you, this explains some earlier confusion I had about there >> being no --with-zlib switch, but I still wonder why it is not present >> (c.f. gmp, mpfr, etc.). >> >> I am still left with the question of how to link GCC with a >> nonstandard libc. Instructions for doing this with miscellaneous >> programs are available,[1] but it does not seem like there is any way >> to do it via configure. > > Build it with a compiler that uses the libc you want to use. >
It looks like the circle is broken with the --sysroot option. I may also need --with-local-prefix and --with-native-system-header-dir. I apologize for not finding the proper documentation. I originally approached the problem from a different angle and became very confused. As my messages to this list indicate, I am not very intelligent. Keeping my mouth closed serves me well. Respectfully, R0b0t1 > >> Are you (or anyone else) able to make a recommendation? >> >> I have tried to refer to each project's documentation and the Linux >> From Scratch documentation, but they do not seem to plan for precisely >> what I am doing. > > You haven't explained what you're doing. You're being very vague, so > it's not clear what you're trying to do. > >> E.g. I would like to compile most non-system programs against >> non-system libraries and run them as my user. I can do this and don't >> mean to ask general questions on this list. However, the main problem >> existing solutions have is that do not seem to configure GCC properly. > > Define "properly". > >>> >>>> 2) How do I specify each of the above to be reliant on the versions of >>>> other programs that it may depend on being used for the toolchain? >>>> >>>> Ideally these toolchains would not use system libraries if CHOST is >>>> the same as BHOST. >>>> >>>> 3) Are there any architecture specific options for any of the possible >>>> targets? >>> >>> Read the docs. >>> https://gcc.gnu.org/install/specific.html >> >> I did not know this page existed, > > It's linked to from the start of https://gcc.gnu.org/install/ which is > linked to from https://gcc.gnu.org/ so you don't seem to have looked > very far. > >> but it seems more like errata. It >> doesn't give helpful pointers as to configuration you may need to >> accomplish X. It may be that what I am looking for does not exist, >> which I expected may be the case. > > It would depend what X is. I don't see how anyone can help you with > this vagueness. > > >> Thank you, >> R0b0t1 >> >> >> [1]: http://www.tldp.org/HOWTO/Glibc2-HOWTO-6.html