Я хочу получить результат после выполнения cmake .. по пути, в котором я установил предпочтение.
Я обнаружил, что результат cmake .. очень длинный, поэтому я попытался перезаписать файл. Но ничего не вышло.
bool MainWindow::cakeparse(QString path){
QStringList env = QProcess::systemEnvironment();
env << "/mnt/hgfs/sharelinux/kdenlive-master/build"; // Add an environment variable
QString cm="cmake ..";
QProcess cache;
cache.setEnvironment(env);
cache.start(cm);
cache.waitForReadyRead();
QByteArray result = cache.readAllStandardOutput();
qDebug() << cache.readAllStandardOutput();
QFile file("/home/dani/Desktop/output.txt");
file.open(QIODevice::WriteOnly);
file.write(result);
qDebug()<<result;
std::string html = result.toStdString();
std::regex re("(Could NOT find [\w -_] *(missing:)");
std::smatch match;
while(std::regex_search(html,match,re)){
std::cout << match.str()<<"\n";
html = match.suffix();
}
Это мой код, и после получения результата я хочу использовать регулярное выражение для получения желаемого значения. Пожалуйста, помогите мне
Это часть нормального результата.
-- Could NOT find LibV4L2 (missing: LIBV4L2_INCLUDE_DIR LIBV4L2_LIBRARY)
-- Qt5 WebKitWidgets not found. You cannot use your Freesound.org credentials, only preview files can be downloaded from the Online Resources Widget
-- Building tests
-- Configuring done
-- Generating done