本文关键字:tinycorelinux编译gcc套件,live,vhd二合一colinux,tinycorelinux lnmp
在前面我们提到,一个linux发行包只要提供了核心部分和cui的基础toolchain部分才算是一个基本完整的linux发行包,因为扩展将来都由这套toolchain编译而来。在《为tinycolinux创建应用包》中我们用简单解压组合tcz的方式组建了一个lnmp环境包(mysql5.1+php5.3),在这里,我们准备为tinycolinux建立一个toolchain环境,并用源码编译的方式产生高版本的mysql+php的lnmp包,而这也是更通行和更灵活的办法。
关于编译新gcc套件及处理glibc移殖的问题
编译GCC可能面临二种需求环境:1) 从本地产生,比如你需要一个bootstrap的gcc低版本来产生高版本,2) 从外部crosscompile而来。
默认gcc第一遍只需要gmp,mpc,mpfr加gcc,这样–enable-language=c,c++编译出来的gcc支持stdlibc+±dev却不带libc-dev,甚至binutils都不需要,如果目标环境中没有支持是没有实用的。
完整可用的gcc套件要经过多遍,除了gcc,binutils,甚至还需要附加编译flex,bison这些,
最重要的问题来了:
默认gcc仅带libstdc++,这个可以后期添加新版本替换/叠加系统原有版本因为它是built into toolchain的,而glibc的版本是一个linux发行版rootfs中集成的built into rootfs,是最为基础的被引用部分,不可升级/替换,是一个不可移殖项。你需要另外准备平台依赖的libc-dev(glibc-dev),这可能需要在其它遍次pass,


4197

被折叠的 条评论
为什么被折叠?



