Я так ничего и не нашел и пришлось использовать KProcess
KProcess * procHostName = new KProcess;
connect(procHostName, SIGNAL(receivedStdout(KProcess*, char*, int)), this, SLOT(filterOutputHostName(KProcess *, char *, int)));
procHostName->clearArguments ();
*procHostName << "hostname";
procHostName->start(KProcess::DontCare, KProcess::Stdout);
void filterOutputHostName(KProcess *proc, char *buffer, int buflen)
{
hostName = buffer;
}
Метод наверное извращенный, так что не бейте сильно
Если есть другие варианты то напишите, буду очень благодарен.