LinuxSir.Org  
| 网站首页 | 论坛帮助 |

欢迎来到LinuxSir.Org!
您还未登录,请登录后查看论坛,或者点击论坛上方的注册链接注册新账号。


发表新主题 回复
精华主题  
主题工具
旧 05-12-27, 00:07 第 31 帖
highness
 
 
 
注册会员  
  注册日期: Dec 2005
  帖子: 62
  精华: 0
 

引用:
作者: youbest
这句代码的意思是设置一个环境变量,这个环境变量指向gcc安装目录下的默认用于存放specs文件的地方,与编译没什么关系。
还有其它的方法,其中一种可以看《用GCC4.0.1来编译LFS 》这篇文章里面的相关部分。



分支一需要制作工具链,因此和LFS手册的方式是一样的,不会安装到源系统上的,第六章是在chroot后进行安装的,所以不会影响到源系统的。
一般来说./configure中的prefix参数用来指定安装地点,不过也有可能有例外。
说错,应该是分支二。不CHROOT进目标系统的话,有可能会安装在源系统上,这点比较麻烦。
是不是用PREFIX来指定??
  highness 当前离线   回复时引用此帖
旧 05-12-27, 08:11 第 32 帖
laven
 
laven 的头像
 
 
注册会员  
  注册日期: Jul 2004
  帖子: 123
  精华: 0
 

我怎么下载不了啊?
那个附件也不是啊.
打开是一个文本的格式.
哪位有拿出来分享一下好吗?
  laven 当前离线   回复时引用此帖
旧 05-12-27, 09:00 第 33 帖
youbest
 
youbest 的头像
 
 
版主  
  注册日期: Jan 2005
  帖子: 1,524
  精华: 20
 

引用:
作者: highness
说错,应该是分支二。不CHROOT进目标系统的话,有可能会安装在源系统上,这点比较麻烦。
是不是用PREFIX来指定??
分支二的方式不需要用make install来安装,这样也就不存在安装在源系统的问题,需要什么直接从编译好的目录中拷贝出来用就可以了,prefix有没有无所谓。

引用:
作者: laven
我怎么下载不了啊?
那个附件也不是啊.
打开是一个文本的格式.
哪位有拿出来分享一下好吗?
补丁本来就是文本格式嘛,论坛不允许上传.patch的文件所以只能加了一个.txt的后缀,下载下来改一下后缀名就可以了,不改也行,patch命令无所谓补丁的后缀名。
  youbest 当前离线   回复时引用此帖
旧 05-12-27, 09:10 第 34 帖
laven
 
laven 的头像
 
 
注册会员  
  注册日期: Jul 2004
  帖子: 123
  精华: 0
 

噢.
谢谢回复,我要下载的不是那个补丁文件,我要下载在虚拟机上直接可以运行的那个文件.
http://www.zdbr.net.cn/download/miniLFS.rar
这个链接可能有问题,我下载不了.
或都是否禁止了网通用户下载?
试了多次都没有成功.
  laven 当前离线   回复时引用此帖
旧 05-12-27, 09:14 第 35 帖
youbest
 
youbest 的头像
 
 
版主  
  注册日期: Jan 2005
  帖子: 1,524
  精华: 20
 

引用:
作者: laven
噢.
谢谢回复,我要下载的不是那个补丁文件,我要下载在虚拟机上直接可以运行的那个文件.
http://www.zdbr.net.cn/download/miniLFS.rar
这个链接可能有问题,我下载不了.
或都是否禁止了网通用户下载?
试了多次都没有成功.
2M多的文件没法传到论坛里,你可以到 http://www.linuxsir.org/bbs/showthread.php?t=236599 里去下载体积更小的.
  youbest 当前离线   回复时引用此帖
旧 05-12-27, 10:54 第 36 帖
highness
 
 
 
注册会员  
  注册日期: Dec 2005
  帖子: 62
  精华: 0
 

引用:
作者: youbest
分支二的方式不需要用make install来安装,这样也就不存在安装在源系统的问题,需要什么直接从编译好的目录中拷贝出来用就可以了,prefix有没有无所谓。



补丁本来就是文本格式嘛,论坛不允许上传.patch的文件所以只能加了一个.txt的后缀,下载下来改一下后缀名就可以了,不改也行,patch命令无所谓补丁的后缀名。
NOT USING "MAKE INSTALL"?? COPY WHAT'S NEEDED FROM COMPILED FLODER??

SOURCE OS OR OBJECT OS ??
  highness 当前离线   回复时引用此帖
旧 05-12-27, 11:12 第 37 帖
youbest
 
youbest 的头像
 
 
版主  
  注册日期: Jan 2005
  帖子: 1,524
  精华: 20
 

源码目录下复制到目标系统下.
  youbest 当前离线   回复时引用此帖
旧 05-12-27, 13:29 第 38 帖
highness
 
 
 
注册会员  
  注册日期: Dec 2005
  帖子: 62
  精华: 0
 

引用:
作者: youbest
源码目录下复制到目标系统下.
i see

x-window can be installed by this method??
  highness 当前离线   回复时引用此帖
旧 06-02-27, 22:10 第 39 帖
redkaoliang
 
 
 
注册会员  
  注册日期: Nov 2005
  帖子: 4
  精华: 0
 

请教豹兄两个问题:
1)在编译glibc时的参数--enable-static-nss是什么意思,如果不加入这个参数编译会怎么样呢?
2)制作这个apache服务器时,不建立临时工具链环境,而直接使用主机的编译环境对所需的apache,dhcp服务器等进行静态编译,在把生成的bin文件copy到目标系统相应的目录下,这样打造目标系统是否可行呢,我现在不明白的就是如果用主机的编译环境进行静态编译的话,生成的bin代码会和主机系统有联系吗?会有什么样的联系呢?
望多多指教,thanks!
  redkaoliang 当前离线   回复时引用此帖
旧 06-02-27, 22:30 第 40 帖
youbest
 
youbest 的头像
 
 
版主  
  注册日期: Jan 2005
  帖子: 1,524
  精华: 20
 

引用:
作者: redkaoliang
请教豹兄两个问题:
1)在编译glibc时的参数--enable-static-nss是什么意思,如果不加入这个参数编译会怎么样呢?
这个参数不加的话可能会对后面的静态编译产生影响。

引用:
作者: redkaoliang
2)制作这个apache服务器时,不建立临时工具链环境,而直接使用主机的编译环境对所需的apache,dhcp服务器等进行静态编译,在把生成的bin文件copy到目标系统相应的目录下,这样打造目标系统是否可行呢,我现在不明白的就是如果用主机的编译环境进行静态编译的话,生成的bin代码会和主机系统有联系吗?会有什么样的联系呢?
望多多指教,thanks!
这种方式应该来说是有前提的,也就是host系统与目标主机系统所使用的软件包差别不大的情况下提高效率的方法,我就是在这样的情况下完成的,不过为了比较通用的方式可以用完整编译出目标系统后再做这个Apache服务器的方式。
如果直接开始,那么编译出来的bin代码将会使用host系统中的库,这是必然的。







__________________
我的第一本图书出版了!
http://blogold.chinaunix.net/u/13265/showart.php?id=2409099

青橄榄在入口的时候是苦的,过了一会你就可以长久的品味那淡淡而又清爽的甜味。

青橄榄 http://youbest.cublog.cn

青橄榄计划的第一步总算迈出来了,等待它的是万里长征.

做技术要有做技术的原则,决不拿技术做侵权的事情,更不能用来做违法的事情。工作丢了可以再找一个,原则丢了就找不回来了。
  youbest 当前离线   回复时引用此帖
旧 06-02-28, 00:03 第 41 帖
晨想 帅哥
 
晨想 的头像
 
 
资深版主  
  注册日期: Feb 2003
  我的住址: P.R.China
  帖子: 9,643
  精华: 9
 

--enable-static-nss
就是那个 /etc/nsswitch.conf 的东西,应该没什么影响的吧?不过我不确定。感觉似乎没什么联系。。

第二个,静态编译的话,用的是主机的库,如果还是按照LFS的方式做一个系统出来,感觉太麻烦了。。。活活。。。







__________________
我的wiki: http://wiki.linuxgnu.org

马甲Show:终极幻想 黯然销魂 DawnFantasy FinalFantasy ArmageddonMa
  晨想 当前离线   回复时引用此帖
旧 06-02-28, 08:58 第 42 帖
redkaoliang
 
 
 
注册会员  
  注册日期: Nov 2005
  帖子: 4
  精华: 0
 

引用:
作者: youbest
如果直接开始,那么编译出来的bin代码将会使用host系统中的库,这是必然的。
用host系统采用静态编译出的bin代码,所需的相应的库文件都静态连接进了bin代码,那么这个bin代码应该就可以独立运行,不与host的库有联系了吧
  redkaoliang 当前离线   回复时引用此帖
旧 06-02-28, 09:17 第 43 帖
晨想 帅哥
 
晨想 的头像
 
 
资深版主  
  注册日期: Feb 2003
  我的住址: P.R.China
  帖子: 9,643
  精华: 9
 

但是还是从host出来的。。。。
  晨想 当前离线   回复时引用此帖
旧 06-02-28, 14:36 第 44 帖
redkaoliang
 
 
 
注册会员  
  注册日期: Nov 2005
  帖子: 4
  精华: 0
 

我从http://www.gnu.org/software/libc/FAQ.html#s-1找到一个FAQ,说明静态编译的bin文件也有可能要动态连接某些共享库
FAQ2.22. Even statically linked programs need some shared libraries which is not acceptable for me. What can I do?
{AJ} NSS (for details just type `info libc "Name Service Switch"') won't work properly without shared libraries. NSS allows using different services (e.g. NIS, files, db, hesiod) by just changing one configuration file (/etc/nsswitch.conf) without relinking any programs. The only disadvantage is that now static libraries need to access shared libraries. This is handled transparently by the GNU C library.
A solution is to configure glibc with --enable-static-nss. In this case you can create a static binary that will use only the services dns and files (change /etc/nsswitch.conf for this). You need to link explicitly against all these services. For example:


gcc -static test-netdb.c -o test-netdb \
-Wl,--start-group -lc -lnss_files -lnss_dns -lresolv -Wl,--end-group

The problem with this approach is that you've got to link every static program that uses NSS routines with all those libraries.
{UD} In fact, one cannot say anymore that a libc compiled with this option is using NSS. There is no switch anymore. Therefore it is *highly* recommended *not* to use --enable-static-nss since this makes the behaviour of the programs on the system inconsistent.

此帖于 06-02-28 14:39 被 redkaoliang 编辑.
  redkaoliang 当前离线   回复时引用此帖
旧 06-03-01, 14:26 第 45 帖
good02xaut
 
good02xaut 的头像
 
 
注册会员  
  注册日期: Feb 2006
  帖子: 339
  精华: 2
 

这样做和LFS有什么关系呢?
功能单一,体积小巧的LFS完整版(5M大小的Apache服务器)
命名不合理,会把大家带到迷途。
功能单一,体积小巧的linux-apache完整版(5M大小的Apache服务器)

在任何一个floopy-linux上安装个apache应该都不会很大的。
大家可能刚刚从LFS过程出来,没有做过floopy-linux,没有用过busybox。对任何可以启动的内核都比较感兴趣,但LFS不是为了做个可以启动的内核!

linux-kernel <1.5M
busybox(shell,httpd)<1M,静态编译
这二者加起来不到2.5M。也称的上体积小巧的linux-http服务器完整版,不过没有意义,至少和LFS是风马牛不相及!

能称的上是LFS-linux,必须有第5章的所有软件。
不然,在你的linux上make 个mpg123出来看看?不行吧。
不行就不能称LFS,小不是LFS,能boot也不是LFS。

我贴的“另一种安装LFS”,之所以失败,就是我的Linux上make不出来任何src!

玩LFS,就是玩的toolchain,玩的依赖关系。任何没有make-toolchain的linux都不能和LFS沾亲。ubuntn就是个典型,居然连GCC都没有。

或许是大家对LFS理解的角度不同,仁者见仁,智者见智!
单从字面上,一个没有toolchain的linux还是不要成为LFS比较好:)







__________________
=============================
我的blog:
http://blog.21ic.com/blog.asp?name=good02xaut
=============================
sound,video,or net,just all.
LFS-SVN20060123安装完成
LFS ID:17037
  good02xaut 当前离线   回复时引用此帖
发表新主题 回复


主题工具

发帖规则
您 [不可以] 发表新主题
您 [不可以] 回复主题
您 [不可以] 上传附件
您 [不可以] 编辑您的帖子

已 [启用] BB 代码
已 [启用] 表情符号
已 [启用] IMG 代码
已 [禁用] HTML 代码
[论坛跳转…]


所有时间均为[北京时间]。现在的时间是 17:37


Powered by vBulletin 版本 3.6.8
版权所有 ©2000 - 2012, Jelsoft Enterprises Ltd.
官方中文技术支持: vBulletin 中文
版权所有 ©2002 - 2011, LinuxSir.Org