coolsnowwolf/lede

编译为m时候无法取消 samba

zhangguanzhang opened this issue · 12 comments

反馈bug/问题模板,提建议请删除

1.关于你要提交的问题

Q:是否搜索了issue (使用 "x" 选择)

  • 没有类似的issue

2. 详细叙述

1

(1) 具体问题

A:

root@guan:/home/guanzhang/lede# grep samba .config | grep -v '#'
CONFIG_DEFAULT_autosamba=y
CONFIG_PACKAGE_autosamba=m
CONFIG_PACKAGE_luci-app-samba=m
CONFIG_PACKAGE_luci-app-samba4=m
CONFIG_PACKAGE_luci-i18n-samba-en=m
CONFIG_PACKAGE_luci-i18n-samba-zh-cn=m
CONFIG_PACKAGE_luci-i18n-samba4-en=m
CONFIG_PACKAGE_luci-i18n-samba4-zh-cn=m
CONFIG_PACKAGE_samba36-server=m
CONFIG_PACKAGE_samba4-libs=m
CONFIG_PACKAGE_samba4-server=m

这样编译出来还是带 NASsamba ,尝试过无法取消 CONFIG_DEFAULT_autosamba=y ,搜了下 MakefileConfig.in 之类的文件,找不到这个CONFIG_DEFAULT_autosamba=y 怎么生成的

(2) 路由器型号和固件版本

A:arm64 的 r2s

CONFIG_TARGET_rockchip=y
CONFIG_TARGET_rockchip_armv8=y
CONFIG_TARGET_rockchip_armv8_DEVICE_friendlyarm_nanopi-r2s=y

(3) 详细日志

A:1

那是target的默认包,不想要删除就是了 ,再x86文件夹里面

关闭Extra packages -> autosamba
然后就可以关闭Luci->application->luci-app-samba了

关闭Extra packages -> autosamba 然后就可以关闭Luci->application->luci-app-samba了

不是关闭,是选择为M编译成ipk,最后确带到固件里默认安装了

关闭Extra packages -> autosamba 然后就可以关闭Luci->application->luci-app-samba了

不是关闭,是选择为M编译成ipk,最后确带到固件里默认安装了

都能关了那多按一下改成M不就得了

关闭Extra packages -> autosamba 然后就可以关闭Luci->application->luci-app-samba了

不是关闭,是选择为M编译成ipk,最后确带到固件里默认安装了

都能关了那多按一下改成M不就得了

你真的有认真看过一楼的那个.config 是啥吗

那是target的默认包,不想要删除就是了 ,再x86文件夹里面

不是不要,是要编译成ipk,但是不安装部分ipk,为模块的这些ipk在编译的第二阶段打包到固件里做本地源

@zhangguanzhang 这个简单 你先配置成编译 然后再配置成m 然后对比两个区别 这样就应该可以了

@zhangguanzhang 这个简单 你先配置成编译 然后再配置成m 然后对比两个区别 这样就应该可以了

对比就截图的那几行

kltk commented

对于 acrh17, autosamba 在 target/linux/ipq40xx/Makefile 里面
menuconfig 取消后还是会有依赖项目被编译,所以我习惯先 patch 取消一些不通用的默认项,再根据需要自己加

https://github.com/kltk/openwrt-builder/blob/main/profiles/default/patches/include-target.mk.patch
https://github.com/kltk/openwrt-builder/blob/main/profiles/default/patches/target-linux-ipq40xx-Makefile2.patch

感谢大佬@kltk ,find了下找到了,应该是这些target 的 Makefile被 include了

root@guan:/home/guanzhang/lede# find -type f -exec grep -l 'autosamba' {} \;
./.git/objects/pack/pack-ed01e532ddd502ede39df362e2df77fe2cec3887.pack
./.git/index
./package/lean/autosamba/Makefile
./target/linux/ipq40xx/Makefile
./target/linux/ipq806x/Makefile
./target/linux/mvebu/image/cortexa9.mk
./target/linux/rockchip/Makefile
./target/linux/x86/Makefile
^C

root@guan:/home/guanzhang/lede# cat ./target/linux/rockchip/Makefile
...
DEFAULT_PACKAGES += uboot-envtools partx-utils e2fsprogs mkf2fs kmod-gpio-button-hotplug \
		    automount autocore-arm autosamba fdisk cfdisk e2fsprogs ethtool haveged htop \
		    luci-app-zerotier luci-app-ipsec-vpnd
...

暂时这样 hack 下了

# 取消默认的 autosamba 依赖的 luci-app-samba 到 slim 里
find  ./target/linux/ -maxdepth 2 -type f  -name Makefile -exec sed -i 's#autosamba##' {} \;

好像你取消掉,他并不会把它这个软件包的依赖给自动取消掉

按照上面我的find 和 sed那个编译出来的确实是去掉了,大家不要再回复了,就是这样弄