User forums > Help

Settings don't get saved (svn 4454)

<< < (14/16) > >>

johne53:
Thanks.... apt-get update did the trick and I've now installed wxWidgets 2.8. Unfortunately (groan...  :( ) I still can't get C::B to build. The ./bootstrap and ./configure stages seem to go okay - but then when I run make I get this error which I think is at the linking stage):-


--- Quote ---g++ -O2 -ffast-math -g -O2 -DCB_PRECOMP -Winvalid-pch -fPIC -DPIC -fexceptions -o .libs/codeblocks app.o appglobals.o compilersettingsdlg.o crashhandler.o dlgabout.o dlgaboutplugin.o environmentsettingsdlg.o infopane.o ipc.o main.o prefix.o printdlg.o scriptconsole.o scriptingsettingsdlg.o splashscreen.o startherepage.o -pthread  -lm -L/media/SHAREDDATA/CodeBlocks/src/src/wxAUI /media/SHAREDDATA/CodeBlocks/src/src/wxAUI/.libs/libwxaui.a /usr/lib/libgtk-x11-2.0.so /usr/lib/libgdk-x11-2.0.so /usr/lib/libatk-1.0.so /usr/lib/libgdk_pixbuf-2.0.so /usr/lib/libpangocairo-1.0.so -lXext -lXinerama -lXi -lXrandr -lXcursor -lXfixes /usr/lib/libpango-1.0.so /usr/lib/libcairo.so /usr/lib/libfreetype.so -lz -lfontconfig -lpng12 -lXrender -lX11 /usr/lib/libgobject-2.0.so /usr/lib/libgmodule-2.0.so /usr/lib/libglib-2.0.so -lrt -L/media/SHAREDDATA/CodeBlocks/src/sdk /media/SHAREDDATA/CodeBlocks/src/sdk/.libs/libcodeblocks.so -lwx_gtk2u_aui-2.8 -lwx_gtk2u_xrc-2.8 -lwx_gtk2u_qa-2.8 -lwx_gtk2u_html-2.8 -lwx_gtk2u_adv-2.8 -lwx_gtk2u_core-2.8 -lwx_baseu_xml-2.8 -lwx_baseu_net-2.8 -lwx_baseu-2.8 -lpthread -ldl -Wl,--rpath -Wl,/usr/local/lib
app.o: In function `CodeBlocksApp::GetAppPath() const':
/media/SHAREDDATA/CodeBlocks/src/src/app.cpp:839: undefined reference to `wxString::wxString(char const*, wxMBConv&, unsigned int)'
app.o: In function `wxFont':
/usr/include/wx-2.6/wx/gtk/font.h:37: undefined reference to `wxFont::Init()'
/usr/include/wx-2.6/wx/gtk/font.h:37: undefined reference to `wxFont::Init()'
app.o: In function `CodeBlocksApp::OnInit()':
/media/SHAREDDATA/CodeBlocks/src/src/app.cpp:457: undefined reference to `wxZipFSHandler::wxZipFSHandler()'
app.o: In function `FileLogger::Append(wxString const&, Logger::level)':
../../src/include/logger.h:64: undefined reference to `wxString::mb_str(wxMBConv&) const'
../../src/include/logger.h:64: undefined reference to `wxString::mb_str(wxMBConv&) const'
--- End quote ---

#...and in fact, I just get hundreds of similar 'undefined reference' errors. Note that make still seems to be looking for wx2.6 which is very confusing.

[Edit...] Oops... forgot to do a 'make clean' before starting the new make. After cleaning out the old make, the new one seems to be going a lot better (!)

Jenna:
which version of wxWidgets is used by wx-config as standard ?

--- Code: ---wx-config --version
--- End code ---
should answer "2.8.4" .
If not you can change the default  version wx-config uses by typing
--- Code: ---update-alternatives --config wx-config
--- End code ---
The answer is something like
--- Code: ---Es gibt 6 Alternativen, die »wx-config« bereitstellen.

  Auswahl      Alternative
-----------------------------------------------
          1    /usr/lib/wx/config/base-unicode-debug-2.8
          2    /usr/lib/wx/config/gtk2-unicode-debug-2.8
          3    /usr/lib/wx/config/base-unicode-release-2.8
*+        4    /usr/lib/wx/config/gtk2-unicode-release-2.8
          5    /usr/lib/wx/config/base-unicode-release-2.6
          6    /usr/lib/wx/config/gtk2-unicode-release-2.6

Drücken Sie die Eingabetaste, um die Vorgabe[*] beizubehalten,
oder geben Sie die Auswahlnummer ein: 

--- End code ---

Sorry it's german, and I don't have any english locales on my laptop.
You can than select the default version for wx-config.
On my laptop it's "/usr/lib/wx/config/gtk2-unicode-release-2.8" .

On debian systems, after running the bootstrap-script you can type "dpkg-buildpackage" from the commandline (you must be in the directory with the "debian" subdirectory), or if you are not root try "fakeroot dpkg-buildpackage".
If "dpkg-buildpackage" says something about missing dependencies you have to install the missing packages. If "libstdc++6-4.0-dev" is missing, but you have "libstdc++6-4.1-dev" installed, that doesn't matter.
Install the other packages and run
--- Code: ---dpkg-buildpackages -d
--- End code ---
.
This overrides dependency-checking. So make sure all packages you need are installed. Instead of the "-d"-option, you can patch the "debian/control"-file:
in line 5 change "libstdc++6-4.0-dev" to "libstdc++6-4.1-dev".
Or you can use the source-package from my repository (but it's svn 4537 in the moment).
If all works correctly you should have your own build codeblocks ".deb"-packages in the directory one step higher than your working directory.
You can install them with
--- Code: ---dpkg -i path_to_package_file/package_file.deb
--- End code ---
.
For example, when you compiled svn4537 and are still in the working-directory of codeblocks type

--- Code: ---dpkg -i codeblocks_1.0svn4537_i386.deb ../codeblocks-contrib_1.0svn4537_i386.deb ../libcodeblocks0_1.0svn4537_i386.deb ../libwxsmithlib0_1.0svn4537_i386.deb

--- End code ---
The -dev and -dbg packages are normally not needed, if you don't want to develop youre own plugins, or debug codeblocks itself.

So, this is pretty much stuff, but I hope it helps.
Now i bring my son in the bed and than look for an answer. :D

johne53:
Sorry, it looks like our posts coincided. The problem was just that I'd forgotten to clean out the old (incomplete) build. Having done that, C:B has finally built & installed correctly. I'll be testing it again tomorrow. Wish me luck...  :D

Jenna:

--- Quote from: johne53 on October 16, 2007, 08:19:45 pm ---Sorry, it looks like our posts coincided. The problem was just that I'd forgotten to clean out the old (incomplete) build. Having done that, C:B has finally built & installed correctly. I'll be testing it again tomorrow. Wish me luck...  :D

--- End quote ---

I saw just after clicking the "Post"-button.

Nevertheless I hope it works for you.  :D

I think you should try the "debian-way" and use "dpkg-buildpackage" or if you have source-code that is not yet "debianized" you can use "checkinstall" (apt-get install checkinstall).
If you do so you can deinstall packages much easier, if something went wrong.

johne53:
After 2 days I've finally managed to build C::B and load the project that was giving me the segfaults. Unfortunately, it's still giving me segfaults - even though I'm now running a fresh build on a new PC with a different Linux distro.   :( However, I've discovered something very interesting....

When I first built C::B it initialised a file for me called default.conf. If I use that original configuration file, I don't get the segfaults. However, if I start adding global search directories, the segfaults happen pretty much every time I shut down C::B.

This is what the gcc section of my config file looked like before I added any search directories:-

--- Code: --- <gcc>
<NAME>
<str>
<![CDATA[GNU GCC Compiler]]>
</str>
</NAME>
<INCLUDE_DIRS>
<str>
<![CDATA[/usr/include;]]>
</str>
</INCLUDE_DIRS>
<RES_INCLUDE_DIRS>
<str>
<![CDATA[/usr/include;]]>
</str>
</RES_INCLUDE_DIRS>
<LIBRARY_DIRS>
<str>
<![CDATA[/usr/lib;]]>
</str>
</LIBRARY_DIRS>
<MASTER_PATH>
<str>
<![CDATA[/usr]]>
</str>
</MASTER_PATH>
</gcc>
--- End code ---


The above is how the file looked when it was originally configured by C::B. Here's how the same section looks, after I've added some compiler and linker search directories:-

--- Code: --- <gcc>
<NAME>
<str>
<![CDATA[GNU GCC Compiler]]>
</str>
</NAME>
<INCLUDE_DIRS>
<str>
<![CDATA[/usr/include/;/opt/gnome/include/glib-2.0/;/opt/gnome/lib/glib-2.0/include/;$(#base)/ardour2/libs/glibmm2/;$(#base)/ardour2/libs/gtkmm2/atk/;$(#base)/ardour2/libs/gtkmm2/gtk/;$(#base)/ardour2/libs/gtkmm2/gdk/;$(#base)/ardour2/libs/gtkmm2/pango/;$(#base)/ardour2/libs/libgnomecanvasmm/;$(#base)/ardour2/libs/sigc++2/;$(#base)/ardour2/libs/pbd/;$(#base)/ardour2/libs/ardour/;$(#base)/ardour2/libs/;$(#base)/ardour2/;$(#base)/ardour2/libs/midi++2/;$(#base)/ardour2/libs/surfaces/control_protocol/;$(#base)/ardour2/libs/gtkmm2ext/;$(#base)/ardour2/gtk2_ardour/;$(#base)/CodeBlocks/src/include/wxscintilla/include/;/usr/include/wx-2.8/;/usr/include/atk-1.0/;/usr/include/gtk-2.0/;/usr/include/glib-2.0/;/usr/include/pango-1.0/;/usr/include/libgnomecanvas-2.0/;/usr/lib/glib-2.0/include/;/usr/lib/gtk-2.0/include/;/usr/lib/wx/include/gtk2-unicode-release-2.8/;]]>
</str>
</INCLUDE_DIRS>
<RES_INCLUDE_DIRS>
<str>
<![CDATA[/usr/include;]]>
</str>
</RES_INCLUDE_DIRS>
<LIBRARY_DIRS>
<str>
<![CDATA[$(#output)/ardour2/;/usr/lib;/usr/lib/cups/backend;/opt/gnome/lib;$(#base)/ardour2/libs/;]]>
</str>
</LIBRARY_DIRS>
<MASTER_PATH>
<str>
<![CDATA[/usr]]>
</str>
</MASTER_PATH>
</gcc>
--- End code ---

With this second configuration I get segfaults almost every time I exit C::B (and any changes that I've made to the global settings get lost). Can anyone see anything obviously wrong in the updated config file?

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version