2012-05-23 1 views
0

그래서 새로운 Qt 콘솔 프로젝트를 시작했습니다.이클립스에서 Qt를 사용하면 #include <QSqlDatabase>가 파일을 찾지 못합니다.

지금까지 모든 것이 잘 작동했습니다. 나는 일식이 통합과 함께 설정했지만 실제 사용하지는 않는다. 관련 Qt 디렉토리가 포함되어 있으므로 #include <QtGui> 호출이 작동한다.

이들은 지금까지 완벽하게 작동했습니다.

내가, 또는 명령 행에서

qmake -project 
qmake 
make 

를 수행하여 어느 일식의 빌드 옵션을 사용하여 컴파일 할 수 있습니다. 둘 다 작동합니다.

내가 가진 include 문. 위치 :

#include <QtGui> 
#include <QApplication> 

두 개의 서로 다른 파일에 있습니다.

다른 사람 (예 : #include <QSqlDatabase>)을 추가하면 eclipse가 포함을 인식하고 새 변수를 초기화하고 QSqlDatabase 클래스를 사용할 수있게합니다. 모든 게 잘된 것 같아요 - see here - eclipse screenshot

내가 프로젝트를 빌드 할 때, 그것은 even though they are all there, see them here in the terminal too 파일을 볼 수 없다고 결정합니다. 그런 다음 eclipse puts red lines everywhere.

디렉토리에 들어가서 터미널을 통해 모든 것을 시도하면 qmake -project; qmake; make을 사용하면 동일한 오류가 발생합니다.

그러나 경우에, 나는 qmake -project에 의해 생성 된 .pro 파일로 이동하고 라인 QT += sql을 추가 한 다음 qmake; make을, 모든 괜찮 그것은 작동합니다.

qmake -project은 왜 이러한 파일을 프로젝트 파일에서 제외하고 있습니까? 나는 그걸 만들 때마다 들어가서 수동으로 그 라인을 추가 할 필요가 없을 것입니다 ...

+0

아마 복사/붙여 넣기 오류가 발생하지만 질문에'#include '를 넣으면 QSqlDatabase, capitol D이어야합니다. – Brady

+0

아마도 이것은 분명하지만 연결 문제가 아니라 컴파일과 같은 것 같습니다. 어떤 이유로 그것은 그것을 SQL lib 디렉토리에 링크해야한다는 것을 감지하지 못합니다. – Brady

+0

@Brady yah 잘라 내기 및 붙여 넣기 오류 일뿐입니다. – will

답변

2

qmake -project가 프로젝트 파일에서이 파일들을 제외시키는 이유는 무엇입니까?

내가 아는 한, qmake는 인간 프로그래머를 대체하지 않아도됩니다. SQL 의존성을 탐지하지 못하는 이유를 알고 싶다면 qmake 소스 코드를 읽을 수 있습니다.

정말 오히려 가서 수동으로 줄을 내가 만들 때마다 추가 할 필요가 없습니다 것입니다 ... 여기에 이상한 일을하려는 것처럼 소리

. 빌드 할 때마다 qmake -project를 호출 할 필요가 없습니다.

qmake -project초기 프로젝트 - * pro 파일을 생성합니다. 일단 초기 프로젝트가 생성되면, 그것을 조정할 수 있고 원한다면 옵션이나 매크로 매직을 추가 할 수 있습니다. 그런 다음 * .pro 파일을 사용하여 빌드 시스템 용 스크립트 (Windows 용 vcproj, Windows 용 메이크 파일/* nix, nmake make 파일 등)를 생성합니다.

워크 플로우는 다음과 같이 진행됩니다

  1. qmake -project.
  2. 영원히 반복하십시오 :
    2.1. 생성 된 * .pro 파일을 원하는대로 수정하십시오.
    2.2 qmake
    2.3 빌드 시스템을 사용하여 빌드하십시오. (nmake, make, visual studio 등)

단순히 "빌드"하려면 # 2.3해야합니다. * .pro 파일을 수정 한 경우에만 qmake (-project없이) 스위치를 호출합니다.

자세한 내용은 qt documentation 및 자습서를 참조하십시오.

+0

나는 이것을 시험해보고, 잘하면 모두가 헤엄 쳐 갈 것이다. – will

관련 문제