LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux From Scratch (https://www.linuxquestions.org/questions/linux-from-scratch-13/)
-   -   [LFS 7.4 r.c.1] Chapter 5.8. Libstdc++-4.8.1 (https://www.linuxquestions.org/questions/linux-from-scratch-13/%5Blfs-7-4-r-c-1%5D-chapter-5-8-libstdc-4-8-1-a-4175474863/)

DeeGee 08-27-2013 06:28 AM

[LFS 7.4 r.c.1] Chapter 5.8. Libstdc++-4.8.1
 
Hi! Started with LFS 7.4 and got stuck right in the toolchain :s

Thanks in advance for anyone who can help me resolve this issue. I'm using Ubuntu 13.04 as the host system, and no virtualbox this time.

The culprit code is:

Code:

make[3]:../../../gcc-4.8.1/libstdc++-v3/src/c++98/strstream.cc:324:63: error: 'INT_MAX' was not declared in this scope
  size_t N = n > 0 ? size_t(n) : n == 0 ? strlen(get) : size_t(INT_MAX);
                                                              ^
make[3]: *** [strstream.lo] Error 1
make[3]: Leaving directory `/mnt/chill/sources/gcc-build/src/c++98'
Making all in c++11
make[3]: Entering directory `/mnt/chill/sources/gcc-build/src/c++11'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/mnt/chill/sources/gcc-build/src/c++11'
make[3]: Entering directory `/mnt/chill/sources/gcc-build/src'
make[3]: *** No rule to make target `../src/c++98/libc++98convenience.la', needed by `libstdc++.la'.  Stop.
make[3]: Leaving directory `/mnt/chill/sources/gcc-build/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/mnt/chill/sources/gcc-build/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/chill/sources/gcc-build'
make: *** [all] Error 2

The only discrepacy with version check is that /bin/sh symlinks to dash instead of bash.

Thanks again!

basica 08-27-2013 08:13 AM

You need to change the symlink, dash won't cut it.

Run the following:

rm /bin/sh
ln -s /bin/bash /bin/sh

Dash doesn't have all of the bash features which are depended on in the build process. Once you've symlinked it, try again but you may need to go back to the start.

While you're at it, check your other sym links as well. My post here may be of help:

http://www.linuxquestions.org/questi...st-4175474870/

druuna 08-27-2013 08:15 AM

Quote:

Originally Posted by DeeGee (Post 5016787)
The only discrepacy with version check is that /bin/sh symlinks to dash instead of bash.

/bin/sh _must_ be linked to bash, otherwise you'll get into trouble.

Make sure that all of the Host System Requirements are met, they are there for a reason!

DeeGee 08-27-2013 08:55 AM

Sad to say, but despite changing the symlink, the problem is still the same :s.

druuna 08-27-2013 09:08 AM

2 questions:

- Can you post the output of the version-check.sh script?
- Did you only redo 5.8. Libstdc++-4.8.1 after changing the link or did you start again from 5.4. Binutils-2.23.2 and onward?

You aren't too far into the build. I would remove what you have, make 100% sure all Host System Requirements are met and start again. Using dash instead of bash might have foobarred some stuff in the chapters leading upto 5.8.

ReaperX7 08-27-2013 03:40 PM

Yes, if you used Dash at any time up till now rather than Bash, you'll need to completely rebuild from scratch all over from the first package.

Bash is listed as a required build package for a reason.

You have to follow the book exactly.

Keith Hedger 08-27-2013 05:17 PM

Quote:

Originally Posted by druuna (Post 5016884)
...foobarred...

Actually it's fubar it's an acronym from I think the second world war, if you can't work it out pm me I won't post it on here :)

druuna 08-28-2013 02:18 AM

Quote:

Originally Posted by Keith Hedger (Post 5017082)
Actually it's fubar it's an acronym from I think the second world war, if you can't work it out pm me I won't post it on here :)

Actually, its both correct: foobar, fubar (FUBAR), foo, bar, baz, qux, quux

No need to PM me.

DeeGee 08-28-2013 03:15 AM

Recompiling with bash worked like a charm. Finished with the toolchain :)

And valuable lesson learnt!


All times are GMT -5. The time now is 08:27 PM.