corbin,

i've finally discovered the problem with this.

it turns out that there were a set of stale .so files in /usr/iocal/bin/ installed in the year 2015. i discovered this by running:

ebuild /usr/portage/net-libs/webkit-gtk/webkit-gtk-2.14.5.ebuild configure

the resulting ninja files showed that's where it was sourcing libsqlite3.so. moving it out of the way solved the issue. its a complete mystery why it would look for libs in a bin directory or why portage would prefer /usr/local over the standard paths.

anyway, thanks for your thoughts and sorry for the long turnaround.

kelly



On 02/07/2017 06:23 PM, Corbin Bird wrote:
On 02/07/2017 09:55 AM, kelly hirai wrote:

On 02/06/2017 06:31 PM, Corbin Bird wrote:
On 02/06/2017 01:09 PM, kelly hirai wrote:
hello fellow gentoo-users,

    for about a month now, i have not been able to make
webkit-gtk-2.14.[2,3] compile. it terminates at the linking step
complaining it cant find some sqlite functions.

./configure phase reports sqlite3 availability

-- Checking for module 'sqlite3'
--   Found sqlite3, version 3.13.0
-- Found Sqlite: /usr/include

but when it comes time to do the linking it cant find it:

FAILED: : && /usr/bin/x86_64-pc-linux-gnu-g++  -fPIC -march=native -O2
-pipe -fno-strict-aliasing -std=c++1y -Wl,--no-undefined -Wl,-O1
-Wl,--as-needed -Wl,--no-keep-memory -fuse-ld=gold
-Wl,--disable-new-dtags -fuse-ld=gold -Wl,--disable-new-dtags
-Wl,--version-script,/var/tmp/portage/net-libs/webkit-gtk-2.14.2/work/webkitgtk-2.14.2/Source/cmake/gtksymbols.filter

-shared -Wl,-soname,libwebkit2gtk-4.0.so.37 -o
lib/libwebkit2gtk-4.0.so.37.14.9 @CMakeFiles/WebKit2.rsp && :
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/sql/SQLiteDatabase.cpp.o):SQLiteDatabase.cpp:function

void
std::__once_call_impl<std::_Bind_simple<WebCore::initializeSQLiteIfNecessary()::{lambda()#1}

()> >(): error: undefined reference to 'sqlite3_initialize'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/sql/SQLiteDatabase.cpp.o):SQLiteDatabase.cpp:function

void
std::__once_call_impl<std::_Bind_simple<WebCore::initializeSQLiteIfNecessary()::{lambda()#1}

()> >(): error: undefined reference to 'sqlite3_errstr'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/sql/SQLiteDatabase.cpp.o):SQLiteDatabase.cpp:function

WebCore::SQLiteDatabase::setCollationFunction(WTF::String const&,
std::function<int (int, void const*, int, void const*)>): error:
undefined reference to 'sqlite3_create_collation_v2'
lib/libWebCoreGTK.a(lib/../Source/WebCore/CMakeFiles/WebCore.dir/platform/sql/SQLiteDatabase.cpp.o):SQLiteDatabase.cpp:function

WebCore::SQLiteDatabase::removeCollationFunction(WTF::String const&):
error: undefined reference to 'sqlite3_create_collation_v2'
collect2: error: ld returned 1 exit status

the symbols seem to be in the library:

strings /usr/lib32/libsqlite3.so | grep  create_collation_
sqlite3_create_collation_v2

strings /usr/lib64/libsqlite3.so | grep  create_collation_
sqlite3_create_collation_v2

i'm stumped here. i don't see any explicit linking flags. the
@CMakefiles/WebKit2.rsp doesn't make sense to me, maybe its in there?

k.
Please post the USE flags set for all the following :  "dev-db/sqlite:3"
and "net-libs/webkit-gtk:2", "net-libs/webkit-gtk:3",
"net-libs/webkit-gtk:4". ( Yes, webkit-gtk has three slots. 3 slots = 3
possible different sets of use flags. )

Corbin

thanks for looking at this Corbin. :)

[I] net-libs/webkit-gtk
      Available versions:
      (3)    2.4.11-r1(3/25)
      (2)    2.4.11-r200
      (4)    2.12.5(4/37)^t ~2.14.2(4/37)^t ~2.14.3(4/37)^t
        {(+)X aqua coverage debug doc +egl +geoloc +geolocation gles2
gnome-keyring +gstreamer +introspection +jit libnotify nsplugin
+opengl spell test wayland +webgl
      Installed versions:
     2.4.11-r1(3)(01:04:58 PM 01/13/2017)(X egl geolocation
gnome-keyring gstreamer introspection jit opengl spell webgl -aqua
-coverage -debug -gles2 -test -wayland)
     2.12.5(4)^t(01:07:41 AM 12/13/2016)(X egl geolocation
gnome-keyring gstreamer introspection jit libnotify opengl spell webgl
-aqua -coverage -doc -gles2 -nsplugin -test -wayland)

[I] dev-db/sqlite
      Available versions:  (3) 3.12.0 ~3.12.1 ~3.12.2 3.13.0 ~3.14.1
~3.14.2 ~3.15.1 ~3.15.2 ~3.16.2
        {debug doc icu +readline secure-delete static-libs tcl test
tools ABI_MIPS="n32 n64 o32" ABI_PPC="32 64" ABI_S390="32 64"
ABI_X86="32 64 x32"}
      Installed versions:  3.13.0(3)(11:35:43 AM 02/06/2017)(readline
-debug -doc -icu -secure-delete -static-libs -tcl -test -tools
ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64"
ABI_X86="32 64 -x32")


-------------
I just compiled / installed webkit-gtk-2.14.3 with no problems.

It replaced this version of webkit :
[ebuild   R    ] net-libs/webkit-gtk-2.12.5:4/37::gentoo  USE="(X)
coverage egl geolocation gnome-keyring gstreamer introspection libnotify
nsplugin opengl spell wayland webgl (-aqua) -doc -gles2 -jit {-test}" 0 KiB


These are the USE flags and package versions on my system :
[ebuild   R   ~] dev-db/sqlite-3.16.2:3::gentoo  USE="icu readline
secure-delete static-libs tcl tools -debug -doc {-test}" ABI_X86="32
(64) (-x32)" 0 KiB
[ebuild   R   ~] net-libs/webkit-gtk-2.14.3:4/37::gentoo  USE="(X)
coverage egl geolocation gnome-keyring gstreamer introspection libnotify
nsplugin opengl spell wayland webgl (-aqua) -doc -gles2 -jit {-test}" 0 KiB

-------------

Suggestion : reinstall sqlite with the following USE flags "tools" +
"static-libs" + "icu" in "package.use" for sqlite, then attempt
compiling webkit-gtk.

I will be very surprised if webkit doesn't find the necessary sqlite
deps, after this update.

Corbin





--
Kelly Hirai
Computer Research Specialist
409 Love Building  (850)-644-1550
Earth Ocean and Atmospheric Science
Florida State University


Reply via email to