Martin Ward | 2 Feb 02:21 2015

Re: Future upgrades

On 02/02/15 00:02, lux-integ wrote:
> On Monday 02 February 2015 00:15:31 Martin Ward wrote:
>> On 01/02/15 22:46, lux-integ wrote:
>>> On Saturday 31 January 2015 23:01:53 Martin Ward wrote:
>>>> the 4.9.0 patch i submitted should be good for multi-lib as well on most
>>>> common architectures at least
>>> could you  tell us where this patch is located please?
>> martin
> there are two gcc-4.9.0 patches namely
> gcc-4.9.0-pure64-1.patch
> gcc-4.9.0-pure64_specs-1.patch
> which one are you referring to?
Are you doing pure64 or multilib

if pure you need 4.9.0-pure64_specs-1 for chapter 5
and 4.9.0-pure64-1 for chapter 6

if multi-lib use the 4.9.2-specs -1.patch

if your wondering why 4.9.0 is because i did them when 4.9.0 was 
current, you can use them with 4.9.2 as the source tree layout hasn't 

hope that helps

(Continue reading)

lux-integ | 1 Feb 23:40 2015

cant find clfs-dev

a link to subscribe to the dev list would be helpful
William Harrington | 31 Jan 05:45 2015

Future upgrades


We have had some domain issues, which won't be resolved. You'd expect if someone sent an invoice from the
same company to reveal something went awry. Well, we are now, unless a miracle occurs.

Who all is still with CLFS? Let us know.

I have notes for our tickets at

I don't have much time to update CLFS as the world is out of whack and going into convulsions, but I do have
notes for my last pure64 bit build with binutils 2.25, glibc-2.20, and gcc-4.9.2 with branch updates.  We
need a multilib patch for gcc 4.9.2.


William Harrington


William Harrington <kb0iic <at>>
lux-integ | 28 Jan 21:21 2015

glibc-2.19 -m32 build error clfs-multilib


I am trying to build clfs-multilib

(  )

I am stuck on glibc-2.19 32-bit 
( )

   the compilation ends as follows

make[2]: *** No rule to make target `/glibcM32-build/misc/ioperm.o', needed by 
`/glibcM32-build/misc/stamp.o'.  Stop.
make[2]: Leaving directory `/glibc-2.19/misc'
( I checked on the internet and the last reported error of this type was  
related to kernel headers some 5 or so years ago  in the days of kernel 
2.6.31. )

I am following the instructions in the clfs book ((using kernel headers 
linux-3.14.21 )  and  I have tried hosts running clfs (  pure 64bit) , 
fedora20 and slackware14.1  (both multi-lib ) and all gave the same result.

advice would be appreciated

Justin R. Knierim | 28 Jan 17:07 2015

CLFS Mailing Lists Update

Hello CLFS followers,

The issue related with the domain is still not resolved, 
so the mailing lists (archives and subscribers) have been migrated over 
to our currently active domain of  If we can recover the domain some day, we will have it forward is mailing lists 
mail to  If you have any questions, please feel free to email 
me directly.  If you do not want to receive any mail from CLFS, please 
click the unsubscribe link below.  Thanks for your patience while we get 
our services sorted. Have a nice day!

William Harrington | 4 Nov 01:43 2014

Fwd: CLFS Target Architectures


I build CLFS on my PowerMac G3 and G4 regularly. It would be nice if the instructions could stay, but I guess I understand if they have to go. I use the Systemd version by the way, I dont care much for Sysvinit anymore. I do not use MIPS or MIPS64, although I am in the process of purchasing a machine for PPC64.

Douglas Reno

Clfs-support mailing list
Clfs-support <at>
David Jenkins | 30 Oct 11:02 2014

CLFS for Tilera TileGX Multilib - successful attempt + steps taken


Following my previous post yesterday - I think I've found the issue.
I now managed to complete section 5 (building the cross-compilation
toolchain) by following CLFS-3.0.0-SYSVINIT for PowerPC64-Multilib
with the deviations listed below.
Using this I compiled a "hello world" program with the 4 combinations
(static/dynamic X 32/64) and tested it on an actual TileGX platform
and it works fine.

I am posting as it may be useful for someone who is trying to do the
same. In addition someone with more knowledge may be able to clean up
the steps a bit so TileGX can be added to the (excellent!) CLFS book.


Steps tested on this host:
- Architecture: Intel x64

root <at> vm-ubuntu64:~# uname -a
Linux vm-ubuntu64 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08
UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

- Distribution: Ubuntu 14.04.1LTS
root <at> vm-ubuntu64:~# cat /etc/issue
Ubuntu 14.04.1 LTS \n \l

- Packages installed after a clean Ubuntu installation:
sudo apt-get install build-essential texinfo gawk bison gettext
autoconf zlib1g-dev

Section 4.6

Section 5.3
Change ARCH=powerpc to ARCH=tilegx

Section 5.13
After unpacking the sources and before issuing the "configure"
command, do these steps:

- Create feedback.h file:

cat > /tools/include/feedback.h << EOF
#ifndef _FEEDBACK_H
#define _FEEDBACK_H 1

#ifdef __ASSEMBLER__

/* Stub defines for feedback instrumentation.  */

#endif /* __ASSEMBLER__ */

#endif /* _FEEDBACK_H */

- Create dummy stubs.h file (will be overwritten in section 5.14+5.15
when glibc installs):

touch /tools/include/gnu/stubs.h

- Make gmp.h available in the /tools/include directory:

ln -s /cross-tools/include/gmp.h /tools/include/gmp.h

- Install glibc headers (just the headers - don't compile) - run this
from somewhere you unpacked the glibc sources:

mkdir -v ../glibchdr
cd ../glibchdr

cat > config.cache << EOF

../glibc-2.19/configure \
    --prefix=/tools \
    --host=${CLFS_TARGET} \
    --build=${CLFS_HOST} \
    --disable-profile \
    --enable-kernel=2.6.32 \
    --with-binutils=/cross-tools/bin \
    --with-headers=/tools/include \
    --enable-obsolete-rpc \

make install-headers

(NOTE - some errors will be shown but the headers will be installed in

- Fix the target makefile for tilegx; Tilera assumed 32bit libraries
will go in /lib32 and 64-bit libraries in /lib; CLFS assumes 32-bit in
/lib and 64-bit in /lib64. This causes linking errors during build. In
the GCC source directory:

vi gcc/config/tilegx/t-tilegx

Then, change the line:
MULTILIB_OSDIRNAMES = ../lib ../lib32

to these two lines (taken from the powerpc target makefile):
MULTILIB_OSDIRNAMES += m32=$(if $(wildcard $(shell echo

- You can now proceed with configure and make for the bootstrap GCC

Section 5.16
If using a separate source directory from section 5.13, before the
"configure" command repeat the steps above to fix the t-tilegx file
William Harrington | 19 Oct 04:37 2014

Announcing CLFS 3.0.0 Release

Announcing CLFS 3.0.0 Release

The CLFS Development team is pleased to announce the CLFS 3.0.0 for SYSTEMD and SYSVINIT.

This release features Glibc 2.19, GCC 4.8.3, Binutils 2.24 and Linux 3.14.

CLFS 3.0.0 supports: x86, x86_64 Multilib, x86_64 Pure 64, Sparc, Sparc64 Multilib, Sparc64 Pure 64,
PowerPC, PowerPC64 Multilib, PowerPC64 Pure 64, MIPS 32, MIPS 64 Multilib and MIPS 64 Pure 64.

You may view the book online at:

Download the book here:

Packages for this version of the book can be found individually here:

If you wish to render it yourself you can download the XML from the site:
William Harrington | 10 Oct 05:41 2014

CLFS 3.0.0 Milestone Release

Greetings CLFS gurus,

October 25 is the milestone release.

The 3.0.0 book will be released at that time or before.

Shadow has been updated to 4.2.1 and kernel up to 3.14.21.
Shadow had some security issues which needed dropped and moved to 4.2.1.

We can look through the tickets and see if any thing else is major. I haven’t ran across anything that’d
be major before a release. It seems pretty trivial.

I’m proposing removing mips and adding ARM to the next book.
We also have the issue of attempting to simplify the xml for multiple arches, but that will require lots of work.

Unless anyone has some major issues, the book will be released at Oct 25 or before.

Please check for any open tickets.


Wiliam Harrington
Tom Janson | 20 Sep 02:46 2014

Netplug installation: bootscripts


I’ve been following the guide and I’ve enjoyed it a lot so far. Thanks
for all the work! I just ran into a slight issue, though:

Chapter "8.5.2. Installation of Netplug Bootscripts" [1] refers to a
make install-netplug target in the bootscripts, but that doesn’t
exist. (Bootscripts from [2] as per the guide.) A quick look in the
git history suggests that it never existed, but that there was a
networking script that was removed [3].

Instead, I followed the instructions in the CBLFS wiki [4].

Is this correct? Is this a loose end, or did I misread something?

-- TJ

Clfs-support mailing list
Clfs-support <at>
Dave Gomboc | 10 Sep 03:24 2014

problem report for 3.0.0 beta 1 PowerPC SysVInit instructions


ISL configure fails with a message indicating that it could not
find the symbol "main" within gmp.  Indeed, there is no such
symbol within the file at /cross-tools/lib/
(according to "nm -C /cross-tools/lib/ | grep
main").  Plenty of other symbols are present, though.

tar xf ${CLFS_SOURCES}/isl-0.12.2.tar.lzma
cd isl-0.12.2/
LDFLAGS="-Wl,-rpath,/cross-tools/lib" ./configure
--prefix=/cross-tools --disable-static --with-gmp-prefix=/cross-tools
make install
cd ..
rm -rf isl-0.12.2/

A relevant excerpt from config.log is below.

What is the adjustment to the instructions that you recommend?

Dave Gomboc

configure:17242: checking which gmp to use
configure:17244: result: system
configure:17266: checking gmp.h usability
configure:17266: gcc -c -O3 -fomit-frame-pointer -malign-double
-fstrict-aliasing -ffast-math -I/cross-tools/include  conftest.c >&5
configure:17266: $? = 0
configure:17266: result: yes
configure:17266: checking gmp.h presence
configure:17266: gcc -E -I/cross-tools/include  conftest.c
configure:17266: $? = 0
configure:17266: result: yes
configure:17266: checking for gmp.h
configure:17266: result: yes
configure:17274: checking for main in -lgmp
configure:17293: gcc -o conftest -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math -I/cross-tools/include
-L/cross-tools/lib -Wl,-rpath,/cross-tools/lib conftest.c -lgmp  -lgmp
/usr/bin/ld: skipping incompatible /cross-tools/lib/ when
searching for -lgmp
/usr/bin/ld: cannot find -lgmp
/usr/bin/ld: skipping incompatible /cross-tools/lib/ when
searching for -lgmp
/usr/bin/ld: cannot find -lgmp
collect2: error: ld returned 1 exit status
configure:17293: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.12.2"
| #define PACKAGE_STRING "isl 0.12.2"
| #define PACKAGE_BUGREPORT "isl-development <at>"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.12.2"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| int
| main ()
| {
| return main ();
|   ;
|   return 0;
| }
configure:17302: result: no
configure:17312: error: gmp library not found