I'm developing an application and I want some items that not exists in wxSmith right now (like wxStyledTextCtrl or wxPropertyGrid).
By now, I'm adding then in code without wxSmith, but I want them on it for working with it more easily, so I think about creating the appropriate wxSmith extensions.
Then I went to the wiki and started the plugin development tutorials and I installed the -dev packages for Code::Blocks and wxSmith (from jens' repository). With little modifications for linux in the project build options my first C::B plugin work.
Problems started with wxSmith extensions because wxsmith headers were not installed, only wxsmith development library. So I have to download codeblocks from svn (the same revision of jens' repository).
At the first time I didn't install it, just make and added to the project the include dirs of wxsmith and wxpropgrid from the codeblocks tree. At this time I could build my first wxsmith extension but, when I try to add it to the codeblocks plugins I get some errors (detailed on the image) and in the application log:
~/.codeblocks/share/codeblocks/plugins/wxSmithChartItem.so: not loaded (missing symbols?)
Loaded 0 plugins
Then I try to uninstall jens' nightly and install C::B from source with the same result. I also try with another item, wxStyledTextCtrl, and few more things and I always get the same error, so I think that it is because wxsmith headers are not installed with it's library.
Any idea about how to solve this?
I also attach the test extension, note that I use an wxChartCtrl downloaded from wxCode and put to a third directory.
My development system:
-Ubuntu 8.04.1 x86_64
-Code::Blocks svn5323
-wxWidgets 2.8.9
[attachment deleted by admin]
Please turn on extra logging by commenting this line (it's around 436 line in src/src/app.cpp):
wxLog::EnableLogging(false);
You'll need to recompile c::b from source to make it working. After that change you will have some annoying logs on startup but you'll also have name of missing symbol. That will help trace the problem.
Regards
BYO
I finally installed codeblocks from source (I always get trouble installing it from sorce with all plugins).
You're right, byo, I have some annoying logs at startup but also the missing symbol.
First of that, as I start the Plugins Manager I get this error:
Failed to create a temporary file name (error 13: Permission denied)
It is not the missing symbol, but as I get it in the Plugins Manager, I decided to report it.
Then, when I try to install the plugin, in addition to the already mentioned, I get this missing symbol:
/home/cesar/.codeblocks/share/codeblocks/plugins/wxSmithChartItem.so: undefined symbol: _ZN7wxsItem20OnGetPropertiesFlagsEv
In addition to that, I started codeblocks from the command line, but I don't see nothing related to this problem.
I don't know how to get it defined, so I still need your help.
For wxStyledTextCtrl, undefined symbol: wxSTCNameStr. I search for it in wx/stc/stc.h:
1802 #ifndef SWIG
1803 extern WXDLLIMPEXP_STC const wxChar* wxSTCNameStr;
1804 class WXDLLIMPEXP_STC wxStyledTextCtrl;
1805 class WXDLLIMPEXP_STC wxStyledTextEvent;
1806 #endif
So, if it isn't defined linking "libwx_gtk2u_stc_2.8.so", I don't know how to solve it.
For wxChartItem, undefined symbol: _ZTV16wxPieChartPoints. This time I link "libwxchart.so", but I get that codeblocks can't find "libwxchart.so.0". I think this is because I can't install wxChart due to a error in the sample program included with wxChart, but I have itself build in it's source directory, so I linked that .so.