QTCreator'da neden Ubuntu.Components 0.1 eksik?


13

Her şeyden önce burada açıklandığı gibi QML ve QT Creator kullanarak bir "merhaba dünya" uygulaması oluşturmak gerekiyor http://developer.ubuntu.com/get-started/gomobile/

İkincisi, ben QML platformu ve bağımlılıkları yüklemeye çalışırken ubuntu 12.04 dayalı bir dağıtım (backbox) var çünkü ben adım 2 ("Ubuntu QML araç önizlemesini yükle") çalıştıramadım ama ben aşağıdaki sorunu çözmek bu yazının talimatları: /ubuntu/235440/how-do-i-install-the-qml-toolkit-on-12-04

Üçüncü olarak, QTCreator'ı açtığımda ve CurrencyConverter (helloWorld uygulaması) yürütmeye çalıştığımda program aşağıdaki paketleri bulamıyor:

import Ubuntu.Components 0.1

Uygulamayı çalıştırmak için ne yapabilirim?

şimdiden teşekkürler.

import QtQuick 2.0
import Ubuntu.Components 0.1

Rectangle {
    id: root
    width: units.gu(60)
    height: units.gu(80)
    color: "lightgray"

    property real margins: units.gu(2)
    property real buttonWidth: units.gu(9)

    Label {
       id: title
       ItemStyle.class: "title"
       text: i18n.tr("Currency Converter")
       height: contentHeight + root.margins
       anchors {
           left: parent.left
           right: parent.right
           top: parent.top
       }
    }
}

Lütfen daha fazla bilgi ekleyebilir misiniz? Uygulamayı gerçekte nasıl yürütüyorsunuz? Uygulama, komut satırından yürütürseniz çalışır mı? Başlangıç ​​adımında aşağıdaki kurulum komutunun bitini çalıştırdığınızdan emin misiniz? echo 'export PATH=/opt/qt5/bin:$PATH' >> ~/.bashrc
David Planella

merhaba, evet tabii ki ... Sadece komutları kopyalayıp yapıştırıyorum. % 100 doğru olduğundan emin olun, bu yüzden ilk ve ikinci adım yapılır. Bundan sonra QTCreator'ı açtım ve yukarıdaki üçüncü adımın talimatlarını takip ettim. Yukarıdaki kodu yapıştırdığınızda "import Ubuntu.Components 0.1" satırı vurgulanmış ve "QML Modülü bulunamadı. Alma Yolları: / usr / lib / qt4 / imports" diyordu. Ubuntu kullanmadığımı, ancak ubuntu 12.04 tabanlı bir dağıtım kullandığımı lütfen unutmayın. Tek fark, birlik değil xfce4 olması.
CodeArtist

@DavidPlanella 12.10'deyim ve aynısını yaşıyorum. Her iki komutu da kopyaladım + yapıştırdım ve her şey yolunda gitti. CurrenyConverter.qml örneği ile QtCreator'da: 2: 1: "Ubuntu.Components" modülü kurulu değil (QtQuick 2.0 için de aynı hatayı aldım). echo $ PATH / opt / qt5 / bin: / usr / lib / lightdm / lightdm: / usr / local / sbin: / usr / local / bin: / usr / sbin: / usr / bin: / sbin: / bin: / usr / oyunlar: / usr / local / games
trent

@JorgeCode, açıkladığınız şey Qt Creator'da kodun çalışmasını durdurmaması gereken bir uyarı olduğuna inanıyorum. Yukarıda istendiği gibi, qmlsceneöğreticide açıklandığı gibi uygulamanızı komut satırından çalıştırdığınızda bir hata mesajı alıyor musunuz? Öyleyse, komut satırındaki kesin çıktı nedir?
David Planella

@DavidPlanella, ben de aynı hatayı alıyorum ve bu derleme yaptıktan sonra terminal veya Qt Creator alıyorum kodu. paste.ubuntu.com/1658717 ve kırmızı çizgi ithalat Ubuntu.Components 0.1 alıyorum. Şimdi ne yapmam gerekiyor.
rɑːdʒɑ

Yanıtlar:


3

En azından ubuntu 12.04 için çözümü buldum. Http://qt-project.org/downloads#qt-creator resmi sitesine gitmek ve Qt 5.0.0 olan en son Qt paketini indirmek zorunda kaldım .

* Not : Ubuntu 12.04 en son Qt sürümünü içermez, bu yüzden manuel olarak indirmeniz gerekir.

* Not : Kurulumdan önce QtCreator'ın (2.5.0) önceki sürümünü kaldırdım

Qt5 paketini kurmak için tek yapmanız gereken:

  • chmod 755 qt-linux-opensource-5.0.0-x86_64-offline.run

Ardından paketi yürütün ve yükleyiciyi varsayılan ayarlarla çalıştırın.

  • ./qt-linux-opensource-5.0.0-x86_64-offline.run

  • Şimdi /opt/qt5/imports/Ubuntu/Componentstüm kütüphanelerle birlikte yol olmalı !

Bundan sonra CurrencyConverter talimatlarını takip ettim

* Not hattı olduğunu: import Ubuntu.Components 0.1 hala kırmızı çizgi ile vurgulanır ancak program seçerek normalde çalışır Tools > External > Qt Quick > Preview (qmlviewer)(@ David Planella sayesinde)


Bu kırmızı çizgi benim gibi bir mükemmeliyetçi için dikkat dağıtıcı. Sebep olanı düzeltmenin bir yolu var mı?
Djentleman

0

Aslında seçeneklere gidebilirsiniz -> build and run -> qt sürümleri (Lehçe sürümüm var, bu yüzden tekrar İngilizce'ye çevirmek zorunda kaldım - isimler biraz farklıysa özür dilerim). Ardından qt, zaten yüklediğiniz en son sürümünü eklersiniz - içinde /opt/qt5/bin.


0

QT5 doğru şekilde takılmışsa ve hala import Ubuntu.Components 0.1vurgulanmışsa, bunu yapmanız gerekir:

  • .qmlproject dosyasını açın (otomatik olarak oluşturulan projeye dahil edilir)
  • bu metni ekle: importPaths: [ "/opt/qt5/imports" ]son kapanmadan önce:}

... ve sorun gitmiş olmalı.


0

Muhtemelen belirli örnekler için .pro dosyalarını açarak tüm qt demolarını çalıştırmak / oluşturmak isteyeceksiniz.

chown -R yourusername /opt/qt5/examples/

Qtcreator içinde textures.pro dosyasını açarak opengl / textures örneğini oluşturmaya gittiğimde, projeyi otomatik olarak yapılandırdı, ancak varsayılan olarak QT4'e işaret ediyordu. Ben qt4 kullanarak inşa etmeye çalışırken QtWidgets bulamadığını söyledi garip bir hata var. Derleme aracı olarak Qt5 ile sorun ortadan kalktı.

Qtcreator'da varsayılan olmadığından, hata ayıklama / serbest bırakma için proje derlemesi olarak QT5'e NOKTADAN emin olun. Aksi takdirde bina yaparken garip hatalar alırsınız. Bu sorun, qt5 include ve qt5 libs yollarını göstermesi gereken derleme çıktısında kolayca belirlenebilir.

2:58:51: Running steps for project textures...
12:58:51: Starting: "/usr/bin/make" clean -w
make: Entering directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop Release'
rm -f qrc_textures.cpp
rm -f moc_glwidget.cpp moc_window.cpp
rm -f glwidget.o main.o window.o qrc_textures.o moc_glwidget.o moc_window.o
rm -f *~ core *.core
make: Leaving directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
12:58:52: The process "/usr/bin/make" exited normally.
12:58:52: Configuration unchanged, skipping qmake step.
12:58:52: Starting: "/usr/bin/make" -w
make: Entering directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o glwidget.o ../textures/glwidget.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o main.o ../textures/main.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o window.o ../textures/window.cpp
/opt/qt5/bin/rcc -name textures ../textures/textures.qrc -o qrc_textures.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o qrc_textures.o qrc_textures.cpp
/opt/qt5/bin/moc -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. ../textures/glwidget.h -o moc_glwidget.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o moc_glwidget.o moc_glwidget.cpp
/opt/qt5/bin/moc -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. ../textures/window.h -o moc_window.cpp
g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -fPIE -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I../../../../mkspecs/linux-g++-64 -I../textures -I../../../../include -I../../../../include/QtOpenGL -I../../../../include/QtWidgets -I../../../../include/QtGui -I../../../../include/QtCore -I. -I. -o moc_window.o moc_window.cpp
g++ -m64 -Wl,-O1 -Wl,-rpath,/opt/qt5/lib -o textures glwidget.o main.o window.o qrc_textures.o moc_glwidget.o moc_window.o   -L/usr/X11R6/lib64 -L/opt/qt5/lib -lQtOpenGL -lQtWidgets -lQtGui -lQtCore -lGL -lpthread 
make: Leaving directory `/opt/qt5/examples/qtbase/opengl/textures-build-Desktop-Release'
12:58:57: The process "/usr/bin/make" exited normally.
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.