Gerard Beekmans wrote:
>>> What more do we need to add?  Or can we just close the ticket?
>>> I think it was addressed in the updates Matt made about four months
>> ago
>>> and about 2 months after ticket 2412 was opened.
>> I'm happy to close that ticket off, I don't think it needs any more
>> explanation but am open to suggestions.  I'll close the ticket on
>> Monday if
>> we've had no further comments, if that's OK?
> 
> 
> I think it can use a bit more refining. I'm writing this email without
> relying on existing knowledge. If I read the page as-is without having any
> additional knowledge in the area of cross-compiling, it doesn't quite make
> sense yet.
> 
> There are the three bullets that explain three key technical points.
> Comments on the first two:
> 
> 1) Slightly adjusting the name of the working platform, by changing the
> "vendor" field target triplet by way of the LFS_TGT variable, ensures that
> the first build of Binutils and GCC produces a compatible cross-linker and
> cross-compiler. Instead of producing binaries for another architecture, the
> cross-linker and cross-compiler will produce binaries compatible with the
> current hardware.
> 
> 2) The temporary libraries are cross-compiled. This removes all dependency
> on the host system, lessens the chance of headers or libraries from the host
> corrupting the new tools and allows for the possibility of building both
> 32-bit and 64-bit libraries on 64-bit capable hardware.
> 
> 
> We should add why cross-compiling removes all dependency on the host system.
> The statement as-is implies that regular compiling does not yield the same
> result. That has to be explained rather than just taking the statement at
> face value. Providing an example would go a long way to illustrate the
> problem.

I'm not sure that we really have to use cross-compiling techniques in 
LFS, but it is one technique of several that would work.  I don't really 
recall any issues form the old technique except that it was limited to 
x86->x86.  Ryan Oliver and Greg Schafer wanted to create a method that 
was consistent for multiple architectures that was basically any->any.
For LFS, I don't think it was technically required, but changing to make 
is consistent with other projects such as CLFS is a reasonable goal.

> An example of how the host can corrupt the temporary libraries when you
> don't cross-compile would be very educational as well. It helps in proving
> that cross-compiling really is recommended.  

I don't think the above is applicable.

> This whole portion of the build process plays a very important role. Right
> now that one page doesn't explain the many issues that cross-compiling
> overcomes. One of the questions that may come up is why we didn't
> cross-compile in older versions of the book. We obviously encountered
> problems and changed the process in the book. But the rationale behind that
> is still missing and not clearly explained.

I don't recall explicit problems, but I didn't run the ICA analyses.

I've emailed Greg to see if he can shed any light on this topic.

   -- Bruce
-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to