There's not 'just' GNU tar, BSD tar, star, etc. might show different behaviours in corner cases.
For actually using the to-be-decompressed rootfs, --numeric-owner, --selinux and --xattrs (as well as using uid=0 for 3.) might be worth considering as well.
star: Operation not supported. Cannot create symbolic link './usr/sbin/ntpd' to '../../bin/busybox'.
star: Operation not supported. Cannot create symbolic link './var' to 'tmp'.
star: Operation not supported. Cannot create symbolic link './www/cgi-bin/cgi-backup' to '../../usr/libexec/cgi-io'.
star: Operation not supported. Cannot create symbolic link './www/cgi-bin/cgi-download' to '../../usr/libexec/cgi-io'.
star: Operation not supported. Cannot create symbolic link './www/cgi-bin/cgi-exec' to '../../usr/libexec/cgi-io'.
star: Operation not supported. Cannot create symbolic link './www/cgi-bin/cgi-upload' to '../../usr/libexec/cgi-io'.
star: Operation not supported. Cannot create symbolic link './www/luci-static/bootstrap-dark' to 'bootstrap'.
star: Operation not supported. Cannot create symbolic link './www/luci-static/bootstrap-light' to 'bootstrap'.
star: 1047 blocks + 0 bytes (total of 10721280 bytes = 10470.00k).
star: The following problems occurred during archive processing:
star: Cannot: stat 0, open 192, read/write 0, chdir 0, iconv 0.
star: Size changed 0.
star: Missing links 0, Name too long 0, File too big 0, Not dumped 0.
star: Skipped for security reason: path name 0, link name 14.
star: See option -secure-links on why some links have been skipped.
star: Processed all possible files, despite earlier errors.
This is a GNU Makefile with a set of scripts and configuration files that generates a bootable ISO file with a working Linux distribution. This minimal distribution gets completely loaded into memory.
you already have that file on hand (premade, not in an ISO format though ...),
but it doesn't "only" load into memory, for that you'd need a different kind of image.
you have no problem with openwrt tar. you don't have problem with freebsd's tar (bsdtar).
you want to run mfslinux tool which fails for some reason. is this the real problem?
if so i don't see why you seek help here and not at mfslinux.
( by the way you do not seem to follow the building instructions: according to doc 4 things are required on freebsd, star is not one of them. bsdtar is needed. but doc is incorrect anyway because you'll need gmake too.)
( hint: bsdtar seems to work, i am using the default bsdtar. but there is/are other problem(s) with the tool.
note: my bad. it does say requires root. pls ignore it requires root access which is weird but probably acceptable due to linux64 module is used with chroot yet not documented.
but as you can see the package list is not up-to-date either.
$ freebsd-version
13.1-RELEASE-p3
$ tar --version
bsdtar 3.6.0 - libarchive 3.6.0 zlib/1.2.12 liblzma/5.2.5 bz2lib/1.0.8 libzstd/1.4.8
$ sudo gmake VERBOSE=1
echo "Removing packages"
Removing packages
/bin/mkdir -p /tank/.etc/mfslinux/work/openwrt_root/tmp/lock
if [ -f "/tank/.etc/mfslinux/config/openwrt_packages_remove" ]; then \
PACKAGES_REMOVE=`/bin/cat /tank/.etc/mfslinux/config/openwrt_packages_remove`; \
else \
PACKAGES_REMOVE=`/bin/cat /tank/.etc/mfslinux/config/default/openwrt_packages_remove`; \
fi; \
env PATH="/usr/sbin:/usr/bin:/sbin:/bin" /usr/local/bin/opkg-cl --chroot /tank/.etc/mfslinux/work/openwrt_root oarch:1 --add-arch x86_64:10 --conf /etc/opkg.conf \
remove $PACKAGES_REMOVE
Removing package luci-ssl from root...
Removing package luci from root...
Removing package luci-theme-bootstrap from root...
Removing package luci-proto-ppp from root...
Removing package luci-proto-ipv6 from root...
Removing package luci-mod-admin-full from root...
Removing package luci-app-firewall from root...
Removing package luci-mod-system from root...
Removing package luci-mod-status from root...
Removing package luci-mod-network from root...
Removing package luci-base from root...
Failed to connect to ubus
Removing package luci-lib-base from root...
Removing package luci-lib-ip from root...
Removing package luci-lib-jsonc from root...
Removing package luci-lib-nixio from root...
Removing package dnsmasq from root...
Failed to connect to ubus
Removing package uhttpd-mod-ubus from root...
Removing package uhttpd from root...
Failed to connect to ubus
Removing package liblucihttp-lua from root...
Removing package libustream-wolfssl20201210 from root...
/usr/bin/touch /tank/.etc/mfslinux/work/.remove_packages_done
if [ -f "/tank/.etc/mfslinux/config/openwrt_target_packages_add" ]; then \
PACKAGES_ADD=`/bin/cat /tank/.etc/mfslinux/config/openwrt_target_packages_add`; \
else \
PACKAGES_ADD=`/bin/cat /tank/.etc/mfslinux/config/default/openwrt_target_packages_add`; \
fi; \
PACKAGES_ADD=`echo $PACKAGES_ADD | /usr/bin/sed -e \
"s,%%KERNEL_VERSION%%,5.4.179,g"`; \
for PKG in $PACKAGES_ADD; do \
if [ ! -f /tank/.etc/mfslinux/download/${PKG} ]; then \
echo "Downloading: ${PKG}"; \
cd /tank/.etc/mfslinux/download && /usr/bin/fetch -q \
https://downloads.openwrt.org/releases/21.02.2/targets/x86/64//packages/${PKG}; \
if [ "$?" != "0" ]; then rm -f /tank/.etc/mfslinux/download/${PKG}; exit 1; fi; \
fi; \
done; \
if [ -f "/tank/.etc/mfslinux/config/openwrt_packages_add" ]; then \
PACKAGES_ADD=`/bin/cat /tank/.etc/mfslinux/config/openwrt_packages_add`; \
else \
PACKAGES_ADD=`/bin/cat /tank/.etc/mfslinux/config/default/openwrt_packages_add`; \
fi; \
for PKG in $PACKAGES_ADD; do \
PKGNAME=`basename $PKG`; \
if [ ! -f /tank/.etc/mfslinux/download/${PKGNAME} ]; then \
echo "Downloading: ${PKG}"; \
cd /tank/.etc/mfslinux/download && /usr/bin/fetch -q \
http://downloads.openwrt.org/releases/21.02.2/packages/x86_64//${PKG}; \
if [ "$?" != "0" ]; then rm -f /tank/.etc/mfslinux/download/${PKGNAME}; exit 1; fi; \
fi; \
done
Downloading: kmod-crypto-hash_5.4.179-1_x86_64.ipk
Downloading: kmod-crypto-null_5.4.179-1_x86_64.ipk
[..]
Downloading: base/libreadline8_8.1-1_x86_64.ipk
Downloading: base/zlib_1.2.11-4_x86_64.ipk
fetch: http://downloads.openwrt.org/releases/21.02.2/packages/x86_64//base/zlib_1.2.11-4_x86_64.ipk: Not Found
gmake: *** [Makefile:162: download_packages] Error 1 )