vernesong / OpenClash

A Clash Client For OpenWrt
MIT License
17.55k stars 3.18k forks source link

关于新增依赖 libcap-bin #839

Closed e6e6 closed 4 years ago

e6e6 commented 4 years ago

去官方的源看了下 https://github.com/openwrt/packages/blob/openwrt-19.07/libs/libcap/Makefile https://github.com/openwrt/packages/blob/master/libs/libcap/Makefile

似乎以后 openclash 开始只支持 openwrt 的 master分支了么?

lon91ong commented 3 years ago

有没有考虑出个精简的版本, 或者upx压缩过的也好, 现在的体积对使用SPI闪存的机型太不友好了! mipsel_24kc的libcap和libcap-bin

Richard-Licreat commented 3 years ago

官方快照源在不久前将 libcap 和 libcap-bin 更新为了 libcap-ng 和 libcap-ng-bin 现在我正遭遇这个问题,并且没有可供使用的包了 ( ´_ゝ`) 或者有无老歌可以提供一下 mipsel_24kc 架构的相关包?

被移了位置而已,snapshot的二进制包还没来得及编译出来,多等等 openwrt/openwrt@427acb7

现在已经出来了,修改下快照源,替换自己架构

src/gz snapshots https://downloads.openwrt.org/snapshots/packages/{architecture}/base

感谢老哥

VergilGao commented 3 years ago

19.07以及以下想要把依赖直接编译进依赖里,可以在update feeds之后手动下载21.02的libcap编译源码:

rm -rf feeds/packages/libs/libcap
svn co https://github.com/openwrt/packages/branches/openwrt-21.02/libs/libcap/ feeds/packages/libs/libcap

或者自行维护openwrt-packages

dukmonki commented 3 years ago

19.07以及以下想要把依赖直接编译进依赖里,可以在update feeds之后手动下载21.02的libcap编译源码:

rm -rf feeds/packages/libs/libcap
svn co https://github.com/openwrt/packages/branches/openwrt-21.02/libs/libcap/ feeds/packages/libs/libcap

或者自行维护openwrt-packages

为什么不用19.07?要用21.02?

VergilGao commented 3 years ago

19.07以及以下想要把依赖直接编译进依赖里,可以在update feeds之后手动下载21.02的libcap编译源码:

rm -rf feeds/packages/libs/libcap
svn co https://github.com/openwrt/packages/branches/openwrt-21.02/libs/libcap/ feeds/packages/libs/libcap

或者自行维护openwrt-packages

为什么不用19.07?要用21.02?

19.07的libcap-bin的编译选项有问题。

dukmonki commented 3 years ago

https://github.com/openwrt

https://github.com/openwrt/openwrt/tree/master/package/libs/libcap 用这个master的libcap行么?

dukmonki commented 3 years ago

19.07以及以下想要把依赖直接编译进依赖里,可以在update feeds之后手动下载21.02的libcap编译源码:

rm -rf feeds/packages/libs/libcap
svn co https://github.com/openwrt/packages/branches/openwrt-21.02/libs/libcap/ feeds/packages/libs/libcap

或者自行维护openwrt-packages

为什么不用19.07?要用21.02?

19.07的libcap-bin的编译选项有问题。

用你这个编译出来的2。43版本,最新的是2。48,就是主分支上的那个libcap,不知道行不行,目前的通用,就没有试着折腾了。

hitsmaxft commented 3 years ago

aarch64 系列的可以安装这些包, 比如 nanor2s 用户

https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/libcap_2.48-1_aarch64_cortex-a53.ipk https://downloads.openwrt.org/snapshots/packages/aarch64_cortex-a53/base/libcap-bin_2.48-1_aarch64_cortex-a53.ipk

链接失效的话从这里搜索最新的 https://downloads.openwrt.org/snapshots/packages/

tony-wh commented 3 years ago

For anyone not running snapshot build and looking for libcap and libcap-bin, download both packages from:

https://downloads.openwrt.org/snapshots/packages/${YOUR_ARCH}/packages

..., and install them manually.

Be sure to download both libcap and libcap-bin, since they need to be the same version.

For mips_24kc, the version of libcap&libcap-bin from this link is 2.51,it can't run on 18.06 with an error " __fstat_time64: symbol not found capsh". Then I try the version 2.43 from packages of 21.02, it works.

tony-wh commented 3 years ago

我是官方openwrt 18.06,libcap-bin怎么获取

可以用openwrt21.02 packages 里面的libcap&libcap-bin,在mips_24kc上亲测可用。 下载地址:https://downloads.openwrt.org/releases/21.02.0/packages/${YOUR_ARCH}/packages/

Radar-Lei commented 3 years ago

我是官方openwrt 18.06,libcap-bin怎么获取

可以用openwrt21.02 packages 里面的libcap&libcap-bin,在mips_24kc上亲测可用。 下载地址:https://downloads.openwrt.org/releases/21.02.0/packages/${YOUR_ARCH}/packages/

感谢指点。

lengxii commented 2 years ago

https://downloads.openwrt.org/snapshots/packages/x86_64/base/libcap-bin_2.51-1_x86_64.ipk

还是安装失败,这是咋回事呢 `root@OpenWrtPro:/tmp# opkg install libcap-bin_2.51-1_x86_64.ipk Installing libcap-bin (2.51-1) to root... Collected errors:

tony-wh commented 2 years ago

先手动把原来版本的libcap删掉

funcman commented 1 year ago

实测18.06.4的stable可以 手动下载 libcap libcap-bin两个包,ssh下安装使用 https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libcap_2.43-1_x86_64.ipk https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libcap-bin_2.43-1_x86_64.ipk

实测GL.iNet MT1300官方系统v3.215,使用: https://downloads.openwrt.org/releases/21.02.5/packages/mipsel_24kc/packages/libcap_2.43-1_mipsel_24kc.ipk https://downloads.openwrt.org/releases/21.02.5/packages/mipsel_24kc/packages/libcap-bin_2.43-1_mipsel_24kc.ipk 在安装之前,使用# opkg remove libcap --force-depends将系统本身的libcap卸载掉,然后手动安装ipk。 官方v3.215的OpenWrt版本比较老,是v19.07.8的。这个版本的官方ipk package里,libcap是v2.27-1,还没有libcap-bin,只能手工安装其他版本的libcap和libcap-bin。 当前snapshot里的v2.66-1版本的libcap,无法在MT1300的v3.215系统下运行,因为它依赖的libc,需求版本比v3.215(也就是OpenWrt的19.07.8)里的libc要高。 v3.215后面的版本用什么libcap和libcap-bin,届时也需要试验。v3.215之前的版本,配合什么libcap,思路也是如此。 运行一下capsh -h,如果跑不起来,那么OpenClash铁定也跑不起来。看报错,如果是报找不到symbol,很好办,往前找跑得起来的libcap版本即可。

funcman commented 1 year ago

https://downloads.openwrt.org/snapshots/packages/x86_64/base/libcap-bin_2.51-1_x86_64.ipk

还是安装失败,这是咋回事呢 `root@OpenWrtPro:/tmp# opkg install libcap-bin_2.51-1_x86_64.ipk Installing libcap-bin (2.51-1) to root... Collected errors:

  • check_data_file_clashes: Package libcap-bin wants to install file /usr/sbin/capsh But that file is already provided by package * libcap
  • check_data_file_clashes: Package libcap-bin wants to install file /usr/sbin/getcap But that file is already provided by package * libcap
  • check_data_file_clashes: Package libcap-bin wants to install file /usr/sbin/getpcaps But that file is already provided by package * libcap
  • check_data_file_clashes: Package libcap-bin wants to install file /usr/sbin/setcap But that file is already provided by package * libcap
  • opkg_install_cmd: Cannot install package libcap-bin. `

把装错的libcap和libcap-bin先卸载掉,然后装版本相同的libcap和libcap-bin。 我估计要这么解决。

wh054 commented 1 year ago

实测18.06.4的stable可以 手动下载 libcap libcap-bin两个包,ssh下安装使用 https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libcap_2.43-1_x86_64.ipk https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libcap-bin_2.43-1_x86_64.ipk

实测GL.iNet MT1300官方系统v3.215,使用: https://downloads.openwrt.org/releases/21.02.5/packages/mipsel_24kc/packages/libcap_2.43-1_mipsel_24kc.ipk https://downloads.openwrt.org/releases/21.02.5/packages/mipsel_24kc/packages/libcap-bin_2.43-1_mipsel_24kc.ipk 在安装之前,使用# opkg remove libcap --force-depends将系统本身的libcap卸载掉,然后手动安装ipk。 官方v3.215的OpenWrt版本比较老,是v19.07.8的。这个版本的官方ipk package里,libcap是v2.27-1,还没有libcap-bin,只能手工安装其他版本的libcap和libcap-bin。 当前snapshot里的v2.66-1版本的libcap,无法在MT1300的v3.215系统下运行,因为它依赖的libc,需求版本比v3.215(也就是OpenWrt的19.07.8)里的libc要高。 v3.215后面的版本用什么libcap和libcap-bin,届时也需要试验。v3.215之前的版本,配合什么libcap,思路也是如此。 运行一下capsh -h,如果跑不起来,那么OpenClash铁定也跑不起来。看报错,如果是报找不到symbol,很好办,往前找跑得起来的libcap版本即可。

感谢!! 已解决问题