سؤال

أواجه مشكلة عند نشر تطبيق مكتوب بلغة Qt 4.7.4/QtQuick 1.0 لـ Harmattan.على الرغم من أن كل شيء يسير بشكل صحيح في جهاز المحاكاة، إلا أن التطبيق لا يرسم أي واجهة مستخدم عند نشره على Nokia N9 (MeeGo 1.2 Harmattan، الإصدار PR1.1).نجح النشر ويمكن العثور على التطبيق في قائمة التطبيقات على الجهاز، وحتى مخرجات سجل وحدة التحكم يمكن رؤيتها في QtCreator، ولكن لا يوجد ما يشير إلى أن التطبيق يعمل بالفعل على الجهاز - يمكنني التنقل بحرية عبر النظام وافتح تطبيقات أخرى بينما يقول QtCreator أن تطبيقي قيد التشغيل.

يقول عرض إخراج التطبيق في QtCreator:

Killing remote process(es)...
Starting remote process ...
Remote process started.
Using the meego graphics system
Found SGX/MBX driver, enabling FullClearOnEveryFrame 
Found v1.4 driver, enabling brokenTexSubImage 

وهنا إخراج الترجمة:

Running build steps for project pacca...
Configuration unchanged, skipping qmake step.
Starting: "C:\qtsdk\madde\bin\make.exe" -w
make: Entering directory `/d/qtproject/pacca'
make: Nothing to be done for `first'.
make: Leaving directory `/d/qtproject/pacca'
The process "C:\qtsdk\madde\bin\make.exe" exited normally.
Creating package file ...
Package Creation: Running command 'c:/qtsdk/madde/bin/mad dpkg-buildpackage -nc -uc -us'.
dpkg-buildpackage: set CFLAGS to default value: -g -O2
dpkg-buildpackage: set CPPFLAGS to default value: 
dpkg-buildpackage: set LDFLAGS to default value: 
dpkg-buildpackage: set FFLAGS to default value: -g -O2
dpkg-buildpackage: set CXXFLAGS to default value: -g -O2
which: pgp: unknown command
dpkg-buildpackage: source package pacca
dpkg-buildpackage: source version 0.0.1
dpkg-buildpackage: source changed by unknown <>
dpkg-buildpackage: host architecture armel
 debian/rules build
make: Nothing to be done for `build'.
 debian/rules binary
dh_testdir
dh_testroot
dh_clean -k 
dh_installdirs
# Add here commands to install the package into debian/pacca.
/usr/bin/make INSTALL_ROOT="/d/qtproject/pacca"/debian/pacca install
make[1]: Entering directory `/d/qtproject/pacca'
cp -f -r d:/qtproject/pacca/qml/pacca /d/qtproject/pacca/debian/pacca/opt/pacca/qml/
install -m 644 -p d:/qtproject/pacca/pacca80.png /d/qtproject/pacca/debian/pacca/usr/share/icons/hicolor/80x80/apps/
install -m 644 -p d:/qtproject/pacca/pacca_harmattan.desktop /d/qtproject/pacca/debian/pacca/usr/share/applications/
install -m 755 -p "pacca" "/d/qtproject/pacca/debian/pacca/opt/pacca/bin/pacca"
make[1]: Leaving directory `/d/qtproject/pacca'
dh_testdir
dh_testroot
dh_installchangelogs 
dh_installdocs
dh_installexamples
dh_installman
dh_link
dh_strip
dh_compress
dh_fixperms
dh_installdeb
# dh_shlibdeps # Uncomment this line for use without Qt Creator
dh_gencontrol
dh_md5sums
dpkg-gencontrol: warning: unknown substitution variable ${shlibs:Depends}
dpkg-gencontrol: warning: unknown substitution variable ${misc:Depends}
dh_builddeb
aegis-manifest: No findings in 'pacca'.
 dpkg-genchanges -b -u.. >../pacca_0.0.1_armel.changes
dpkg-buildpackage: binary only upload (no source included)
dpkg-genchanges: binary-only upload - not including any source code
Can't locate Debian/Debhelper/Dh_Lib.pm in @INC (@INC contains: /usr/lib/perl5/5.8/msys /usr/lib/perl5/5.8 /usr/lib/perl5/site_perl/5.8/msys /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/site_perl/5.8 /usr/lib/perl5/vendor_perl/5.8/msys /usr/lib/perl5/vendor_perl/5.8 /usr/lib/perl5/vendor_perl/5.8 .) at c:/qtsdk/madde/madbin/dh_clean line 10.
BEGIN failed--compilation aborted at c:/qtsdk/madde/madbin/dh_clean line 10.
Package created.
Installing package to sysroot ...
Package 'pacca' removed.

Package 'pacca' installed.

Connecting to device...
Preparing SFTP connection...
Starting upload...
Successfully uploaded package file.
Installing package to device...
(Reading database ... 41700 files and directories currently installed.)
Preparing to replace pacca 0.0.1 (using .../pacca_0.0.1_armel.deb) ...
Unpacking replacement pacca ...
aegis-installing pacca (from '')
Setting up pacca (0.0.1) ...
Processing triggers for desktop-file-utils ...
Processing triggers for hicolor-icon-theme ...
Package installed.
Deployment finished.

على الرغم من أن إخراج الترجمة قد يعطي بعض التلميحات حول الخطأ، ليس لدي أدنى فكرة عن الخطأ الذي يحدث.ومن المثير للسخرية أنه في مرحلة تطوير سابقة، كان التطبيق يعمل على الجهاز.لكن لسوء الحظ لا أعرف ما الذي تغير منذ ذلك الحين.

أي مساعدة بتقدير كبير.شكرا لك مقدما.

هل كانت مفيدة؟

المحلول

وأخيراً، قمت بحل المشكلة.لقد كان أمرًا تافهًا للغاية، لكنه استغرق مني ساعات طويلة.

لجعل الكود عامًا (كما اعتقدت)، لم أرغب في الإعلان عن العرض والارتفاع الدقيقين لعنصر QML الجذري.بدلا من ذلك، حددت

anchors.fill: parent

حسنا، تلك كانت المشكلة.مجرد إضافة سطرين من التعليمات البرمجية قد حل مشكلتي (على الأقل، لتنفيذ التطبيق على هاتف Nokia N9).

width: 480
height: 854

يبدو أنه على الرغم من أن المحاكي يمكنه التعامل مع مرساة التعبئة، إلا أن N9 لا يتعرف عليها في العنصر الجذر وبالتالي لا يرسم أي شيء على الشاشة.

شكرًا لك وجد على مساعدتك التي قادتني إلى الاتجاه الصحيح.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top