Re: ffi errors building gobject-introspection
Connor McLaughlan <[email protected]> Fri, 24 Mar 2023 02:54:00 +0100
| Newsgroups | gmane.os.netbsd.ports.sparc64 |
|---|---|
| Message-ID | <CABo1Du7afmKMJ+7svcccWx=j2URuezHYZNomcSOmj+Qrr=xkzg@mail.gmail.com> |
On Fri, Mar 24, 2023 at 12:45 AM Greg Troxel <[email protected]> wrote: > > Riccardo Mottola <[email protected]> writes: > > > glib2 doesn't have any dependencies on it, however linking fails at this > > incriminate file: > > ld: warning: libffi.so.7, needed by /usr/pkg/lib/libgirepository-1.0.so.1 > > > > /usr/pkg/lib/libgirepository-1.0.so: > > -lglib-2.0.0 => /usr/pkg/lib/libglib-2.0.so.0 > > -lpcre2-8.0 => /usr/pkg/lib/libpcre2-8.so.0 > > -lc.12 => /usr/lib/libc.so.12 > > -lintl.1 => /usr/lib/libintl.so.1 > > -lgcc_s.1 => /usr/lib/libgcc_s.so.1 > > -lpthread.1 => /usr/lib/libpthread.so.1 > > -lgobject-2.0.0 => /usr/pkg/lib/libgobject-2.0.so.0 > > -lffi.8 => /usr/pkg/lib/libffi.so.8 > > -lgmodule-2.0.0 => /usr/pkg/lib/libgmodule-2.0.so.0 > > -lgio-2.0.0 => /usr/pkg/lib/libgio-2.0.so.0 > > -lz.1 => /usr/pkg/lib/libz.so.1 > > -lffi.7 => not found > > -lm.0 => /usr/lib/libm.so.0 > > > > wow, it tries to link in two libffi versions? > > And where does this package come from? > > > > $ pkg_info -Fe /usr/pkg/lib/libgirepository-1.0.so > > gobject-introspection-1.68.0 > > > > $ ls -l /usr/pkg/lib/libgirepository-1.0.so > > lrwxr-xr-x 1 root wheel 24 Oct 18 2021 > > /usr/pkg/lib/libgirepository-1.0.so -> libgirepository-1.0.so.1 > > > > so this is an old file. > > Exactly, the problem is the old installed version. > > > but gobject-introspection is really the package I am upgrading! Doe sit > > look as the package while uprading looks into its own installed version? > > I think it should use this: > > $ find . -name libgirepository-1.0.so > > ./gobject-introspection-1.74.0/output/girepository/libgirepository-1.0.so > > inside the workdir. Which, after a quick check is correctly linked to > > libffi.8 as expected. > > You are correct that it *should* use that. However, > gobject-introspection has been known to be broken in this way on macOS > for several years. I do not have memories of it failing on NetBSD. It > will need a makefile intervention to make sure the linking with the > newly-built lib is higher priority than /usr/pkg/lib. Maybe i did not fully describe what i meant :) I meant delete the old package or do a replace installation, so that libffi.so7 is not present anymore. Then install libffi.so.7 and rebuild the chain that uses it. Regards, Connor