2013-08-19 1 views
2

그래서 하나의 HTML 페이지 (일종의 내 애플 리케이션을위한 스크립팅)에 대한 일부 자바 스크립트를 구문 분석 할 필요가 있지만 초기화하려고하면 QWebPage 던져 SIGSEGV. 그것은 콘솔 응용 프로그램입니다. 내 코드의 Relevat 부분 :머리가없는 qwebpage가 sigsegv를 던지고있는 이유는 무엇입니까?

QT  += core sql network xml webkit 

QT  -= gui 

QMAKE_CXXFLAGS += -std=c++11 

LIBS += -lqca 

TARGET = jarvisd 
CONFIG += console 
CONFIG -= app_bundle 

TEMPLATE = app 
QWebPage * p = new QWebPage(); 
p->mainFrame()->load(QUrl(url)); 

이 첫 번째 줄에 충돌합니다. QWebPage에 대한 문서, "위젯이없는 환경에서 QWebPage 사용하기"부분에서 이것이 가능한 것 같습니다. 하지만 오류가 없습니다. 그냥/sigsegv :/

도움 주셔서 감사합니다.

사용 무언가과 같이

답변

1

QT + = 코어 위젯 SQL 네트워크 XML 웹킷 webkitwidgets : 위 코드에서 사용

QWebView *view = new QWebView(); 
view->load(QUrl("http://127.0.0.1")); 
QObject::connect(view, &QWebView::loadFinished, [view](){fprintf(stderr, view->title().toLocal8Bit().data());}); 

Qt5 신호 + 람다 함수.

편집 : 위 코드는 Windows 7의 콘솔 ​​모드에서 실행됩니다.이 스 니펫을 게시물의 코드로 교체했습니다. 그것도 작동합니다.

편집 2 : 확인. 나는 그 사고의 원인을 발견했다. QCoreApplication을 QApplication으로 바꾸어보십시오. 그리고 프로젝트 파일에 웹 키트가 필요합니다.

+0

QWebView가 XServer 없이도로드됩니까? – Paladin

관련 문제