Modify

Opened 2 years ago

Last modified 2 years ago

#21427 new defect

Upgrading OPKG package manager / bug in opkg package manager

Reported by: YasharF Owned by: developers
Priority: normal Milestone:
Component: packages Version: Trunk
Keywords: Cc:

Description

The current OPKG package manager is based on an ancient version from 2011(?). In a recent Entware-ng update I found out that the current opkg manager in OpenWRT trunk has a bug in its dependency-orphan logic (see https://github.com/Entware-ng/Entware-ng/issues/63#issuecomment-166228226) but when looking at Yakto's source I found out there have been many changes to the underlying functions compared to where the OpenWRT opkg is.

Can you please either upgrade the opkg package manager or backport the dependency calculations for orphaned packages during execution of "opkg upgrade"?

For your reference:

Attachments (2)

diff.txt (98.1 KB) - added by YasharF 2 years ago.
opkg_remove.c changes in opkg since the current version in OpenWrt Trunk (v0.1.8)
diff.2.txt (98.1 KB) - added by YasharF 2 years ago.
opkg_remove.c changes in opkg since the current version in OpenWrt Trunk (v0.1.8)

Download all attachments as: .zip

Change History (4)

Changed 2 years ago by YasharF

opkg_remove.c changes in opkg since the current version in OpenWrt Trunk (v0.1.8)

Changed 2 years ago by YasharF

opkg_remove.c changes in opkg since the current version in OpenWrt Trunk (v0.1.8)

comment:1 Changed 2 years ago by YasharF

(sorry for the duplicate attachment, diff.txt and diff.2.txt are the same file)

comment:2 Changed 2 years ago by YasharF

A note on upgrading Opkg package manager:
I made an attempt to see if I can compile the latest version of opkg. Got blocked with missing libarchive. I think this is as the result of the commit: http://git.yoctoproject.org/cgit/cgit.cgi/opkg/commit/?id=55a5c61

but it looks like that libarchive is already there

: find -name "libarchive"
./feeds/packages/libs/libarchive
./build_dir/host/cmake-2.8.12.2/Utilities/cmlibarchive/libarchive
./package/feeds/packages/libarchive

...
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking pkg-config is at least version 0.20... yes
checking for LIBARCHIVE... no
configure: error: Package requirements (libarchive) were not met:

No package 'libarchive' found

Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.

Alternatively, you may set the environment variables LIBARCHIVE_CFLAGS
and LIBARCHIVE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
make[2]: *** [/Workspace/entware/openwrt_trunk/build_dir/target-mipsel-linux-gnu/opkg-unsigned/opkg-a9b532850ce7ff9688ed378c2a1b190cc1d661ec/.configured_nyyyynyyyy] Error 1
make[2]: Leaving directory `/Workspace/entware/openwrt_trunk/package/system/opkg'
make[1]: *** [package/system/opkg/compile] Error 2
make[1]: Leaving directory `/Workspace/entware/openwrt_trunk'
make: *** [package/system/opkg/compile] Error 2

Last edited 2 years ago by YasharF (previous) (diff)

Add Comment

Modify Ticket

Action
as new .
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.