Я пытаюсь отладить проект KDevelop, используя мою системную установку KDevelop, и я столкнулся с проблемой, что мое (находящееся в режиме отладки) приложение KDevelop не будет читать плагины из локальной директории установки. Вместо этого он пытается использовать системные плагины с помощью этого API:
KServiceTypeTrader::self() ->query
Есть ли возможность сказать KDevelop для чтения информации о плагинах из другого ресурса, скажем, из одного указанного каталога? Я попытался изменить код, чтобы сделать что-то подобное:
QDir dir("/home/alekstheod/workspaces/kdevelop/kdevelop/Installation/lib/kde4/plugins/");
QStringList files;
files = dir.entryList(QStringList("*"),
QDir::Files | QDir::NoSymLinks);QStringList newFiles;
for( int i = 0; i < files.size(); i++ )
{
newFiles.push_back( dir.path() + "/" + files.at(i) );
}//QStringList resources = dirs.findAllResources("lib", "*.so", KStandardDirs::Recursive);
int a = newFiles.size();
std::cout << a << std::endl;
KPluginInfo::List res = KPluginInfo::fromFiles(newFiles);
return res;
но, к сожалению, это не помогло мне. Возможно, я сделал что-то не так. Пожалуйста помоги :).
Либо удалите системную и используйте только локальную (съешьте свою собачью еду: D)
Или прикрепите к запущенному процессу.
Других решений пока нет …