无忧启动论坛

标题: CDLinux更新遇到瓶颈,望好心人相助 [打印本页]

作者: 2011os_defend    时间: 2020-2-3 12:40
标题: CDLinux更新遇到瓶颈,望好心人相助
大家好!我还是CDLinux的后期更新/维护者(科学社),好不容易有这样一个春假更新一下,在家折腾了多天,还有些问题无法解决,眼看过几天又要上班了,所以想在开工前把余下的工作完成,望有时间有能力的前辈/朋友们相助,感激不尽!


现在有以下几个问题需要解决:


1,Mesa需要更新
          现在的版本是13.0.3,在新的amdgpu下会因为libEGL.so这个库太旧而颜色显示不正常(部份svg,png图标偏红色,任务栏/菜单栏偏红色)。前几天试了从zlib --> openssl --> cmake-3.16.3 --> llvm-4.0从头编译,结果卡在了llvm4.0这一步,花了近一天的时间编译出来了>18G的东西,本机内存只有8G,装不下这18G的庞然大物,于是终止了,没办法继续编译Mesa-18.0,也就没办法更新libEGL.so这个库。


2, 彻底关于ZRAM
          有朋友会说这个应该让操作系统来管理,我经过大量的测试发现,如果是正常安装的操作系统这种想法是对的,但对于LiveCD这个在内存跑的移动系统而言,要随时回收有限的内存资源,内存浪费对LiveCD绝对是致命的(不要怀疑我这个结论)。
          亲测Porteus v4.0无忧@wintoflash前辈定制的版本不管什么时候打开一个软件,关闭之后内存都能回收到刚进入系统时候的值,一直不解这个发行版本是如何做到的?具体情况请看下图:
         
          前一个ROOT中的zram.num_devices=4,后一个ROOT是grub2启动时应该传递给内核的参数zram.num_devices=0,按理说后面这个值0应该会替代前面个4,但似乎没有生效,所一直没能及时回收内存。如能解决此问题,CDLinux的稳定性将会更好。

3,libc更新到2.30
          这个我还没有着手做,估计也会遇到很多麻烦事,不更新很多软件没法编译。

4,内核更新到4.14 LTS
          查了不少资料,个人认为4.14是比较理想的内核版本,当然不更新保持现在的4.8.17也是可以的。

===========================

已完成的更新:
       A,libDRM更新到2.4.100
       B,sis-video开源驱动更新到最新版本
       C,amdgpu-video开源驱动更新到19.1.0
       D,ati-video开源驱动更新到19.1.0最新版本
       E,补齐若干编译需要的依赖

理想的情况是:Meas更新到17.3.x(没有找到这个版本的源码包),libc更新到2.30,kernel更新到4.14,ZRAM能通过grub启动参数来控制

虽然我着手维护CDLinux有6年多了,但真正从技术着手才1年,技术实在很有限。所以恳请有能者相助,在发行说明中会体现帮助者的鸣谢信息,真诚希望你我联手能创造出一个更好的移动Linux操作系统,造福社会。

联系获取最新构建的ISO(仅限提供帮助的朋友/开发者,普通用户请等待释放稳定版本):
QQ:334386453
邮件:334386453@qq.com
talk:http://kxs-co.gicp.net/talk/

作者: sghihor    时间: 2020-2-3 13:24
大大是想完善一个 稳定好用的 便携移动 Linux系统,

感觉Linux 要想通用性好,首先要支持ISO直接启动。

因为如果能ISO直接启动,会更便携。很多大大都会用pe的启动菜单

比如下载的您这个ISO,丢在PE启动自动菜单里,直接引导,就能进去用,那该多方便啊。

作者: crzwy    时间: 2020-2-3 13:35
二话不说,先支持
作者: 2011os_defend    时间: 2020-2-3 13:35
本帖最后由 2011os_defend 于 2020-2-3 13:40 编辑
匿名者 发表于 2020-2-3 13:23
你确定编译 mesa 必须需要有 llvm?

看起来应该可以不用 llvm 吧。

编译时有出错提示:llvm-config.....,具体我没记录出错信息,百度好几个比较详细的答案,都是更新llvm。安前辈的意思,可以改为Dllvm=false ?

另外使用slackware 14.2 的 Mesa 11.0.2应该是可以的,但我昨晚测试了一下性能,比Mesa-13.0.3差了不少。而测试slackware的当前版本,Mesa-19.0.x,在CDLinux上不能运行,tty1查看是libc版本低了。依赖环环相扣,有些编译到后面,连源码都找不到,无法继续下去。
选择17.x.x版本是因为比较了几个版本的Mesa,在体积与综合性上它比较适中。

感谢前辈回复!

作者: 2011os_defend    时间: 2020-2-3 13:38
sghihor 发表于 2020-2-3 13:24
大大是想完善一个 稳定好用的 便携移动 Linux系统,

感觉Linux 要想通用性好,首先要支持ISO直接启动。
...

先把系统做稳定,可靠了,再来解决启动问题,启动相关技术一直是是我的弱项,有空了会好好研究。也欢迎知道的朋友多多指教。
作者: 2011os_defend    时间: 2020-2-3 13:47
匿名者 发表于 2020-2-3 13:42
这年头,百度出来的Linux/编程相关的东西,基本上都是垃圾。
建议 必应/google。

自从中国禁Google后我就没成功用过google,搜到的是改hosts(DNS对应IP),但似乎都隐藏着不能很容易得到内容,这方面前辈能否给点帮助?比如把您的hosts文件关于google的部份复制给我?这样有利于我后期查找其它遇到的问题。
作者: 2011os_defend    时间: 2020-2-3 14:03
匿名者 发表于 2020-2-3 13:58
现在改hosts是不行的了.
另想办法吧.

**望前辈大方向指点一下
作者: sghihor    时间: 2020-2-3 14:07
本帖最后由 sghihor 于 2020-2-3 14:15 编辑

GitHUB里搜下 V·P ·N,海量的,或者码云等类似网站
作者: 2011os_defend    时间: 2020-2-4 18:05
sghihor 发表于 2020-2-3 14:07
GitHUB里搜下 V·P ·N,海量的,或者码云等类似网站

昨晚试了,到现在为止能用的没几个,有个好点的ssr,作者已停更,在CDLinux上能运行但没有成功翻,看了下缺少代理库,本想着安装,又引出了新的问题需要先解决。

感谢
作者: 2011os_defend    时间: 2020-2-4 18:14
2011os_defend 发表于 2020-2-3 13:35
编译时有出错提示:llvm-config.....,具体我没记录出错信息,百度好几个比较详细的答案,都是更新llvm。 ...

经测试,使用slackware官方的19.3.3,使用官方脚本构建没有成功,缺一大堆依赖。今天用了一天的时间来解决perl的XML::parser依赖,一直没能成功,还要麻烦前辈帮我看看出错信息,百度翻了个底,各种方法都用了,还是搞不定。

出错信息1,(手动编译XML::Parser-2.46):
===================
/usr/bin/ld: /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.5/../../../../lib/libexpat.a(xmlparse.o): relocation R_X86_64_PC32 against symbol `XML_ParserFree' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
Makefile:458: recipe for target '../blib/arch/auto/XML/Parser/Expat/Expat.so' failed
make[1]: *** [../blib/arch/auto/XML/Parser/Expat/Expat.so] Error 1
make[1]: Leaving directory '/home/cdl/Desktop/XML-Parser-2.46/Expat'
Makefile:596: recipe for target 'subdirs' failed
make: *** [subdirs] Error 2

这里有两个错误,一个是-fPIC,我试了make -j CFLGS=-fPIC,make不会工作,./configure时有效,make时好像无效,而编译XML::Parser-2.46目录里不是使用./configure,而是# perl Makefile.PL

第二个错误信息(编译Mesa,Thunar时都会遇到,xfce有些组件都会用到perl和python):

=============

checking for gmsgfmt... /usr/bin/msgfmt
checking for perl... /usr/bin/perl
checking for perl >= 5.8.1... 5.24.0
checking for XML::Parser... configure: error: XML::Parser perl module is required for intltool

最后一句,依赖上面一个,于是卡在这一步了。望前辈帮忙看看,谢谢!
作者: 2011os_defend    时间: 2020-2-4 20:44
本帖最后由 2011os_defend 于 2020-2-4 20:47 编辑
匿名者 发表于 2020-2-4 18:43
这里的意思应该是 libexpat 没有加 -fPIC 参数吧。

你不觉得手动查找依赖再编译很麻烦吗,用 sbop ...

我也偿试过用slack或debian的二进制

能编译的都自己编译,必竞编译出来的是最适合当前系统使用的,有些软件用别人会有问题,比如kchmviewer使用debian的有中文支持,但一点“打开”按钮就闪退;使用rmp的和slackware的版本,功能正常,但没有中文支持,总之用别人的都是缺这缺那的。另外底层的东西更依赖系统本身,用别人的二进制问题更多,我是想把这个系统做到尽善尽美......

2019年好多软件都使用python3和GTK3,GTK3的样式做得又大又丑,占屏幕空间,我觉得完全是在倒退,GTK2简单实用挺好啊,所以很多软件我选择使用GTK2来编译

“这里的意思应该是 libexpat 没有加 -fPIC 参数吧。”
这个在编译时不能手动干预,是XML::Parser的配置脚本完成的,我现在的水平还不知道怎么改代码加-fPIC参数。


作者: tylzqiqi    时间: 2020-3-28 12:24
支持支持。。cdlinux这个的确很不错




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3