usva.techdev
6th April 2013, 02:12
Hi,
I'm implementing teh tutorial qt-project.org/doc/qt-5.0/qtdoc/gettingstartedqml.html I have implemented correctly everything about QML and GUI works ok. At the moment of using the plugin I'm able to generate both libFileDIalog.a and FileDialog.dll.
However when i integrate the plugin into the qml text editor things doesn't compile as it is supposed to do. This is my .pro file
# Add more folders to ship with the application, here
folder_01.source = qml/TextEditor
folder_01.target = qml
DEPLOYMENTFOLDERS = folder_01
# Additional import path used to resolve QML modules in Creator's code model
QML_IMPORT_PATH =
symbian:TARGET.UID3 = 0xE6CF9A7F
# Smart Installer package's UID
# This UID is from the protected range and therefore the package will
# fail to install if self-signed. By default qmake uses the unprotected
# range value if unprotected UID is defined for the application and
# 0x2002CCCF value if protected UID is given to the application
#symbian:DEPLOYMENT.installer_header = 0x2002CCCF
# Allow network access on Symbian
symbian:TARGET.CAPABILITY += NetworkServices
# If your application uses the Qt Mobility libraries, uncomment the following
# lines and add the respective components to the MOBILITY variable.
# CONFIG += mobility
# MOBILITY +=
# Speed up launching on MeeGo/Harmattan when using applauncherd daemon
# CONFIG += qdeclarative-boostable
# Add dependency to Symbian components
# CONFIG += qt-components
# The .cpp file which was generated for your project. Feel free to hack it.
SOURCES += main.cpp
INCLUDEPATH += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library"
LIBS += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/FileDialog.dll"
HEADERS += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/dialogPlugin.h" \
"D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/directory.h" \
"D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/file.h"
# Please do not modify the following two lines. Required for deployment.
include(qmlapplicationviewer/qmlapplicationviewer.pri)
qtcAddDeployment()
it marks me this errors:
debug/moc_dialogPlugin.o:moc_dialogPlugin.cpp:(.rdata$_Z TV12DialogPlugin[vtable for DialogPlugin]+0x38): undefined reference to `DialogPlugin::registerTypes(char const*)'
debug/moc_dialogPlugin.o:moc_dialogPlugin.cpp:(.rdata$_Z TV12DialogPlugin[vtable for DialogPlugin]+0x50): undefined reference to `non-virtual thunk to DialogPlugin::registerTypes(char const*)'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:74: undefined reference to `Directory::saveFile()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:75: undefined reference to `Directory::loadFile()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:122: undefined reference to `Directory::filesCount() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:123: undefined reference to `Directory::files()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:124: undefined reference to `Directory::filename() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:125: undefined reference to `Directory::fileContent() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:131: undefined reference to `Directory::setFilename(QString const&)'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:132: undefined reference to `Directory::setFileContent(QString const&)'
debug/moc_file.o:D:\DSUsers\uidv3469\Tutoriales\Qt\QML\T extEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_file.cpp:102: undefined reference to `File::name() const'
debug/moc_file.o:D:\DSUsers\uidv3469\Tutoriales\Qt\QML\T extEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_file.cpp:108: undefined reference to `File::setName(QString const&)'
collect2: ld returned 1 exit status
mingw32-make.exe[1]: *** [debug/TextEditor.exe] Error 1
mingw32-make.exe: *** [debug] Error 2
18:25:11: The process "D:\TOOL\QtSDK\mingw\bin\mingw32-make.exe" exited with code 2.
Error while building project TextEditor (target: Desktop)
When executing build step 'Make'
I looked at the libraries generated qith a text editor, and apparently the references to the methods are inside the library so I would say the reference exist, but for some reason it is no being find.
Could anybody shed some light on why this thing is not finding the reference to mentioned functions?
Best regards,
Ulises Vega
I'm implementing teh tutorial qt-project.org/doc/qt-5.0/qtdoc/gettingstartedqml.html I have implemented correctly everything about QML and GUI works ok. At the moment of using the plugin I'm able to generate both libFileDIalog.a and FileDialog.dll.
However when i integrate the plugin into the qml text editor things doesn't compile as it is supposed to do. This is my .pro file
# Add more folders to ship with the application, here
folder_01.source = qml/TextEditor
folder_01.target = qml
DEPLOYMENTFOLDERS = folder_01
# Additional import path used to resolve QML modules in Creator's code model
QML_IMPORT_PATH =
symbian:TARGET.UID3 = 0xE6CF9A7F
# Smart Installer package's UID
# This UID is from the protected range and therefore the package will
# fail to install if self-signed. By default qmake uses the unprotected
# range value if unprotected UID is defined for the application and
# 0x2002CCCF value if protected UID is given to the application
#symbian:DEPLOYMENT.installer_header = 0x2002CCCF
# Allow network access on Symbian
symbian:TARGET.CAPABILITY += NetworkServices
# If your application uses the Qt Mobility libraries, uncomment the following
# lines and add the respective components to the MOBILITY variable.
# CONFIG += mobility
# MOBILITY +=
# Speed up launching on MeeGo/Harmattan when using applauncherd daemon
# CONFIG += qdeclarative-boostable
# Add dependency to Symbian components
# CONFIG += qt-components
# The .cpp file which was generated for your project. Feel free to hack it.
SOURCES += main.cpp
INCLUDEPATH += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library"
LIBS += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/FileDialog.dll"
HEADERS += "D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/dialogPlugin.h" \
"D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/directory.h" \
"D:/DSUsers/uidv3469/Tutoriales/Qt/QML/TextEditor/qml/TextEditor/Library/file.h"
# Please do not modify the following two lines. Required for deployment.
include(qmlapplicationviewer/qmlapplicationviewer.pri)
qtcAddDeployment()
it marks me this errors:
debug/moc_dialogPlugin.o:moc_dialogPlugin.cpp:(.rdata$_Z TV12DialogPlugin[vtable for DialogPlugin]+0x38): undefined reference to `DialogPlugin::registerTypes(char const*)'
debug/moc_dialogPlugin.o:moc_dialogPlugin.cpp:(.rdata$_Z TV12DialogPlugin[vtable for DialogPlugin]+0x50): undefined reference to `non-virtual thunk to DialogPlugin::registerTypes(char const*)'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:74: undefined reference to `Directory::saveFile()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:75: undefined reference to `Directory::loadFile()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:122: undefined reference to `Directory::filesCount() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:123: undefined reference to `Directory::files()'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:124: undefined reference to `Directory::filename() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:125: undefined reference to `Directory::fileContent() const'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:131: undefined reference to `Directory::setFilename(QString const&)'
debug/moc_directory.o:D:\DSUsers\uidv3469\Tutoriales\Qt\ QML\TextEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_directory.cpp:132: undefined reference to `Directory::setFileContent(QString const&)'
debug/moc_file.o:D:\DSUsers\uidv3469\Tutoriales\Qt\QML\T extEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_file.cpp:102: undefined reference to `File::name() const'
debug/moc_file.o:D:\DSUsers\uidv3469\Tutoriales\Qt\QML\T extEditor-build-desktop-Qt_4_8_1_for_Desktop_-_MinGW__Qt_SDK__Debug/debug/moc_file.cpp:108: undefined reference to `File::setName(QString const&)'
collect2: ld returned 1 exit status
mingw32-make.exe[1]: *** [debug/TextEditor.exe] Error 1
mingw32-make.exe: *** [debug] Error 2
18:25:11: The process "D:\TOOL\QtSDK\mingw\bin\mingw32-make.exe" exited with code 2.
Error while building project TextEditor (target: Desktop)
When executing build step 'Make'
I looked at the libraries generated qith a text editor, and apparently the references to the methods are inside the library so I would say the reference exist, but for some reason it is no being find.
Could anybody shed some light on why this thing is not finding the reference to mentioned functions?
Best regards,
Ulises Vega