Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
can't emerge mythtv on arm64 (shield tv)
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM
View previous topic :: View next topic  
Author Message
rwk
n00b
n00b


Joined: 15 Nov 2017
Posts: 3

PostPosted: Wed Nov 15, 2017 10:00 am    Post subject: can't emerge mythtv on arm64 (shield tv) Reply with quote

Code:
shieldtv qtsql # emerge mythtv

 * IMPORTANT: 9 news items need reading for repository 'gentoo'.
 * Use eselect news read to view new items.

Calculating dependencies... done!

!!! All ebuilds that could satisfy "dev-qt/qtsql:5[mysql]" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-qt/qtsql-5.7.1::gentoo (masked by: ~arm64 keyword)

(dependency required by "media-tv/mythtv-0.28.1-r1::gentoo" [ebuild])
(dependency required by "mythtv" [argument])
For more information, see the MASKED PACKAGES section in the emerge
man page or refer to the Gentoo Handbook.

qtsql-5.7.1 *is* installed (successfully emerged) *with* the mysql USE flag.

I have also added:

Code:
=dev-qt/qtsql-5.7.1


to /etc/portage/package.unmask

I have also added:

Code:
=dev-qt/qtsql-5.7.1-r1 ~arm64


to /etc/portage/package.accept_keywords

I have searched google for answers but found none.

Can anyone suggest a solution?

Many thanks!

[Moderator edit: added [code] tags to preserve output layout. -Hu]
Back to top
View user's profile Send private message
fedeliallalinea
Bodhisattva
Bodhisattva


Joined: 08 Mar 2003
Posts: 24697
Location: here

PostPosted: Wed Nov 15, 2017 11:06 am    Post subject: Reply with quote

Try to add only dev-qt/qtsql-5.7.1 (not -r1) in package.accept_keywords

EDIT: Welcome to gentoo!
_________________
Questions are guaranteed in life; Answers aren't.
Back to top
View user's profile Send private message
xaviermiller
Administrator
Administrator


Joined: 23 Jul 2004
Posts: 8509
Location: ~Brussels - Belgique

PostPosted: Wed Nov 15, 2017 11:32 am    Post subject: Reply with quote

Moved from Portage & Programming to Gentoo on ARM.
_________________
Kind regards,
Xavier Miller
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 46367
Location: 56N 3W

PostPosted: Wed Nov 15, 2017 12:51 pm    Post subject: Reply with quote

rwk,

Welcome to Gentoo.
Code:
- dev-qt/qtsql-5.7.1::gentoo (masked by: ~arm64 keyword)


arm64 is an experimental architecture on Gentoo. Little more than the packages required to build a stage3 are marked stable.
Expect to use ACCEPT_KEYWORDS="~arm64" in make.conf and to add things to package.accept_keywords too.

Lots of packages that are missing any arm64 keyword work, its just that nobody knows yet.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
rwk
n00b
n00b


Joined: 15 Nov 2017
Posts: 3

PostPosted: Fri Nov 17, 2017 2:19 am    Post subject: Reply with quote

Thank you for your reply. I want to reiterate, the dev-qt/qtsql package (with USE=mysql) is already successfully emerged on this arm64 system. The question is, why doesn't the dependency calculation made for mythtv recognize this?

Code:
# ACCEPT_KEYWORDS="~arm64" emerge -a mythtv
emerge: there are no ebuilds to satisfy "dev-qt/qtsql:5=[mysql]".

even though the qtsql ebuilds do exist and are installed.

I have been unable to get around this error except with --nodeps which then fails on every missing dependency (of which there are many many).

Please advise... (anyone) :)

Additional information:

I upgraded to dev-qt/qtsql-5.9.2 but still get the above error. Note the following:

Code:
# equery u qtsql
 * Found these USE flags for dev-qt/qtsql-5.9.2:
 U I
 - - debug    : Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
 - - freetds  : Add support for the TDS protocol to connect to MSSQL/Sybase databases
 - - odbc     : Add ODBC Support (Open DataBase Connectivity)
 - - postgres : Add support for the postgresql database
 + - sqlite   : Add support for sqlite - embedded sql database
 - - test     : Workaround to pull in packages needed to run with FEATURES=test. Portage-2.1.2 handles this internally, so don't set it in make.conf/package.use anymore


Why is "mysql" not listed above? It *is* in the ebuild:
Code:
      IUSE="freetds mysql oci8 odbc postgres +sqlite"


Does this have something to do with the message:
Code:
emerge: there are no ebuilds to satisfy "dev-qt/qtsql:5=[mysql]".


Is there any additional info I can provide to troubleshoot this?

[Moderator edit: added [code] tags to preserve output layout. -Hu]
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 16021

PostPosted: Fri Nov 17, 2017 2:54 am    Post subject: Reply with quote

As I read profiles/arch/arm64/use.mask, USE flag mysql is masked for havent tested yet (sic) on arm64. If I had to guess, I would say that equery is hiding it from you because you can't enable it. The output of emerge --pretend --verbose --tree dev-qt/qtsql:5 might be useful.
Back to top
View user's profile Send private message
rwk
n00b
n00b


Joined: 15 Nov 2017
Posts: 3

PostPosted: Sat Nov 18, 2017 12:20 am    Post subject: Reply with quote

Code:
# USE=mysql emerge --pretend --verbose --tree dev-qt/qtsql:5

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild   R    ] dev-qt/qtsql-5.9.2:5/5.9::gentoo  USE="sqlite -debug -freetds (-mysql) (-oci8) -odbc -postgres {-test}" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB

Is it normal (expected?) to see (-mysql) in qtsql when USE=mysql *was* used in the original build?

Is there a way around this?

Thanks for your help!

P.S. I am only interested in mythtv-frontend, so only the mysql client libraries are needed. I would therefore expect things to work even if mysql is itself untested. I want to force a way around this if there is a way.

[Moderator edit: added [code] tags to preserve output layout. -Hu]
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 16021

PostPosted: Sat Nov 18, 2017 2:03 am    Post subject: Reply with quote

Yes, it is normal. Since IUSE in dev-qt/qtsql specifies mysql (among other tokens), mysql must appear in the USE= line you showed. However, since it is masked on your profile, it is hard-disabled by the package manager. As long as it is hard-disabled, your existing attempt to enable it will be ignored. Per man 1 emerge documentation on --verbose (which I wouldn't expect you to know; I only cite so you will know next time), the parentheses indicate the flag is forced, masked, or removed (yes, three states are represented by a single decoration; context usually disambiguates this).

You could force your way around this with a local profile override unmasking the mysql USE flag. Per man 5 portage (again, cited so you can read the details I am omitting, not as a rebuke for not having read this before posting), I think the steps for this are (untested, from memory):
Code:
mkdir -p -m755 /etc/portage/profile
printf '%s\n' -mysql >> /etc/portage/profile/use.mask
chmod 644 /etc/portage/profile/use.mask
Beware that profile overrides take you into unsupported territory. The package may not work as expected, or at all. Any bugs you find while using a profile override may be rejected. Any bugs you choose to file anyway should be clearly marked that you are using an override, so that respondents know not to rely on standard assumptions. With those disclaimers made, feel free to post for help.
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 46367
Location: 56N 3W

PostPosted: Sat Nov 18, 2017 12:40 pm    Post subject: Reply with quote

rwk,

Nervous readers should not try this at home.
Code:
Pi3_64 portage # emerge mythtv -av

These are the packages that would be merged, in order:

Calculating dependencies... done!

The following keyword changes are necessary to proceed:
 (see "package.accept_keywords" in the portage(5) man page for more details)
# required by mythtv (argument)
=media-tv/mythtv-0.28.1-r1 **

NOTE: The --autounmask-keep-masks option will prevent emerge
      from creating package.unmask or ** keyword changes.

Would you like to add these changes to your config files? [Yes/No] n

 * In order to avoid wasting time, backtracking has terminated early
 * due to the above autounmask change(s). The --autounmask-backtrack=y
 * option can be used to force further backtracking, but there is no
 * guarantee that it will produce a solution.

emerge: there are no ebuilds to satisfy "dev-qt/qtsql:5[mysql]".
(dependency required by "media-tv/mythtv-0.28.1-r1::gentoo" [ebuild])
(dependency required by "mythtv" [argument])

This tells that media-tv/mythtv is not keyworded for arm64 at all, and if it was there are no ebuilds to satisfy "dev-qt/qtsql:5 with mysql set.

Adding <media-tv/mythtv-9999 ** to /etc/portage/package.accept_keywords/mythtv fixes the keyword.
Adding dev-qt/qtsql -mysql to /etc/portage/profile/package.use.mask fixes the hard mask

Enable USE=mysql in the normal way

Rinse and repeat.

It may not work, It might work and drink all the beer in your fridge while you watch mythtv :)
File a keywording/unmasking bug if it works.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
mDup
Apprentice
Apprentice


Joined: 14 Apr 2006
Posts: 198

PostPosted: Mon Nov 27, 2017 2:49 am    Post subject: Reply with quote

rwk wrote:
Code:
# USE=mysql emerge --pretend --verbose --tree dev-qt/qtsql:5

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!
[ebuild   R    ] dev-qt/qtsql-5.9.2:5/5.9::gentoo  USE="sqlite -debug -freetds (-mysql) (-oci8) -odbc -postgres {-test}" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB

Is it normal (expected?) to see (-mysql) in qtsql when USE=mysql *was* used in the original build?

Is there a way around this?

Thanks for your help!

P.S. I am only interested in mythtv-frontend, so only the mysql client libraries are needed. I would therefore expect things to work even if mysql is itself untested. I want to force a way around this if there is a way.

[Moderator edit: added [code] tags to preserve output layout. -Hu]



Just curious, what does:
Code:
# grep mysql /usr/portage/profiles/arch/arm64/use.mask

tell?

Also, can you boot shield to run gentoo, and, if so, is gentoo running booted from internal storage?
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 46367
Location: 56N 3W

PostPosted: Mon Nov 27, 2017 3:19 pm    Post subject: Reply with quote

rwk,

NeddySeagoon wrote:
Adding <media-tv/mythtv-9999 ** to /etc/portage/package.accept_keywords/mythtv fixes the keyword.
Adding dev-qt/qtsql -mysql to /etc/portage/profile/package.use.mask fixes the hard mask

Enable USE=mysql in the normal way


That let me build everything except mythtv itself. media-tv/mythtv-0.28.1-r1 failed with
Code:
libavcodec/libfaac.c: In function ‘Faac_encode_init’:
libavcodec/libfaac.c:117:13: error: ‘struct faacEncConfiguration’ has no member named ‘allowMidside’
but thats not an arm64 issue.

The hard one is dev-qt/qtwebkit which needs MAKEOPTS="-j1" and distcc disabled to build on a Raspberry Pi 3 in arm64 mode.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Gentoo on ARM All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum