You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@subversion.apache.org by "Daniel Sahlberg (Jira)" <ji...@apache.org> on 2022/06/25 14:24:00 UTC

[jira] [Commented] (SVN-4901) Parallel 'make -j$(nproc) install' may fail due to missing dependency

    [ https://issues.apache.org/jira/browse/SVN-4901?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17558782#comment-17558782 ] 

Daniel Sahlberg commented on SVN-4901:
--------------------------------------

Copying from the ML:

$ make distclean
$ ./autogen.sh
# Obviously, replace --prefix with something usable on your system!
$ ./configure --with-berkeley-db --prefix=/home/dsg/4901 
$ make install-bdb-lib
# Output:
# /usr/bin/install -c -d /home/dsg/4901/lib /home/dsg/4901/share/pkgconfig
# cd subversion/libsvn_fs_base ; /bin/bash "/home/dsg/svn_4901/libtool" --mode=install /usr/bin/install -c libsvn_fs_base-1.la /home/dsg/4901/lib/ libsvn_fs_base-1.la
# libtool: warning: relinking 'libsvn_fs_base-1.la'
# libtool: install: (cd /home/dsg/svn_4901/subversion/libsvn_fs_base; /bin/bash "/home/dsg/svn_4901/libtool" --tag CC --silent --mode=relink gcc -g -O2 -rpath /home/dsg/4901/lib -version-info 0 -Wl,--no-undefined -o libsvn_fs_base-1.la bdb/bdb-err.lo bdb/bdb_compat.lo bdb/changes-table.lo bdb/checksum-reps-table.lo bdb/copies-table.lo bdb/dbt.lo bdb/env.lo bdb/lock-tokens-table.lo bdb/locks-table.lo bdb/miscellaneous-table.lo bdb/node-origins-table.lo bdb/nodes-table.lo bdb/reps-table.lo bdb/rev-table.lo bdb/strings-table.lo bdb/txn-table.lo bdb/uuids-table.lo dag.lo err.lo fs.lo id.lo key-gen.lo lock.lo node-rev.lo reps-strings.lo revs-txns.lo trail.lo tree.lo util/fs_skels.lo uuid.lo ../../subversion/libsvn_delta/libsvn_delta-1.la ../../subversion/libsvn_subr/libsvn_subr-1.la -L/usr/lib/x86_64-linux-gnu -laprutil-1 -L/usr/lib/x86_64-linux-gnu -lapr-1 -ldb-5.3 ../../subversion/libsvn_fs_util/libsvn_fs_util-1.la )
# /usr/bin/ld: cannot find -lsvn_fs_util-1
# collect2: error: ld returned 1 exit status
# libtool: error: error: relink 'libsvn_fs_base-1.la' with the above command before installing it
# make: *** [build-outputs.mk:1422: install-bdb-lib] Error 1

# Fix; Same as above but run install-fsmod-lib first:
$ make install-fsmod-lib
$ make install-bdb-lib
# Installs correctly

 

How about:

[[[

Index: build.conf
===================================================================
--- build.conf  (revision 1902243)
+++ build.conf  (working copy)
@@ -288,6 +288,7 @@
 sources = *.c bdb/*.c util/*.c
 install = bdb-lib
 libs = libsvn_delta libsvn_subr aprutil apriconv apr bdb libsvn_fs_util
+add-install-deps = $(SVN_FS_LIB_INSTALL_DEPS)
 msvc-export = ../libsvn_fs_base/fs_init.h
 msvc-delayload = yes

]]]

> Parallel 'make -j$(nproc) install' may fail due to missing dependency
> ---------------------------------------------------------------------
>
>                 Key: SVN-4901
>                 URL: https://issues.apache.org/jira/browse/SVN-4901
>             Project: Subversion
>          Issue Type: Bug
>          Components: compile
>    Affects Versions: 1.14.2
>         Environment: NixOS Linux
> GNU Make with new upcoming (as of June 2022) --shuffle option; reported to occur with {{{}--shuffle=1656015674{}}}.
>            Reporter: Nathan Hartman
>            Assignee: Nathan Hartman
>            Priority: Minor
>
> GNU Make is introducing (landed in GNU Make's repo June 2022) a new --shuffle option to expose build system failures that may surface during parallel builds.
> When running a parallel 'make install', e.g., 'make -j$(nproc) install', Subversion's Makefile reportedly assumes that the {{install-fsmod-lib}} target runs before the {{install-bdb-lib}} target, which may not be the case if the order happens to be reversed during a parallel build.
> See dev@ email "'make -j install' fails for missing depends" on 23 Jun 2022, archived [https://lists.apache.org/thread/xpktqb1o3wvyk7o1kojm8d594fqo1qgr] and other places.
> (Reported by Sergei Trofimovich <slyich \{AT} gmail \{dot} com>; issue filed by Nathan Hartman.)



--
This message was sent by Atlassian Jira
(v8.20.7#820007)