Code::Blocks Forums
User forums => General (but related to Code::Blocks) => Topic started by: devguy on April 19, 2011, 06:34:40 am
-
On Linux, I created a CB project using the wizard selecting "wxWidgets 2.9.x (SVN Version)"
however when I build and do a ldd on the binary it say it's linking to version 2.8 ?
$ ldd wxDebug
linux-vdso.so.1 => (0x00007fff6f1ff000)
libwx_gtk2u_richtext-2.8.so.0 => /usr/lib/libwx_gtk2u_richtext-2.8.so.0 (0x00007f709f811000)
libwx_gtk2u_aui-2.8.so.0 => /usr/lib/libwx_gtk2u_aui-2.8.so.0 (0x00007f709f59c000)
libwx_gtk2u_xrc-2.8.so.0 => /usr/lib/libwx_gtk2u_xrc-2.8.so.0 (0x00007f709f303000)
libwx_gtk2u_qa-2.8.so.0 => /usr/lib/libwx_gtk2u_qa-2.8.so.0 (0x00007f709f0e1000)
libwx_gtk2u_html-2.8.so.0 => /usr/lib/libwx_gtk2u_html-2.8.so.0 (0x00007f709ee34000)
libwx_gtk2u_adv-2.8.so.0 => /usr/lib/libwx_gtk2u_adv-2.8.so.0 (0x00007f709eb55000)
libwx_gtk2u_core-2.8.so.0 => /usr/lib/libwx_gtk2u_core-2.8.so.0 (0x00007f709e54f000)
libwx_baseu_xml-2.8.so.0 => /usr/lib/libwx_baseu_xml-2.8.so.0 (0x00007f709e345000)
libwx_baseu_net-2.8.so.0 => /usr/lib/libwx_baseu_net-2.8.so.0 (0x00007f709e116000)
libwx_baseu-2.8.so.0 => /usr/lib/libwx_baseu-2.8.so.0 (0x00007f709ddc5000)
What do I need to correct to link against 2.9
fyi, My special build for wxWidgets 2.9 is installed under /var/local
-
Where is your wx-config script installed? I have a feeling that your project settings make it so that the default wx-config script is called, and you thus end up linking to the original system installed wx version.
Under Linux, I can get as many versions of wxWidgets as I like by building them, but skipping the last step (make install), and renaming each versions' produced wx-config. For example, I use wx29-config for wxWidgets 2.9 and create a link under a path added directory. I then change all references of wx-config to wx29-config in my project settings.
-
the new wx-config script is under /var/local/bin, so where is CB do i tell it to look there?
-
the new wx-config script is under /var/local/bin, so where is CB do i tell it to look there?
...how about providing the full path name?! :shock:
-
where do i put this full path name? "/var/local/bin/wx-config" if that is what I am suppose to tell CB to use to configure my wxWidgets build??
-
where do i put this full path name? "/var/local/bin/wx-config" if that is what I am suppose to tell CB to use to configure my wxWidgets build??
It should work. For example, where the project settings now say "wx-config --libs", change to "/var/local/bin/wx-config --libs".
-
ok thanks i figured out where that change needs to be made.
not obvious, since you need to select the project name and not the 'debug' or 'release' node underneath the "project build option"
-
ok thanks i figured out where that change needs to be made.
not obvious, since you need to select the project name and not the 'debug' or 'release' node underneath the "project build option"
It is obvious, if this setting applies to the whole project (i.e. all targets). You can setup options at project- and target level. The target level options can either be an addition or a replacement for the project options. This allows setting up common compiler/linker options very easily as it is often the case that targets share certain settings. And even if not, targets can override settings done at project level (as I've said already).
-
i figured that much out, still feel my way around CB :P