Hey Veljko, I've worked some more on the different packages.
I don't understand why the OBS website doesn't create the download page for me.
For example: http://software.opensuse.org/download.h ... us-qt4-git
Have you got any clue ?
OpenSUSE buildservice Debian GIT builds
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
Sorry for the delay (did a concert on weekend (iron maiden-tribute (italy)) Qlight did the yob, again
And for those that did not compile yet (exclude flag). Disable the repos and other flags for each package accordingly.
warning: the qt5 build is pointing its files in "usr/lib(64)/qt4" change the spec file as mine and patch the "variables.pri" accordingly.
Whay? Is not GNU complaint and cause cross compile problems.
About the "translate.sh" Great job. I just have a suggestion:
To test for the "lrelease-qt5" first. Because is less likely to be installed by default and link to " lrelease " by the system witch is usually done in any distro for "lrelease-qt4"
In actual situation, It first test, for lrelease witch is (by defoult) linked to lrelease-qt4 and the files are done with it by ignoring lrelease-qt5. This is not good because that can lead for dependency errors. QT4-QT5
Tray to add as a "Build-Depends: ....qt5-tools (I'm not sure about the package name check it)" which will install lrelease-qt5
After some checking I think that the qttools5-dev depend on itself (it is strange). I don’t have any deb disto at hand to check.
May be, because you didn't disable the repos for libmad for opensuse, libmadand-development, ola for xubuntu,...I don't understand why the OBS website doesn't create the download page for me.
And for those that did not compile yet (exclude flag). Disable the repos and other flags for each package accordingly.
warning: the qt5 build is pointing its files in "usr/lib(64)/qt4" change the spec file as mine and patch the "variables.pri" accordingly.
Whay? Is not GNU complaint and cause cross compile problems.
About the "translate.sh" Great job. I just have a suggestion:
To test for the "lrelease-qt5" first. Because is less likely to be installed by default and link to " lrelease " by the system witch is usually done in any distro for "lrelease-qt4"
In actual situation, It first test, for lrelease witch is (by defoult) linked to lrelease-qt4 and the files are done with it by ignoring lrelease-qt5. This is not good because that can lead for dependency errors. QT4-QT5
Tray to add as a "Build-Depends: ....qt5-tools (I'm not sure about the package name check it)" which will install lrelease-qt5
After some checking I think that the qttools5-dev depend on itself (it is strange). I don’t have any deb disto at hand to check.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Cool ! I like Iron Maiden very much. What's the name of the band ?cingulingu wrote:Sorry for the delay (did a concert on weekend (iron maiden-tribute (italy)) Qlight did the yob, again
How do I disable those targets ? I searched the OBS website but couldn't find the option.May be, because you didn't disable the repos for libmad for opensuse, libmadand-development, ola for xubuntu,...I don't understand why the OBS website doesn't create the download page for me.
And for those that did not compile yet (exclude flag). Disable the repos and other flags for each package accordingly.
Plugins are not system libraries, but Qt plugins loaded by QLC+ at runtime. So basically they can be installed anywhere in the system.warning: the qt5 build is pointing its files in "usr/lib(64)/qt4" change the spec file as mine and patch the "variables.pri" accordingly.
Whay? Is not GNU complaint and cause cross compile problems.
I think they have nothing to do with GNU compliance.
I am aware that 'qt4' looks wrong in a 'qt5' installation, but I kept it for backward compatibility.
I think that in general all the plugins should be moved in /usr/share/qlcplus/plugins, even though this would break a few things.
Uhm..checking for the least probable lrelease by default doesn't sound like a good idea to me.About the "translate.sh" Great job. I just have a suggestion:
To test for the "lrelease-qt5" first. Because is less likely to be installed by default and link to " lrelease " by the system witch is usually done in any distro for "lrelease-qt4"
In actual situation, It first test, for lrelease witch is (by defoult) linked to lrelease-qt4 and the files are done with it by ignoring lrelease-qt5. This is not good because that can lead for dependency errors. QT4-QT5
Is yours a supposition or have you found information how an Ubuntu system installs Qt5 tools ?
I use Mint 17 daily and according to my distro lrelease is installed by qttools5-dev-tools but in /usr/lib/x86_64-linux-gnu/qt5/bin/lrelease
I've tried many packages but they all failes. No way to pass that check.Tray to add as a "Build-Depends: ....qt5-tools (I'm not sure about the package name check it)" which will install lrelease-qt5
After some checking I think that the qttools5-dev depend on itself (it is strange). I don’t have any deb disto at hand to check.
I need to investigate a bit futher.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
MoonchildCool ! I like Iron Maiden very much. What's the name of the band ?
Go in a project e.g. libmad and then go to repositories. After that do the same for all the others projects (qt4,git,...). Take a look at the links below, VERY IMPORTANT!How do I disable those targets ? I searched the OBS website but couldn't find the option.
You need to disable the build targets for libmad and libmad-dev (publish flags too). Because they are blacklisted in OBS. So no Download is enabled/published for anything !
Like this: https://build.opensuse.org/package/repo ... i79/libmad
and this: https://build.opensuse.org/package/repo ... nSUSE_13.1
Or you can grant me the permission to newly added/changed projects. Including the above.
By default "lrelease-qt4" is link to " lrelease " in almost all distros (opensuse, ubuntu,..). And " lrelease " will be the first one found even when you want to build against Qt5.Is yours a supposition or have you found information how an Ubuntu system installs Qt5 tools ?
So... If you turn that around, is much more logical to test for " lrelease-qt5 ". And if not fallback to qt4 --> " lrelease " or " lrelease-qt4 "
Almost none distro have "lrelease-qt5" installed by default. At least I didn't see one, yet.
I read somewhere that those packages a dependent on themselves. Why... don't know . Probably because they have bin and src packed together.I've tried many packages but they all failes. No way to pass that check.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Moonchild: LOL ! Great music but the singer is...SOOO italian ! Freaking accent that ruins the whole band
Packages webpage: I've added you as maintainer on every repository. Also flagged the repos as you suggested. Now it's building qt4-git. Let's see what happens.
[EDIT] Ohhh damn ! The right link is: https://software.opensuse.org/download. ... ge=qlcplus
lrelease: on a QLC+ .ts file, there's no substantial difference in running lrelease-qt4 or lrelease-qt5. They both produce valid .qm files.
The problem in Qt5 debian builds is an unmet dependency, which is required to deploy but not to build the sources.
I guess Debian checks are too strict in that sense and at the moment I have no idea how to solve it.
Packages webpage: I've added you as maintainer on every repository. Also flagged the repos as you suggested. Now it's building qt4-git. Let's see what happens.
[EDIT] Ohhh damn ! The right link is: https://software.opensuse.org/download. ... ge=qlcplus
lrelease: on a QLC+ .ts file, there's no substantial difference in running lrelease-qt4 or lrelease-qt5. They both produce valid .qm files.
The problem in Qt5 debian builds is an unmet dependency, which is required to deploy but not to build the sources.
I guess Debian checks are too strict in that sense and at the moment I have no idea how to solve it.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
Oh... Is not that bad... I've heard worse. (what you, wary wary... )Great music but the singer is...SOOO italian !
It seems to be OK now. The download page appears.Packages webpage: I've added you as maintainer on every repository. Also flagged the repos as you suggested. Now it's building qt4-git. Let's see what happens.
I know that. I'm just saying that the Qt5 is hire to stay. And sooner or later it can cause problems. So why not now?lrelease: on a QLC+ .ts file, there's no substantial difference in running lrelease-qt4 or lrelease-qt5. They both produce valid .qm files.
In the build-log it say to use "-d" switch. But as I said, I'm not to much in deb configs. I think it can be done in .dh file. Or in the meta configuration.The problem in Qt5 debian builds is an unmet dependency, which is required to deploy but not to build the sources.
I just sort out the package naming. You can found them in my branch: https://build.opensuse.org/project/show ... allegari79
P.S. The qlcplus-qt4 (main) is downloaded now from git with the version tag
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
This is just wrong. QLC+ tagged sources are in debug mode, while officially release sources are configured in release mode.cingulingu wrote:I just sort out the package naming. You can found them in my branch: https://build.opensuse.org/project/show ... allegari79
P.S. The qlcplus-qt4 (main) is downloaded now from git with the version tag
Anyway I think I have overwritten your changes. I tried to manually upload the released sources, but the Qt4 Ubuntu packages won't build. Damn it.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
I know, The problem is in the tar.gz archive itself. Because it has to have the same name as the project and for the deb build the directory inside has to have the same name too.
Project name: qlcplus-qt4 ---> Archive name: qlcplus-qt4-{version}.tar.gz ---> Directory Name: qlcplus-qt4-{version}
Possible solutions:
1) It is OK to live it as it is. I saw today that you already bumped the git version. And is already "tested" true qlcplus-qt4-git to compile correctly.
So when you will be ready for the new release just change the mode to release and tag it QLC+{version} as you already do. And correct the tag in obs. Simple and elegant.
2) Use a static approach. Upload the correctly formed archive and correct the version number in OBS.
3) Use a different source (ftp,cloud,...) in _service file with correctly formed archive as a target.
4) Tray to make a _service file which unpack the entire archive and repack it in a correct way ( heavy duty staff ).
5) Tray to correct the debian build to find the correct source ( but I'm skeptic about this solution )
6) I'm out of options
Project name: qlcplus-qt4 ---> Archive name: qlcplus-qt4-{version}.tar.gz ---> Directory Name: qlcplus-qt4-{version}
Possible solutions:
1) It is OK to live it as it is. I saw today that you already bumped the git version. And is already "tested" true qlcplus-qt4-git to compile correctly.
So when you will be ready for the new release just change the mode to release and tag it QLC+{version} as you already do. And correct the tag in obs. Simple and elegant.
2) Use a static approach. Upload the correctly formed archive and correct the version number in OBS.
3) Use a different source (ftp,cloud,...) in _service file with correctly formed archive as a target.
4) Tray to make a _service file which unpack the entire archive and repack it in a correct way ( heavy duty staff ).
5) Tray to correct the debian build to find the correct source ( but I'm skeptic about this solution )
6) I'm out of options
Last edited by cingulingu on Tue Sep 22, 2015 3:41 pm, edited 1 time in total.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
I thought about #1 too, but there is a problem. We need to distinguish between qt4 and qt5 versions.
So the final packages must have different names. E.g.
qlcplus-4.10.0.qt4.i586.deb
qlcplus-4.10.0.qt5.i586.deb
etc..
I would say I'd opt for #2. I am uploading a qlcplus-qt4-4.9.1.tar.gz package in qlcplus-qt4. It's the official sources package, but renamed.
Let's see if it builds
So the final packages must have different names. E.g.
qlcplus-4.10.0.qt4.i586.deb
qlcplus-4.10.0.qt5.i586.deb
etc..
I would say I'd opt for #2. I am uploading a qlcplus-qt4-4.9.1.tar.gz package in qlcplus-qt4. It's the official sources package, but renamed.
Let's see if it builds
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
In the first solution this is not a problem. Just change the name in the _service to "qlcplus-qt5". Every thing else is taken care of, automatically !
Actually the names of the packages will be:
qlcplus-qt4-4.10.0.i586.deb
qlcplus-qt5-4.10.0.i586.deb
.
.
.
Same as the projects names!
Actually the names of the packages will be:
qlcplus-qt4-4.10.0.i586.deb
qlcplus-qt5-4.10.0.i586.deb
.
.
.
Same as the projects names!
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
I think I figured out what's wrong with qlcplus-qt4 Ubuntu packages.
The damn OBS doesn't like qlcplus-xx-4.9.1.tar.gz, but instead it likes qlcplus-4.9.1.xx.tar.gz.
That's the reason why GIT builds work and why this page gives no data:
https://software.opensuse.org/download. ... us-qt4-git
Because the package name is qlcplus and not qlcplus-xx-yy !
Now qlcplus-qt4 fails for other reasons, but it built the whole sources.
Hopefully qlcplus 4.10.0 should have all the fixes to build and pass the test units.
The damn OBS doesn't like qlcplus-xx-4.9.1.tar.gz, but instead it likes qlcplus-4.9.1.xx.tar.gz.
That's the reason why GIT builds work and why this page gives no data:
https://software.opensuse.org/download. ... us-qt4-git
Because the package name is qlcplus and not qlcplus-xx-yy !
Now qlcplus-qt4 fails for other reasons, but it built the whole sources.
Hopefully qlcplus 4.10.0 should have all the fixes to build and pass the test units.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
I don't think so. I use the exact same syntax for the names in my projects. And I don't have any problem with that.I think I figured out what's wrong with qlcplus-qt4 Ubuntu packages.
The damn OBS doesn't like qlcplus-xx-4.9.1.tar.gz, but instead it likes qlcplus-4.9.1.xx.tar.gz.
But don't forget the most important thing about names. The name of the package must be the same as the project to be published!
Even though, the qlcplus-qt4 for deb didn't compile too (your fixes upstream on tests). It looks like a way to go.
Take a look here:
https://build.opensuse.org/package/show ... lcplus-qt4
https://build.opensuse.org/package/show ... us-qt4-git
P.S.
Can we talk true skype about this? I think that will be much faster. Mail me your nick or PM me.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Veljko, please help to fix what's not building instead of keep commenting about the way to go.
I won't look at your packages because you introduce errors like:
- new version is 4.10.0 and not 4.10
- in a Debian .dsc file "Standards-Version:" must be 3.7.3 and not the QLC+ version or 4.9
- GitHub tagged sources produce DEBUG builds and are not OK for a stable release (qlcplus-qt4)
So if you're going to make changes to my repo, please change only the things you're sure about.
At this stage I don't care that much about names, but I can assure you my packages can all be found here:
https://software.opensuse.org/download. ... ge=qlcplus
And those are the names that I actually want.
I won't look at your packages because you introduce errors like:
- new version is 4.10.0 and not 4.10
- in a Debian .dsc file "Standards-Version:" must be 3.7.3 and not the QLC+ version or 4.9
- GitHub tagged sources produce DEBUG builds and are not OK for a stable release (qlcplus-qt4)
So if you're going to make changes to my repo, please change only the things you're sure about.
At this stage I don't care that much about names, but I can assure you my packages can all be found here:
https://software.opensuse.org/download. ... ge=qlcplus
And those are the names that I actually want.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
I know what you want to achieve (qlcplus-4.9.1.xx.tar.gz).
I just tray to explain, that you are taking the wrong way.
The hole point, is that the names and versions must be consistent threw out the whole project, beginning with the project name.
If they are not. That will lead to inconsistency, build fails, not published,... That is the OBS imperative rule for cross platform builds.
So if you want to build a qlcplus-{version.xx}.tar.gz you need to open a new project named qlcplus ({name}-{version+xx}) And this must be used in all config files for all distros!
And that will lead to another problem, when the qt5 will be added. There can not be 2 or more projects with the same name.
About the 2 numbers version 4.10. I used them just for qlcplus-qtx-git.
Why? The first number is a big release number, second is a small one, and the third is composed from where the source was take (git), commit number +date and hour.
e.g. (git.%cd.%h). and is updated each time the build is triggered.
So if same tester told you (later on) that there is a problem, you can easily pinpoint the version,commit,and when it was build.
P.S.
The links that I send you, are from a subproject. They are not synchronizing with yours any more. Just upon request.
They are not published and are there just for testing stuff. Don't take them as 100% ready.
e.g. main taken from git, versions and other stuff.
Update: 23.09.15 - 15:19 --- Your Download page for qlcplus-qt4 is empty again.
Didn't touch any thing.
I just tray to explain, that you are taking the wrong way.
The hole point, is that the names and versions must be consistent threw out the whole project, beginning with the project name.
If they are not. That will lead to inconsistency, build fails, not published,... That is the OBS imperative rule for cross platform builds.
So if you want to build a qlcplus-{version.xx}.tar.gz you need to open a new project named qlcplus ({name}-{version+xx}) And this must be used in all config files for all distros!
And that will lead to another problem, when the qt5 will be added. There can not be 2 or more projects with the same name.
About the 2 numbers version 4.10. I used them just for qlcplus-qtx-git.
Why? The first number is a big release number, second is a small one, and the third is composed from where the source was take (git), commit number +date and hour.
e.g. (git.%cd.%h). and is updated each time the build is triggered.
So if same tester told you (later on) that there is a problem, you can easily pinpoint the version,commit,and when it was build.
P.S.
The links that I send you, are from a subproject. They are not synchronizing with yours any more. Just upon request.
They are not published and are there just for testing stuff. Don't take them as 100% ready.
e.g. main taken from git, versions and other stuff.
Update: 23.09.15 - 15:19 --- Your Download page for qlcplus-qt4 is empty again.
Code: Select all
qlcplus.src: W: invalid-spec-name
The spec file name (without the .spec suffix) must match the package name
("Name:" tag). Either rename your package or the specfile.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
Qt5 dependencies for xubuntu, sorted.
link: https://build.opensuse.org/package/show ... us-qt5-git
Look at : qlcplus-qt5-git.dsc
Build work for:
12.04--NO
14.04--NO
15.04--YES
As expected.
link: https://build.opensuse.org/package/show ... us-qt5-git
Look at : qlcplus-qt5-git.dsc
Build work for:
12.04--NO
14.04--NO
15.04--YES
As expected.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
Well done Veljko.
I ported some of your changes to my repos. Thanks.
I still don't understand a few things though:
- my qlcplus-qt4 arch packages fail - I'm not using a GiHub snapshot, but a tweaked official tar.gz to build on debian
[EDIT] The same is happening in the AUR website. Apparently it is something related to release builds - wow - Under investigation
- qlcplus-qt4 debian packages do not show up here: http://software.opensuse.org/download.h ... lcplus-qt4
- my qlcplus-qt5-git still doesn't build even with your changes. Am I missing something ?
If you can have a look I would be thankful
I ported some of your changes to my repos. Thanks.
I still don't understand a few things though:
- my qlcplus-qt4 arch packages fail - I'm not using a GiHub snapshot, but a tweaked official tar.gz to build on debian
[EDIT] The same is happening in the AUR website. Apparently it is something related to release builds - wow - Under investigation
- qlcplus-qt4 debian packages do not show up here: http://software.opensuse.org/download.h ... lcplus-qt4
- my qlcplus-qt5-git still doesn't build even with your changes. Am I missing something ?
If you can have a look I would be thankful
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
Don't have a clue. Can you create a mockup 4.10.0 -- "release like tar.gz" so we can test the builds with all the corrections in the code already done.- my qlcplus-qt4 arch packages fail
Publish flags "Disabled". I enabled them but they need some time to recalculate and publish. --- Doneqlcplus-qt4 debian packages do not show
Yes. ", qt5-default," in .dsc -- already added.my qlcplus-qt5-git still doesn't build even with your changes. Am I missing something ?
That's why I asked to test for "lrelease-qt5" first. It seems that ubuntu has a hard-link for "lrelease --> lrelease-qt4" but we didn't use qt4tools.
But "qt5-default" sort it.
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
As I suspected, checking for lrelease-qt5 is not a feasible way.
See this change:
https://github.com/mcallegari/qlcplus/c ... 71ac172cbd
Produces this on ubuntu 14.04 and 15.04:
[ 280s] Forcing the use of lrelease-qt5
[ 280s] lrelease, lrelease-qt4 and lrelease-qt5 are not present in this system ! Aborting.
It should use the absolute path, but it's a horrible solution. On my Mint distro (equivalent of Ubuntu 14.04) lrelease-qt5 is here
/usr/lib/x86_64-linux-gnu/qt5/bin/lrelease
so it even depends on the architecture.
What a crap.
As for qlcplus-qt4 I've uploaded a pseudo release 4.10.0 package and Arch still fails. Apparently Arch has serious problems in building a release Qt application. Crap.
See this change:
https://github.com/mcallegari/qlcplus/c ... 71ac172cbd
Produces this on ubuntu 14.04 and 15.04:
[ 280s] Forcing the use of lrelease-qt5
[ 280s] lrelease, lrelease-qt4 and lrelease-qt5 are not present in this system ! Aborting.
It should use the absolute path, but it's a horrible solution. On my Mint distro (equivalent of Ubuntu 14.04) lrelease-qt5 is here
/usr/lib/x86_64-linux-gnu/qt5/bin/lrelease
so it even depends on the architecture.
What a crap.
As for qlcplus-qt4 I've uploaded a pseudo release 4.10.0 package and Arch still fails. Apparently Arch has serious problems in building a release Qt application. Crap.
- cingulingu
- Posts: 57
- Joined: Sat Aug 22, 2015 7:42 am
- Real Name: Veljko Stankov
Totally agree.so it even depends on the architecture.
What a crap.
I saw the log. I have still no clue. I will take a deeper look.As for qlcplus-qt4 I've uploaded a pseudo release 4.10.0 package and Arch still fails. Apparently Arch has serious problems in building a release Qt application. Crap.
Just a question. Did the "make" take the right switches?
- mcallegari
- Posts: 4481
- Joined: Sun Apr 12, 2015 9:09 am
- Location: Italy
- Real Name: Massimo Callegari
- Contact:
I think so, and Googling the issue seems to be a GCC 5 related problem.cingulingu wrote:Did the "make" take the right switches?
Qt4 and GCC5 have like 3 years of difference. Qt4 is most likely not ready for GCC 5.
See here: https://lists.debian.org/debian-qt-kde/ ... 00182.html
I'm trying to understand if there is a way to force a specific GCC version (e.g. 4.8) in PKGBUILD
[EDIT] SOLVED. The magic was:
Code: Select all
qmake-qt4 QMAKE_CXXFLAGS+=-Wno-error=unused-variable