User forums > Help
Problem while building C::B from codeblocks-unix.workspace
earlgrey:
For debugging http://forums.codeblocks.org/index.php/topic,19618.0.html, I decided to do like this : http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_Windows#Compile_Code::Blocks, i.e. building C::B from C::B.
1) what should go in the "cb" global variable ?
2) what should go in the "wx" global variable ?
3) Whatever I do, I end up with no plugins loaded, and a very basic C::B http://imgur.com/BAESn3k
4) Seems like in ConfigManager::InitPaths() the wxStandardPaths stuff always return "/" :
--- Code: ---$ ./codeblocks --debug-log --multiple-instance -ns -ni -v -p debug --prefix="/home/gwr/Src/C-C++/codeblocks/svn9916/trunk/src/devel"
> ConfigManager::InitPaths()
config_folder :/
home_folder :/
app_path :/
res_path :.
> MainFrame::ScanForPlugins()
Plugin resource not found: .zip
Invalid manifest file for: ofl
Loaded 1 plugins
Scanning for plugins - global in /plugins
...
--- End code ---
5) Ended up with a savage replacement
--- Code: ---void MainFrame::ScanForPlugins()
{
m_ScanningForPlugins = true;
m_PluginIDsMap.clear();
PluginManager* m_PluginManager = Manager::Get()->GetPluginManager();
printf("> MainFrame::ScanForPlugins()\n");
// user paths first
//wxString path = ConfigManager::GetPluginsFolder(false);
//printf(" Scanning for plugins - user [%s]\n", path.wx_str());
//int count = m_PluginManager->ScanForPlugins(path);
wxString path;
path.assign((const wxChar*)"/home/gwr/Src/C-C++/codeblocks/svn9857/trunk/src/devel/share/codeblocks/plugins");
printf(" Scanning for plugins - user [%s]\n", path.wx_str());
int count = m_PluginManager->ScanForPlugins(path);
--- End code ---
Jenna:
cb and wx are not needed, but cb_release_type should have at least a space or any additonal compiler switches for (almost) all projects.
Do not forget to run the appropriate update-script after build.
And bve aware you have to start C::B with the run.sh-script from either devel or output-folder or from inside C::B (if you want to debug it).
earlgrey:
--- Quote ---cb_release_type should have at least a space or any additonal compiler switches for (almost) all projects.
--- End quote ---
Was set
--- Quote ---Do not forget to run the appropriate update-script after build.
--- End quote ---
After each compilation ( trunk/src/update )
--- Quote ---And be aware you have to start C::B with the run.sh-script from either devel or output-folder or from inside C::B (if you want to debug it).
--- End quote ---
run.sh simply modify & export LD_LIBRARY_PATH for ensuring loading trunk/src/devel/libcodeblocks.so & trunk/src/devel/libwxpropgrid.so
Something has to be different between the "autotools - make" build and the "within C::B" build.
earlgrey:
Finally fixed plugins loading by just copying all .so libraries along libcodeblocks.so & libwxpropgrid.so, in trunk/src/devel
Surely misuse of wxStandardPaths stuff. Even with the "autotools - make" build, all paths in ConfigManager::InitPaths() resume to "/".
I could not find any call to wxStandardPaths::SetInstallPrefix() in C::B sources, which may be the explanation.
Jenna:
That is not a fix, it's a hack.
Building C::B inside C::B normally works fine, I do it a lot.
And thank you for telling me what run.sh does, I did not know ::) .
You must have done something wrong or you have some incompatibility on your system.
Which distro do you use ?
Navigation
[0] Message Index
[#] Next page
Go to full version