大学のプロジェクトでは、GUI用にQtを使うOpenGLアプリケーションを作った。 qmake -spec macx-g++ project.pro
を使用すると、Makefile
を作成できます。次にmake
を実行すると、正しくアプリケーションが作成されます。しかし、ときに私は、プロジェクト内の他の人に完全なフォルダを送信し、同じフォルダに、彼はqmake; make
それが正常に動作していないときに彼がmake
彼は、しかし、エラーにqmakeで作られたメイクファイルは自分のPCでしか動かない
Makefile:209: warning: overriding commands for target `moc_window.cpp'
Makefile:203: warning: ignoring old commands for target `moc_window.cpp'
make: *** No rule to make target `/usr/lib64/qt-3.3/mkspecs/default/qmake.conf', needed by `Makefile'. Stop.
を取得ありません。問題は、コードを渡すときに教授がqmakeを利用できるかどうかわからないため、make
だけを使用して作業したいと考えています。 qmake
をもう一度する必要なく、qmake
で作られたMakefile
を追加する必要があるものがありませんか?当社の.pro
ファイルは以下のとおりです。
TEMPLATE = app
TARGET = smoke
QT = core gui opengl
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
SOURCES += \
fluids.cpp \
simulation.cpp \
visualization.cpp \
window.cpp \
myglwidget.cpp \
vector.cpp \
grid.cpp \
scalar.cpp
HEADERS += \
window.h \
myglwidget.h \
simulation.h \
vector.h \
grid.h \
visualization.h \
scalar.h
INCLUDEPATH += fftw-2.1.5/include /usr/local/include include
LIBS += -L"$$_PRO_FILE_PWD_/fftw-2.1.5/lib" -lrfftw -lfftw -framework OpenGL -framework GLUT -stdlib=libc++
QMAKE_CXXFLAGS += -stdlib=libc++
QMAKE_CXXFLAGS += -std=c++11
FORMS += \
window.ui
*教授がqmakeを利用できるかどうかわかりません。*プロジェクトをコンパイルするためにQtが必要な場合は、 'qmake'を利用できます。 'Makefile's(あるいは他のビルドアーティファクト)を運んではいけません。 – peppe
'make:*** 'Makefile'が必要とするターゲット '/usr/lib64/qt3.3/mkspecs/default/qmake.conf'を作成するルールはありません。 'はqmakeがユーザのQt設定に依存してmakefileをビルドすることを私に示します。したがって、Qtプロジェクトを構築するには、Qtが必要です(デフォルトでqmakeが必要です)。 –
ああ、私は 'qmake'を' Makefile'にする機能を理解していませんが、なぜ 'qmake'はアプリケーションdirecltyをビルドしていませんか?私はMakefileを使って誰かが 'make 'だけを使ってビルドすることを期待していました –