Nathan Hartman wrote on Tue, 02 Mar 2021 14:32 +00:00:
> On Mon, Mar 1, 2021 at 6:36 PM Zube <z...@stat.colostate.edu> wrote:
> >
> > Trying to build 1.10.7 on CentOS 7 and failing.  1.10.6 builds fine.
> >
> > /usr/bin/ld: cannot find libsvn_fs_x-1.so.0: No such file or directory
> > collect2: error: ld returned 1 exit status
> > make: *** [build-outputs.mk:478: subversion/libsvn_fs_x/libsvn_fs_x-1.la] 
> > Error 1
> >
> > One difference between .6 and .7 is from the created (from config.log)
> > subversion/libsvn_fs_x/libsvn_fs_x.pc:
> >
> > 8,12c8,12
> > < Version: 1.10.7
> > < Requires: apr-util-1, apr-1
> > < Requires.private: libsvn_delta, libsvn_subr, libsvn_fs_util
> > < Libs: -L${libdir}  -lsvn_fs_x-1
> > < Cflags: -I${includedir}/subversion-1
> > ---
> > > Version: 1.10.6
> > > Requires:  apr-util-1 apr-1
> > > Requires.private:  libsvn_delta libsvn_subr libsvn_fs_util
> > > Libs: -L${libdir}  -lsvn_fs_x
> > > Cflags: -I${includedir}
> >
> > In the .libs directory in .6, the libraries are built:
> >
> > libsvn_fs_x-1.a
> > libsvn_fs_x-1.la
> > libsvn_fs_x-1.lai
> > libsvn_fs_x-1.so
> > libsvn_fs_x-1.so.0
> > libsvn_fs_x-1.so.0.0.0
> > libsvn_fs_x-1.so.0.0.0T
> >
> > But they are missing from the .7 build.  The .o files are in the
> > .libs directory, though.
> >
> > Any help is greatly appreciated.
> 
> Hello,
> 
> I've traced this to r1863987 and r1863990 on trunk, which were merged
> to the 1.10.x branch in r1866641.
> 
> Part of the change was to respect pkg-config(1)'s requirement of a
> comma-separated list, so you can see the commas being introduced in
> your diff above.
> 
> Another part of the change is in build/generator/gen_make.py, which is
> now adding the "-1" to "-lsvn_fs_x" making it "-lsvn_fs_x-1."
> 
> I don't think there is an error in these changes; rather, I think that
> an additional change is needed elsewhere to make the built libsvn_fs_x
> compliant.

I think our build process doesn't consume the .pc files at all, which
would explain why 1.10.6 is buildable despite the lack of commas.

However, I don't see any other relevant change, so…

> I haven't yet determined what/where that change should be, nor what
> workaround to suggest, but I wanted to reply with what I know so far.

… try applying the reverse of r1866641 to the source tree.  (Then, if you
correct .pc files, massage them by hand after configure runs.)

Alternatively, you could patch libsvn_fs_x out of the build entirely,
since it's an experimental component anyway.

I don't see a configure option for this.

One way is to patch fs_x mentions out of build.conf and Makefile.in and
re-run gen-make.py (normally done as part of autogen.sh, which in turn
is part of the build-from-checkout flow but not part of the build-from-
tarball flow).  However, there may well be an easier way which I'm
overlooking.

Karl's advice in
https://subversion.apache.org/docs/community-guide/building.html#configury
stems from [a Debian libtool patch](https://bugs.debian.org/291641),
IIRC, so it wouldn't be my first suspicion for a CentOS build failure…
but it's not impossible.

Cheers,

Daniel

Reply via email to