Opened 7 years ago

Closed 7 years ago

#3582 closed task (fixed)

Remove unnecessary gcc switches

Reported by: miland Owned by: bdubbs@…
Priority: normal Milestone: 7.6
Component: Book Version: SVN
Severity: normal Keywords:
Cc:

Description

In addition to mpfr, gmp and mpc, isl and cloog are needed, too. The compiler will build without isl and cloog, but when I tried to run it, it was looking for shared library versions of isl and cloog.

Also, with 4.8.2, the last to lines in configure invocation:

--with-mpfr-include=$(pwd)/../gcc-4.8.2/mpfr/src \ --with-mpfr-lib=$(pwd)/mpfr/src/.libs

are not needed

Change History (8)

comment:1 by bdubbs@…, 7 years ago

Why do you say cloog and isl are needed? We've been using gcc-4.8.2 and prior versions for a long time, building all of BLFS, and have not run into issues.

As far as the mpfr lines go, we know they ware needed at one time, but haven't checked the current system. However, are you sure that without them, they are not looking at the host libraries? That may be your cloog and isl issue too if you didn't use them.

comment:2 by miland, 7 years ago

  1. I don't have clog and isl on the build system. The way we bootstrap our system is by creating RPMs in each step. So, when I tried to build gcc RPM, it successfully completed the build phase, as outlined in your guide, but declined to make RPM as there were unresolved dependencies on libisl.so and libcloog libraries. When I modified the build by adding these two to the gcc build, this problem went away.
  1. gcc 4.8.2 has built-in "knowledge" that if you place mpfr, mpc, gmp, cloog and isl in the special way WITHIN gcc source tree, it then knows how to build them alongside the compiler. This is documented in GCC build instructions. That's why you don't need the last two lines I mentioned.

comment:3 by Pierre Labastie, 7 years ago

For 1, I cannot tell, I do not use rpm, but for 2:

Well, sometimes documentation is wrong... As you say, gcc has some knowledge of the build tree, but libtool does not (or not enough). So without those two lines, the build fails. Haven't you tried?

comment:4 by Frans de Boer, 7 years ago

I concur with Pierre, without the two lines the build fails - tried that too. Note: did not tried it yet with gcc-4.9.0.

Also, it seems that the book is not being followed exactly. Using tools which are not supported in the book means - I guess - that you are on your own. If you follow the instructions to the letter, all will build well. And yes, you can add your own 'extras', but that is your own risk.

I use an extra switch in my build files (-[no]purelfs) and only when there is some failure with the '-purelfs' switch you can find me on the lists - either asking or giving information.

in reply to:  4 comment:5 by Frans de Boer, 7 years ago

Replying to fransdb:

I concur with Pierre, without the two lines the build fails - tried that too. Note: did not tried it yet with gcc-4.9.0.

Tried it and gcc-4.9.0 now compiles without these two lines. It seems they finally solved this for mpfr as they did for gmp and mpc long ago.

Still; the two extra libraries are NOT needed in a standard LFS build.

Remark: --disable-libmudflap can be removed from gcc pass 1 build too. The reference to libmudflap is still being processed, but serves no function anymore.

comment:6 by bdubbs@…, 7 years ago

Owner: changed from lfs-book@… to bdubbs@…
Status: newassigned
Summary: cloog and isl libs required to run gcc4.8.2Remove unnecessary gcc switches

OK, I'll test out these switches and update the book as appropriate. The portions of the ticket concerning cloog and isl are invalid.

Renaming ticket title.

comment:7 by bdubbs@…, 7 years ago

Fixed at revision 10567.

comment:8 by bdubbs@…, 7 years ago

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.