We have moved to a new Sailfish OS Forum. Please start new discussions there.
1

Unable to use old targets like SailfishOS-2.2.1.18-armv7hl in 3.1.7 SDK

asked 2020-05-07 14:41:52 +0300

vamonster gravatar image

updated 2020-05-11 12:12:16 +0300

jovirkku gravatar image

Hello.

We are developing the application for the old SailfishOS release, 2, and were able to use previous targets to build our application for the target release.

In the latest SDK release I was able to setup old target via SDK Control Center. But when I go to the Updates and try to get updates for the installed target I see the following error:

Finished: Syncing tooling repos SailfishOS-2.2.1.18 - Exited with status 0

[|] Valid metadata not found at specified URL(s)
File '/repodata/repomd.xml' not found on medium 'https://releases.jolla.com/releases/2.2.1.18/jolla/i486/'

Error building the cache:
[|] Valid metadata not found at specified URL(s)
File '/repodata/repomd.xml' not found on medium 'https://releases.jolla.com/releases/2.2.1.18/sdk/i486/'

Error building the cache:
[|] Valid metadata not found at specified URL(s)

When trying to access specified URL via web-browser I see the 404 error from the CloudFront.

Is it possible that the repositories for old releases were not published on CloudFront?

Update

The concrete redirect from the CloudFront for me is the following: https://dvvwui2qyedk6.cloudfront.net/releases/2.2.1.18/sdk/i486/

Update #2

I was able to add target SailfishOS-2.2.0.29-armv7hl, but when trying to compile the project it provides several issues:

ldconfig: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.
ldconfig: loadlocale.c:129: _nl_intern_locale_data: Assertion `cnt < (sizeof (_nl_value_type_LC_TIME) / sizeof (_nl_value_type_LC_TIME[0]))' failed.

4 more lines like this and when it finally tries to compile the application, it breaks on the make step:

+ %qtc_make -j8
/var/tmp/rpm-tmp.n7PoPF: line 47: fg: no job control
error: Bad exit status from /var/tmp/rpm-tmp.n7PoPF (%build)
    Bad exit status from /var/tmp/rpm-tmp.n7PoPF (%build)

The same behavior has been tested on 2.4.0 and 2.2.4 SDK releases. I was reported by my colleague that he was able to use this target on 18.07 release.

I know the issues are not related one to another, but they both prevent using the old toolchains in the latest release.

edit retag flag offensive close delete

1 Answer

Sort by » oldest newest most voted
1

answered 2020-05-08 08:00:52 +0300

Ville Nummela gravatar image

You are absolutely correct with your findings - targets prior to Sailfish OS 3.0 are not supported with the latest SDK.

I don't recommend building against such an old OS anymore, but if you absolutely must do so, you should use the SDK version which matches the OS Release. SDK 1807 matches Sailfish OS 2.2.1, SDK 1804 matches Sailfish OS 2.2.0.

edit flag offensive delete publish link more

Comments

Thanks for this information.

But when I locally use 18.07 release, then it is still not able to connect to remote repositories required for the application to compile:

The following NEW packages are going to be installed:
  nemo-qml-plugin-notifications-qt5-devel openssl-devel qt5-qtdeclarative-qtquicktest-devel qt5-qttest-devel sqlite-devel 

5 new packages to install.
Overall download size: 1.5 MiB. After the operation, additional 3.5 MiB will be used.
Continue? [y/n/?] (y): y
File './mw/i486/nemo-qml-plugin-notifications-qt5-devel-1.1.6-1.4.2.jolla.i486.rpm' not found on medium 'https://releases.jolla.com/releases/2.2.1.18/jolla/i486/'

Abort, retry, ignore? [a/r/i/?] (a): a
Failed to provide Package nemo-qml-plugin-notifications-qt5-devel-1.1.6-1.4.2.jolla. Do you want to retry retrieval?

[jolla|plugin:ssu?repo=jolla] Can't provide file './mw/i486/nemo-qml-plugin-notifications-qt5-devel-1.1.6-1.4.2.jolla.i486.rpm' from repository 'jolla'
History:
 - File './mw/i486/nemo-qml-plugin-notifications-qt5-devel-1.1.6-1.4.2.jolla.i486.rpm' not found on medium 'https://releases.jolla.com/releases/2.2.1.18/jolla/i486/'

 - Can't provide ./mw/i486/nemo-qml-plugin-notifications-qt5-devel-1.1.6-1.4.2.jolla.i486.rpm

Abort, retry, ignore? [a/r/i] (a): a
Problem occured during or after installation or removal of packages:
Installation aborted by user

error: Failed build dependencies:
    pkgconfig(Qt5QuickTest) is needed by mobilepost-20.06.0-1.i486
    pkgconfig(Qt5Test) is needed by mobilepost-20.06.0-1.i486
    pkgconfig(nemonotifications-qt5) is needed by mobilepost-20.06.0-1.i486
    pkgconfig(openssl) is needed by mobilepost-20.06.0-1.i486
    sqlite-devel is needed by mobilepost-20.06.0-1.i486

In spite of the latest SDK support the repositories for some old toolchains are broken.

I have used SailfishOS-2.2.1.18-i486 toolchain after update was done in Control Center.

vamonster ( 2020-05-08 08:57:36 +0300 )edit

For some reason the 2.2.1.18 release was missing from the server. It should be there now, please try again.

Ville Nummela ( 2020-05-08 11:34:55 +0300 )edit

Thank you, the packages have been successfully downloaded, the toolchain is now operational in 18.07 and in 3.0.7 (though with some minor warnings).

As for the support of the older toolchains in newer SDK releases please consider to remove them from their Control Center.

vamonster ( 2020-05-08 11:59:47 +0300 )edit
Login/Signup to Answer

Question tools

Follow
2 followers

Stats

Asked: 2020-05-07 14:41:52 +0300

Seen: 279 times

Last updated: May 08 '20