歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 在Linux上進行Symbian開發的實驗性包

在Linux上進行Symbian開發的實驗性包

日期:2017/2/28 16:12:33   编辑:Linux教程
之前我們寫過一篇如何 在Linux上進行Symbian開發的文章。但是,過程有些復雜並且需要大量的手工設置。現在我們根據相同的方法更進一步,這裡我們提供了預打包的環境,完整地包含了編譯器、庫以及您開始開發所需要的所有東西!
在這裡我有義務向您報告我們的免責聲明:Nokia 完全不支持這些包。它們只是基於“最好地努力”而提供的,並且不能保證在您的系統中可以正常工作!另外請注意這裡並不保證之後我們會對這些包進行更新,並且以後我們也許會切換到另外一種發布格式,例如通過Qt SDK。
另外,目前您還不能使用如下方式在N8上進行開發,因為在N8上現在還不能安裝Qt 4.7.1。當N8收到它的第一個手機更新的時候,它將會被升級到Qt 4.7.1,然後您就可以把您的應用發布到它上面了。
現在,把上述事情放在一邊,讓我們來享受樂趣吧!
我自己作為一個Gentoo Linux用戶,很自然地就從構建ebuild(Gentoo中的一種包描述文件)開始。對於不太熟悉Gentoo的朋友,它並不是真正的包,而只是一些如何安裝包的配方。在這種方法下絕大部分包都是從源代碼編譯而得到的,但這並不是嚴格必需的,因為您的配方也可以包含一些指向已經預編譯好的二進制的參考。這樣做對於我的好處是通過創建這些構建包的配方,我可以使用同樣的配方創建Debian包,因此我只付出了一份的代價就得到了兩種包!
所以換句話說,這裡提供的包類型有Gentoo的ebuild和Debian的.deb包。RPM用戶應該可以通過 alien使用.deb包。
更新: 一位Troll同事很友好地提供了基於Fedora的RPM包,所以RPM用戶就不再需要使用alien了! (譯者注:在原Trolltech或者現在Qt,Nokia開發Qt的開發人員一般自稱Troll。)
對於Debian(和Ubuntu)用戶:下載並且安裝下列包(僅提供32位版本):
  • gcce-4.4.172-r1.deb
  • s60-sdk-5.0.deb
  • runonphone-4.7.1.deb
  • qt-symbian-libs-4.7.1-r1.deb (舊版本:qt-symbian-libs-4.7.1.deb)
對於RPM(Fedora)用戶:下載並且安裝下列包(僅提供32位版本):
  • gcce-4.4.172-1.fc13.i686.rpm
  • s60-sdk-5.0-1.fc13.i686.rpm
  • runonphone-4.7.1-1.fc13.i686.rpm
  • qt-symbian-libs-4.7.1-1.fc13.i686.rpm
對於Gentoo用戶:
  • 如果您還沒有安裝layman,那麼請安裝它,使用 emerge -av layman
  • layman -o http://qt.gitorious.org/qt-labs/ ... er/repositories.xml -L (首先我們需要列出安裝倉庫讓layman知道哪些是可用的)
  • layman -o http://qt.gitorious.org/qt-labs/ ... er/repositories.xml -A qt-symbian-overlay
  • 為了說明您要接受哪種協議,請把 ACCEPT_LICENSE="nokia-eula sourcery-g++" 添加到 /etc/make.conf
  • emerge -av qt-symbian-libs
對於所有用戶:
在安裝完之後,請重新打開您的控制台或者(重新啟動)來包含由這些包所導致的環境變化。
還有一些軟件是手機本身所需要的,很不走運,沒有任何方法來自動化這一過程。您需要檢查的第一件事情是您是否有App TRK;一些手機已經內置了,但絕大多數手機沒有。通過如下方式可以很簡單地檢查:
  • 通過USB線把您的手機和計算機連接起來。
  • 如果出現了帶有“Debug Services are available”的文字,那麼App TRK已經內置在您的手機中了。
  • 如果不是上述情況,那麼請根據Qt文檔:App TRK的指示安裝它。
另外,還有一些庫需要安裝。
  • 您可以進入“Application Manager”(程序管理器)查看您的手機是否包含所需的軟件。對於大多數手機來說它在主菜單的“Settings”(設置)或者主菜單的“Applications”(應用程序)中。
  • 請查找“PIPS Installer”和“Standard C++ library Common”。如果它們都至少是1.06版本的,那麼就不用再安裝了。
  • 否則,您需要從這裡下載並且安裝它們:http://pepper.troll.no/s60prereleases/OpenC-1.7-sis-files.zip。您可以使用剛剛安裝的runonphone工具通過 runonphone -s <sis-file> 來安裝它們。
  • 最後,我們需要把Qt自己安裝到手機上,您可以通過如下命令來做到:
    • runonphone -s /usr/share/qt4/qt-symbian/lib/Qt.sis
    • runonphone -s /usr/share/qt4/qt-symbian/lib/QtWebKit.sis
當然您的應用程序的用戶不需要做這些。為了使針對用戶的發布更容易,請參考 Symbian發布指導,特別是Smart Installer那一部分。
就是這些!您現在已經准備好進行開發了!當使用這些包進行Symbian開發的時候,唯一要注意的問題是,您必須使用qmake-symbian,而不是qmake。通過使用它,您應該可以通過如下命令試試您的第一個Hello World應用程序:
  • cd <my-hello-world-app>
  • qmake-symbian
  • make runonphone
一些已知問題:
  • 有時在運行rcomp工具的時候,Wine會報錯,“Failed to write UIDs”。這應該是安裝程序在安裝的時候考慮的,很不走運的是目前除了手動修改沒有其它可以適合每一個用戶的永久方案。解決辦法很簡單,就是運行這條命令:cp /usr/s60-sdk/epoc32/tools/uidcrc.exe `find ~/.wine/ -ipath '*windows/system32'`
  • 讓gcce的ebuild正常工作還是有點麻煩。有的時候它會無原因的停在那裡;如果發生這種情況,請您重試一下,也許第二次它就會正常工作,但是如果它不工作,您也別太驚奇。如果您很不幸遇到了這種情況,請您通過運行sh /usr/portage/distfiles/symbian-adt-4.4-172-arm-none-symbianelf.bin手動安裝它。然後您可以把sys-devel/gcce-4.4.172添加到/etc/portage/profile/package.provided來欺騙Portage您已經安裝了。
  • 除了上述之外,runonphone會在您插入手機之後自動檢測USB端口的時候失敗。如果出現這種情況,請閱讀Qt文檔中關於如何配置USB串口驅動的一節。在運行runonphone的時候,您也許可以通過為-p指定如/dev/ttyUSB1或者/dev/ttyACM1的參數來解決這一問題,詳細描述在這裡。
Copyright © Linux教程網 All Rights Reserved