Developer forums (C::B DEVELOPMENT STRICTLY!) > Development
Question about why wxscintilla_cb is a static Library instead of Shared Lib?
stahta01:
I was just building several 3rd Party CB Plugins and I wondered why the wxscintilla_cb is a static Library in Windows?
And, if it needs to be a static Library in Windows could we ship it will the CB Windows Installer?
Its seems to be the main/only Library missing for building 3rd Party CB Plugins.
The others are shipped as DLLs and you can link directly to them.
I am working on making CB Plugin wizard better from at least my view point (for Windows Users).
Tim S.
ollydbg:
Related discussion:
Code::Blocks, Scintilla and Fedora
stahta01:
--- Quote from: ollydbg on December 05, 2013, 05:27:19 am ---Related discussion:
Code::Blocks, Scintilla and Fedora
--- End quote ---
So, it reads like it needs to be static on a Linux Distro and of course its simpler to keep static everywhere.
So, might we plan on making a zipped version of the Windows wxscintilla_cb static lib file available for each time we do a full release.
I think this might help doing 3rd party CB Plugins.
Note: I have built a CB Project that just creates the wxscintilla_cb static lib file as a alternate solution for my own testing.
I could just submit that CB Project instead of making the CB Team making the Windows wxscintilla_cb static lib file available to download.
I am just not sure which method is the best one to do.
Edit: In case my reason for doing this is NOT obvious right now to make a CB Plugin under windows you really have to be able to build CB from source under Windows. And, this seems to be too hard for some people. And, it is error prone for people to build plugins that work with the last official release. I hope the if a wxscintilla_cb static lib file along with better directions and a modified CB Plugin Wizard will make this easier to do.
Edit2: Does anyone know of any other CB Static lib that is used to build third party plugins?
Tim S.
stahta01:
I thought maybe the static tinyxml lib was being used; but, it appears to not be used.
Can someone double check?
Patch to remove what appears to be unneeded library search path for tinyxml.
Removed patch; will posted updated version later today that only fixes wxWidgets 3.0 CB Projects.
osdt:
--- Quote from: stahta01 on December 05, 2013, 12:39:15 am ---I was just building several 3rd Party CB Plugins and I wondered why the wxscintilla_cb is a static Library in Windows?
And, if it needs to be a static Library in Windows could we ship it will the CB Windows Installer?
Its seems to be the main/only Library missing for building 3rd Party CB Plugins.
The others are shipped as DLLs and you can link directly to them.
I am working on making CB Plugin wizard better from at least my view point (for Windows Users).
Tim S.
--- End quote ---
I'd first check if the 3rd Party Plugins really have to be linked against wxscintilla_cb. If you search the C::B source tree, only 'Codeblocks-SDK' and 'Tools Plus' are explicitly linked against it. Even 'Tools Plus' builds and links fine without it (just tested on linux).
Grep *.cbp for "library=\"wxscintilla_cb\"":
--- Code: ---$ grep "library=\"wxscintilla_cb\"" $(find . -name "*.cbp")
./CodeBlocks-unix.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx29-unix.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx29.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx29_64.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx30-unix.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx30.cbp: <Add library="wxscintilla_cb" />
./CodeBlocks_wx30_64.cbp: <Add library="wxscintilla_cb" />
./plugins/contrib/ToolsPlus/ToolsPlus-unix.cbp: <Add library="wxscintilla_cb" />
./plugins/contrib/ToolsPlus/ToolsPlus.cbp: <Add library="wxscintilla_cb" />
./plugins/contrib/ToolsPlus/ToolsPlus_wx29-unix.cbp: <Add library="wxscintilla_cb" />
./plugins/contrib/ToolsPlus/ToolsPlus_wx30-unix.cbp: <Add library="wxscintilla_cb" />
--- End code ---
- osdt
Navigation
[0] Message Index
[#] Next page
Go to full version