[SailfishDevel] Installation of import packages on Qt5 Alpha Emulator: Solved (I think)
christopher.lamb at thurweb.ch
christopher.lamb at thurweb.ch
Sat Aug 3 11:39:15 UTC 2013
I think I have managed to solve this problem.
First, just to simplify things I created a new project TestLib of type
"Libraries / QT Quick 2 Extension Plugin". I gave this the url
As this is a throwaway demo I made no change to the code.
Next I created a thowaway Sailfish QML project TestLibImport using the
standard "Hello Sailors" template. The only change I made was to add
"import org.flyingsheep.testlib 1.0"
This gave me a simple, pure Qt5 / Sailfish Silica testbed to play with.
Next I "installed" the library on the SDK and Emulator. Based on my
experience with the Qt 4 Sailfish Alpha, I chose the install location
(this is available on the host via)
Then I hit the QtCreator Compile and Run Button to run TestLibImports.
This gave the same error: 'module "org.flyingsheep.testlib" is not installed'.
So it seemed to me clear that I was installing in the wrong place.
Then it struck me: but the import to Sailfish.Silica works? So where
are those files.
So I did a quick search for SilicaFlickable.qml on the Emulator:
find / -name SilicaFlickable.qml
So it looks like the install location should be /usr/lib/qt5/qml as
opposed to /usr/lib/qt5/imports (or /usr/lib/qt4/imports on the old
And yes, if I install TestLib in /usr/lib/qt5/imports, then
So the question is: Is /usr/lib/qt5/imports now the official correct
place to install import libraries?
Zitat von Superpelican <superpelican at zoho.com>:
> Yes, that was indeed what I had read, I was just going to send the
> link to the mailinglist ;)
> Well I don't think I can help with a C++ plugin. I myself now just
> use a C++ class which is in the same project as the QML UI to
> interface with C++. That turned out to be easier,
> On 08/03/2013 11:33 AM, christopher.lamb at thurweb.ch wrote:
>> Hi Superpelican
>> you probably read that here:
>> https://qt-project.org/doc/qt-5.1/qtdoc/qtquick-porting-qt5.html#qml-plugins "Individual file imports no longer work (for example, import "MyType.qml"). Import the containing directory
>> But what I am doing (trying to do) is different. I am importing a library.
>> The library contains a whole set of qml components, a C++ plugin
>> defining types, a qmldir file and a plugins.qmltypes file.
>> A "standard" Qt4 equivalent is the nokia meego components which
>> would be imported with "import com.nokia.meego 1.0"
>> Having done some more thinking myself, I now think the problem
>> could be that the library itself must first be migrated to Qt5. In
>> a hurry to get things working i had just copied across the old Qt4
>> version. In all probabilities it maybe in the right place but won't
>> work on Qt5.
>> Thanks for the hint
>> Zitat von Superpelican <superpelican at zoho.com>:
>>> I read on a wiki/docs page on qt-project.org yesterday that it
>>> isn't possible anymore to import a single .qml, where this was
>>> possible in Qt 4.8. Instead you now have to import the directory
>>> where the .qml is located in. I don't know on which page I read,
>>> but I can look it up when I'm behind my laptop again. It was one
>>> of the differences between Qt 4
>>> 4 and 5/porting to Qt5 pages though.
>>> Hope this is helpful,
>>> On Fri Aug 2 2013 11:39:46 PM CEST, christopher.lamb at thurweb.ch wrote:
>>>> Hi All
>>>> Is there anything different about where Qt import packages should be
>>>> installed on the Qt5 Alpha Emulator?
>>>> By "import package" I mean the sort of thing that you import to a qml
>>>> file as follows
>>>> import org.flyingsheep.abstractui 1.0
>>>> In the old Qt 4.8.3 Alpha Emulator I installed my package in
>>>> On the new Qt 5 Alpha Emulator I have installed the package under
>>>> i.e. in the Qt5 imports directory rather than the Qt4 equivalent.
>>>> However when I try and run an app importing this package in QtCreator
>>>> I get the following error:
>>>> file:///opt/sdk/landedsettingsQt5_21/usr/share/landedsettingsQt5_21/main.qml:2:1: module "org.flyingsheep.abstractui" is not
>>>> Any ideas?
>>>> SailfishOS.org Devel mailing list
More information about the Devel