Date: Thu, 21 Oct 2021 07:40:36 -0700 From: Mark Millard via freebsd-current <freebsd-current@freebsd.org> To: gljennjohn@gmail.com Cc: freebsd-current <freebsd-current@freebsd.org> Subject: Re: Is dialog4ports built in/for releng/13.0 also supposed to work under main [so: 14]? It gets SIGSEGV in my context. Message-ID: <DAAA6F08-521B-4764-BCF7-73828B4DF593@yahoo.com> In-Reply-To: <20211021151438.7496a0d0@ernst.home> References: <0465422C-DA30-4421-85E7-17CACBF0356D.ref@yahoo.com> <0465422C-DA30-4421-85E7-17CACBF0356D@yahoo.com> <20211021151438.7496a0d0@ernst.home>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2021-Oct-21, at 06:14, Gary Jennejohn <gljennjohn@gmail.com> wrote: > On Thu, 21 Oct 2021 01:34:47 -0700 > Mark Millard via freebsd-current <freebsd-current@freebsd.org> wrote: >=20 >> I get the following crash (amd64 example shown), as reported >> via gdb afterwards. (devel/llvm13 is just an example context.) >>=20 >> gdb `which dialog4ports` devel/llvm13/dialog4ports.core >> . . . >> Core was generated by `/usr/local/bin/dialog4ports'. >> Program terminated with signal SIGSEGV, Segmentation fault. >> Address not mapped to object. >> #0 vfprintf_l (fp=3D0x4d4940, locale=3D0x8004d4128 = <__xlocale_global_locale>, fmt0=3D0x201f64 "\"%s\"", = ap=3Dap@entry=3D0x7fffffffcf00) at = /usr/main-src/lib/libc/stdio/vfprintf.c:281 >> 281 if ((fp->_flags & (__SNBF|__SWR|__SRW)) =3D=3D = (__SNBF|__SWR) && >> (gdb) bt >> #0 vfprintf_l (fp=3D0x4d4940, locale=3D0x8004d4128 = <__xlocale_global_locale>, fmt0=3D0x201f64 "\"%s\"", = ap=3Dap@entry=3D0x7fffffffcf00) at = /usr/main-src/lib/libc/stdio/vfprintf.c:281 >> #1 0x0000000800409283 in fprintf (fp=3D0x800411660 = <__stdio_cancel_cleanup>, fmt=3D0x7fffffffcdd0 "0\317\377\377\377\177") = at /usr/main-src/lib/libc/stdio/fprintf.c:57 >> #2 0x000000000020399d in main (argc=3D<optimized out>, = argv=3D<optimized out>) at dialog4ports.c:332 >> (gdb) quit >>=20 >> The crash happens after selecting OK but not after selecting Cancel. = The >> display is also odd before that (no line drawing, just odd text = instead), >> but is sufficient to be usable at that stage. >>=20 >=20 > This is an indication that something is missing in dialog4ports which > is required by FBSD-14 but not FBSD-13. I had a similar problem with > dialog4ports under FBSD-14 some weeks ago, because i had a really old > version installed. After upgrading it using the pkg repositories for > FBSD-14 all problems, in particular garbled text, disappeared. >=20 > IIRC there were updates to ncurses in FBSD-14 fairly recently which > would explain the problem with old versions of dialog4ports. I do (and did) my own port builds with poudriere-devel. See the version of ports below. In summary: my dialog4ports is=20 based on 4116dc2f of ports (CommitDate: 2021-10-17 21:52:37 +0000). However it was deliberately built in/for a releng/13.0 based context then also used under main [so:14]. For ports not requiring kernel vintage matching, newer systems versions generally allow running software built for older FreeBSD systems (going back a fair distance, anyway). dialog4ports does not appear to require kernel vintage matching. I do not install any ports requiring kernel vintage matching. >> I've not had any other of the ports that I built in/for releng/13.0 >> (and have used) fail to operate under main [so: under 14]. (But the >> variety used is not wide.) >>=20 >> For reference . . .=20 >>=20 >> # uname -apKU >> FreeBSD amd64_ZFS 14.0-CURRENT FreeBSD 14.0-CURRENT #3 = main-n249978-032448cd2c52-dirty: Fri Oct 8 23:57:23 PDT 2021 = root@amd64_ZFS:/usr/obj/BUILDs/main-amd64-nodbg-clang/usr/main-src/amd64.a= md64/sys/GENERIC-NODBG amd64 amd64 1400036 1400036 >>=20 >> (Not a debug build but has debug symbols enabled.) >>=20 >> # pwd >> /usr/ports >> # ~/fbsd-based-on-what-commit.sh=20 >> branch: main >> merge-base: 4116dc2f1f6385b42fb668badb6b4c1cbb195f9d >> merge-base: CommitDate: 2021-10-17 21:52:37 +0000 >> 4116dc2f1f63 (HEAD -> main, freebsd/main, freebsd/HEAD) = ports-mgmt/poudriere-devel: Update to 3.3.0-1022-g964cf327f >> n562472 (--first-parent --count for merge-base) The above indicates the vintage of ports that my dialog4ports build is based on (in detail): Not all that old at this point. >> # file `which dialog4ports` >> /usr/local/bin/dialog4ports: ELF 64-bit LSB executable, x86-64, = version 1 (FreeBSD), dynamically linked, interpreter = /libexec/ld-elf.so.1, for FreeBSD 13.0 (1300139), FreeBSD-style, with = debug_info, not stripped >>=20 >> # ldd `which dialog4ports` >> /usr/local/bin/dialog4ports: >> libncursesw.so.9 =3D> /lib/libncursesw.so.9 (0x800248000) >> libm.so.5 =3D> /lib/libm.so.5 (0x800281000) >> libdialog.so.9 =3D> /usr/lib/libdialog.so.9 (0x8002b8000) >> libc.so.7 =3D> /lib/libc.so.7 (0x8002f6000) >> libtinfow.so.9 =3D> /lib/libtinfow.so.9 (0x800703000) >>=20 >> Note: The dialog4ports is a non-debug build but with debug symbols, >> as is normal for my port builds via poudriere-devel . >>=20 >> As for the poudriere-devel build context for the ports: >>=20 >> # chroot /usr/obj/DESTDIRs/13_0R-amd64-poud/ >> # uname -apKU >> FreeBSD amd64_ZFS 14.0-CURRENT FreeBSD 14.0-CURRENT #3 = main-n249978-032448cd2c52-dirty: Fri Oct 8 23:57:23 PDT 2021 = root@amd64_ZFS:/usr/obj/BUILDs/main-amd64-nodbg-clang/usr/main-src/amd64.a= md64/sys/GENERIC-NODBG amd64 amd64 1400036 1300139 >>=20 >> # cd /usr/13_0R-src/ >> # ~/fbsd-based-on-what-commit.sh=20 >> branch: releng/13.0 >> merge-base: 940681634ee17d12225ecd722c07fef1a0bde813 >> merge-base: CommitDate: 2021-08-24 18:23:29 +0000 >> 940681634ee1 (HEAD -> releng/13.0, freebsd/releng/13.0) Add UPDATING = entries and bump version. >> n244760 (--first-parent --count for merge-base) >=20 >=20 >=20 =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?DAAA6F08-521B-4764-BCF7-73828B4DF593>