On 13.12.2013 20:02, superpelican wrote:

Hello,

I just completely removed my old SDK with the SDK Maintenance tool (and also removed $HOME/.scratchbox2 as the installer of the new SDK version suggested, I also removed the Mer SDK VM and Emulator VM of the old SDK version in the Virtualbox Manager) and installed the new 1312 SDK. When I tried to build my simple, little multiplication tables practising application Quick Clamshell <https://bitbucket.org/Superpelican/quick_clamshell> it failed with the following messages in the Compile Output pane:

Hi, did this build in the previous "1310" release of the SDK?

The application seems to use the "old way" of specifying a sailfishapplication, since it doesn't use libsailfishapp, which is the new (since 1310 installer) and recommended way of creating applications for Sailfish OS.

Before trying to build your project with "1312" be sure to clean all previous build results from the project directory. Your bitbucket repository has lots of build generated files (like the application binary) that should not be there.

....
+ QT_SELECT=5
+ make install INSTALL_ROOT=/home/deploy/installroot


install -m 755 -p "Quick2Clamshell" "/home/deploy/installroot/usr/bin/Quick2Clamshell"
: "/home/deploy/installroot/usr/bin/Quick2Clamshell"
install -m 755 -p /home/mersdk/Coding/ClamshellSailfish/Quick2Clamshell/main.qml /home/deploy/installroot/usr/share/Quick2Clamshell/
: /home/deploy/installroot/usr/share/Quick2Clamshell/main.qml
cp -f -R /home/mersdk/Coding/ClamshellSailfish/Quick2Clamshell/pages /home/deploy/installroot/usr/share/Quick2Clamshell/ cp -f -R /home/mersdk/Coding/ClamshellSailfish/Quick2Clamshell/cover /home/deploy/installroot/usr/share/Quick2Clamshell/ install -m 755 -p /home/mersdk/Coding/ClamshellSailfish/Quick2Clamshell/main.qml /home/deploy/installroot/usr/share/Quick2Clamshell/
: /home/deploy/installroot/usr/share/Quick2Clamshell/main.qml
install -m 755 -p /home/mersdk/Coding/ClamshellSailfish/Quick2Clamshell/Quick2Clamshell.desktop /home/deploy/installroot/usr/share/applications/
: /home/deploy/installroot/usr/share/applications/Quick2Clamshell.desktop
+ /usr/lib/rpm/find-debuginfo.sh --strict-build-id /home/mersdk/Coding/ClamshellSailfish/build-Quick2Clamshell-MerSDK_SailfishOS_i486_x86-Release/
...

Processing files: Quick2Clamshell-0.1-1.i586
error:
File not found: /home/deploy/installroot/icons

That "File not found" is the initial problem.




RPM build errors:
error:
File not found: /home/deploy/installroot/images

error:
File not found: /home/deploy/installroot/usr/share/Quick2Clamshell/images

    File not found: /home/deploy/installroot/icons

    File not found: /home/deploy/installroot/images
File not found: /home/deploy/installroot/usr/share/Quick2Clamshell/images



Looking at the make install output from earlier in the log, we can see that the /icons and /images directories are not installed, leading to the initial problem.

The output below comes just because the build engine tries to copy files to the emulator, but there are no files it can find because the build failed already. The build/deploy process should have ended to the RPM build errors and seems like something to fix in future SDK releases.


receiving incremental file list

sent 8 bytes  received 87 bytes  190.00 bytes/sec
total size is 0  speedup is 0.00
rsync: change_dir "/home/nemo/RPMS" failed: No such file or directory (2)


rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1637) [Receiver=3.1.0]


rsync: [Receiver] write error: Broken pipe (32)


Command failed: A filename to install is required
18:41:38: The process "$HOME/.config/SailfishAlpha3/mer-sdk-tools/MerSDK/SailfishOS-i486-x86/deploy" exited with code 3. Error while building/deploying project Quick2Clamshell (kit: MerSDK-SailfishOS-i486-x86)
When executing step 'Rpm'
18:41:38: Elapsed time: 00:06.
"

....

I believe this isn't related to my app, but rather a problem with the new SDK, so I thought I'd post it on the ML ;)


There is something incorrect in the way you have specified the RPM packaging for your application. Looking at your .yaml file, its files section specifies that /images and /icons should be added to the RPM package. That means images and icons directories in the root of the filesystem. I'm sure you don't really want them to be there, but somewhere under /usr/share/applicationname instead.

Please take a look at the following links, which [1] describe what kind of requirements there are for an application you might want to ship to the Harbour one day and [2] in detail describe creating an installation package (RPM) for your application.

[1] https://harbour.jolla.com/faq

[2] https://sailfishos.org/develop-packaging-apps.html

Also, take a while to study the latest application template "File->New Project" and the example and tutorial applications that come with the "1312" SDK to see how to use libsailfishapp in your application.

Kind Regards,

Superpelican

P.S.:Someone I know already received her Jolla today, so I had the opportunity to try it out already before my phone arrives soon :) It is absolutely awesome! Congratulations on this great product! Within 20 minutes the swipe-based UI felt like a second nature, while I have never used a N9 or BB10 device!
I have only watched a lot of videos ;)


Glad to hear that! :-) I hope you can figure out the packaging issues with your app.

For a more real-time discussion with other developers, feel free to join #sailfishos irc channel in Freenode.

Best regards,
 Juha

_______________________________________________
SailfishOS.org Devel mailing list

Reply via email to