ALL,
I'm trying to test my program on Linux.
I have a Gentoo box that recently was updated and now I'm trying to build my application. Before the update I was using wxWidgets-3.1.4 amd now after the update I built 3.1.7.
I usse Anjuta as an IDE, and wxWidgets for development.
Everything builds fine, but when runningI fet an error stating that the linker can't find the old version of the wx (from 3..4).
I did some checking and here is what I found:
When the libraries of my project are built everything is fine:
igor@IgorReinCloud ~/dbhandler/Debug/libdialogs $ ldd .libs/libdialogs.so | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f377cf7c000)
igor@IgorReinCloud ~/dbhandler/Debug/libdialogs $ cd ../libdbwindow/
igor@IgorReinCloud ~/dbhandler/Debug/libdbwindow $ ldd .libs/libdbwindow.so | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f0e058f9000)
igor@IgorReinCloud ~/dbhandler/Debug/libdbwindow $
But after I run make install
:
igor@IgorReinCloud ~/dbhandler $ ldd /usr/local/bin/dbhandler | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f74f5866000)
igor@IgorReinCloud ~/dbhandler $ ldd /usr/local/lib/libdialogs.so | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f49dd3f4000)
libwx_gtk3u_xrc-3.1.so.4 => not found
libwx_gtk3u_xrc-3.1.so.4 => not found
igor@IgorReinCloud ~/dbhandler $ ldd /usr/local/lib/libdbloader.so | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f15b44ba000)
igor@IgorReinCloud ~/dbhandler $ ldd /usr/local/lib/libdbwindow.so | grep libwx_gtk3u_xrc
libwx_gtk3u_xrc-3.1.so.7 => /home/igor/wxWidgets/buildGTK/lib/libwx_gtk3u_xrc-3.1.so.7 (0x00007f31a3985000)
libwx_gtk3u_xrc-3.1.so.4 => not found
libwx_gtk3u_xrc-3.1.so.4 => not found
libwx_gtk3u_xrc-3.1.so.4 => not found
igor@IgorReinCloud ~/dbhandler $
My question would be - how do I fix it?
My understanding is that make install
should just copy the stuff to /usr/local
and relink as necessary to use the libraries fro that new place.
However, for some unknown reason when Makefile
s wre regenerated, something happened and I somehow ended up with old and new occurrences of wx in the "make install" section.
Did the OS upgrade screw this up? I can't go back (and don't want to) as a lot of things are gone.
Presumably I should do "make distclean" (or maybe even remove everything from /usr/local/lib manually), remove the build directory and re-run configure + make. Anything I am missing?
Thank you.