Den mån 1 nov. 2021 kl 09:32 skrev Gretton, Liam <liam.gret...@leicester.ac.uk>: > > I'm rebuilding our Subversion server, getting it up to date after a fair > period of neglect. > > > > I'm finding that 1.41.1 has a problem somewhere in its SQLite code and fails > at the make stage. 1.10.7 succeeds with exactly the same build process and > dependencies. > > > > I'm using CentOS 7, but with Apache 2.4.8, APR 1.7.0, APR-util 1.6.1 and > SQLite 3.36.0. > > > > cd subversion-1.14.1 > > unzip ../sqlite-amalgamation-3360000.zip > > mv sqlite-amalgamation-3360000.zip sqlite-amalgamation > > > > ./configure --prefix=/local/software/subversion-1.14.1 \ > > --with-lz4=internal \ > > --with-utf8proc=internal \ > > --with-apxs=/local/software/httpd/bin/apxs \ > > --with-apr=/local/software/bin \ > > --with-apr-util=/local/software/bin > > make > > > > … > > > > In file included from subversion/libsvn_subr/sqlite3wrapper.c:63:0: > > /home/liam/downloads/subversion-1.14.1/sqlite-amalgamation/sqlite3.c:38012:12: > warning: ‘unixFcntlExternalReader’ used but never defined [enabled by > default] > > static int unixFcntlExternalReader(unixFile*, int*); > > > > … > > > > .libs/sqlite3wrapper.o: In function `unixFileControl': > > /home/liam/downloads/subversion-1.14.1/sqlite-amalgamation/sqlite3.c:38131: > undefined reference to `unixFcntlExternalReader' > > /usr/bin/ld: .libs/sqlite3wrapper.o: relocation R_X86_64_PC32 against > undefined symbol `unixFcntlExternalReader' can not be used when making a > shared object; recompile with -fPIC > > /usr/bin/ld: final link failed: Bad value > > collect2: error: ld returned 1 exit status > > make: *** [subversion/libsvn_subr/libsvn_subr-1.la] Error 1 > > > > Any idea what I can do to get past this?
Hi! I reproduce this behaviour. As far as I can tell this is a bug in SQLite. The offending function was added 2021-04-02 [1] and it seems to be hidden by #ifdef SQLITE_OMIT_WAL. There is a reference to the same error in the SQLite forums [2] with a suggestion to leave out SQLITE_OMIT_WAL on compilation. It seems to be possible to restore the old behaviour by reverting our r1865523 (which is defining SQLITE_OMIT_WAL, triggering the build failure). I'm adding Evgeny Kotkov, author of r1865523, for a second pair of eyes, but I don't think that we are doing anything wrong. I think it should also be possible to use an older version of SQLite (released before 2021-04-02). Kind regards, Daniel [1] https://sqlite.org/src/info/e16da5af822ef31d [2] https://sqlite.org/forum/info/f4640ddef932093c