If you want to try hacking the source again:
sdk\pluginmanager.cpp:96
#ifdef __WXMSW__
#define PLUGINS_MASK _T("*.dll")
#else
#define PLUGINS_MASK _T("*.so")
#endif
which may explain plugins not loading...
wx-config --cflags will give you the right #define (probably __WXMAC__)
so:
#ifdef __WXMSW__
#define PLUGINS_MASK _T("*.dll")
#elifdef __WXGTK__
#define PLUGINS_MASK _T("*.so")
#elifdef __WXMAC__
#define PLUGINS_MASK _T("*.dylib")
#endif
maybe be the right thing to do
Well my feeling is that it should work (to test try changing sdk\pluginmanager:ScanForPlugins()
#ifdef __WXMSW__
#define PLUGINS_MASK _T("*.dll")
#else
#define PLUGINS_MASK _T("*.so")
#endif
to
#define PLUGINS_MASK _T("*.dylib")
then make clean and make. The relevant code is all under sdk/pluginmanager.cpp
int PluginManager::ScanForPlugins(const wxString& path)
void PluginManager::LoadAllPlugins()
cbPlugin* PluginManager::LoadPlugin(const wxString& pluginName)
The library calls:
wxDynamicLibrary* lib = new wxDynamicLibrary();
lib->Load(pluginName);
and wx ref seems to support .dylib files...
http://www.wxwidgets.org/manuals/2.6.1/wx_wxdynamiclibrary.html
And yes, it still has major problems with layout/plugins.
About plugins, have you read this thread (and other threads -previous atempts to get C::B in MacOS X working) ?
Specially the part about
#define PLUGINS_MASK _T("*.dylib")
and so.
Yes, and working on getting anything beyond CALL_GENERIC
working in AngelScript for Darwin... (ideally both PPC / X86)
Plugins should definitely not have a ".dylib" suffix, but either
a ".so" (same as Linux) or preferrably a ".bundle" suffix...
Mac OS X differs between "shared libraries" and "loadable libraries".
Thus, wxWidgets and libcodeblocks are dylib while plugins are bundle.
Here is the "file" info for them:
bin/codeblocks: Mach-O executable ppc
lib/libcodeblocks.0.0.1.dylib: Mach-O dynamically linked shared library ppc
lib/libwxscintilla.0.0.1.dylib: Mach-O dynamically linked shared library ppc
share/codeblocks/plugins/libastyle.so: Mach-O bundle ppc
share/codeblocks/plugins/libclasswizard.so: Mach-O bundle ppc
share/codeblocks/plugins/libcodecompletion.so: Mach-O bundle ppc
share/codeblocks/plugins/libcompiler.so: Mach-O bundle ppc
share/codeblocks/plugins/libdebuggergdb.so: Mach-O bundle ppc
share/codeblocks/plugins/libdefaultmimehandler.so: Mach-O bundle ppc
share/codeblocks/plugins/libpluginwizard.so: Mach-O bundle ppc
share/codeblocks/plugins/libtodo.so: Mach-O bundle ppc