Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On 4/18/20 10:17 PM, Steve Freeman wrote: > > Based on your suggestion, I simply added the following line to > /etc/portage/package.accept_keywords: > =dev-php/pecl-apcu-5.1.18 ~amd64 > > It worked like a champ. Thank you very much! > Now that php-7.4 is stable, we should probably stabilize the (only, in some cases) versions of the PHP extensions that support it. Feel free to open a stabilization request bug.
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
Ashley Dixon wrote: > On Sat, Apr 18, 2020 at 09:45:44PM -0500, Dale wrote: >> I seem to have been on the right track but couldn't figure out where to >> go with the next step. At times, I just have to ask for help. The >> output of emerge is cryptic for sure. Of course, I know nothing about >> PHP since I don't use it here. > The output of emerge isn't necessarily cryptic; it's just concise, and > the > documentation describing its output is phenomenal. `man emerge` has a > rather > intuitive table of all symbols relating to USE flags: > > Symbol LocationMeaning > ── > > -prefix not enabled (either disabled or removed) > *suffix transition to or from the enabled state > %suffix newly added or removed > () circumfix forced, masked, or removed > {} circumfix state is bound to FEATURES settings > > Most of us mere mortals call it cryptic. LOL Trying to figure out some outputs of emerge requires a whole new slide rule and a decoder ring. Glad you were able to help Steve. Dale :-) :-)
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On 2020-04-18 22:01, Ashley Dixon wrote: On Sat, Apr 18, 2020 at 09:45:44PM -0500, Dale wrote: I seem to have been on the right track but couldn't figure out where to go with the next step. At times, I just have to ask for help. The output of emerge is cryptic for sure. Of course, I know nothing about PHP since I don't use it here. The output of emerge isn't necessarily cryptic; it's just concise, and the documentation describing its output is phenomenal. `man emerge` has a rather intuitive table of all symbols relating to USE flags: Symbol LocationMeaning ── -prefix not enabled (either disabled or removed) *suffix transition to or from the enabled state %suffix newly added or removed () circumfix forced, masked, or removed {} circumfix state is bound to FEATURES settings On Sat, Apr 18, 2020 at 09:17:01PM -0500, Steve Freeman wrote: I did not see anything in my output that made think "~amd64". How on earth did you figure that out? I would love to know. :-) In Steve's case, the `(php7-4)`, as he suspected, indicates that the `php7-4` flag was "forced, masked, or removed". It clearly wasn't forced or removed, so I checked the base profile package.use.stable.mask to find the following addition from Brian Evans, made 27/02/2020, referencing bugs #706180 and #710942 (the former of which explicitly refers to pecl-apcu). # Brian Evans (2020-02-27) # Two packages are delayed during stable of PHP 7.4 # arm, arm64 and hppa necessary to not disruput consistency # but this will allow all other packages to be used # Bug 706180, 710942 dev-php/pecl-apcu php_targets_php7-4 dev-php/pecl-yaz php_targets_php7-4 The commit can be viewed on-line at [1]. Hope this helps, Ashley. [1] https://gitweb.gentoo.org/repo/gentoo.git/commit/profiles/base/package.use.stable.mask?id=4b3ffbad63031773ffbc04eff329c6986fb194a3 Thank you very much for taking time to explain. I have learned something today. :-) Much obliged for the help. Steve
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On Sat, Apr 18, 2020 at 09:45:44PM -0500, Dale wrote: > I seem to have been on the right track but couldn't figure out where to > go with the next step. At times, I just have to ask for help. The > output of emerge is cryptic for sure. Of course, I know nothing about > PHP since I don't use it here. The output of emerge isn't necessarily cryptic; it's just concise, and the documentation describing its output is phenomenal. `man emerge` has a rather intuitive table of all symbols relating to USE flags: Symbol LocationMeaning ── -prefix not enabled (either disabled or removed) *suffix transition to or from the enabled state %suffix newly added or removed () circumfix forced, masked, or removed {} circumfix state is bound to FEATURES settings On Sat, Apr 18, 2020 at 09:17:01PM -0500, Steve Freeman wrote: > I did not see anything in my output that made think "~amd64". How on earth > did you figure that out? I would love to know. :-) In Steve's case, the `(php7-4)`, as he suspected, indicates that the `php7-4` flag was "forced, masked, or removed". It clearly wasn't forced or removed, so I checked the base profile package.use.stable.mask to find the following addition from Brian Evans, made 27/02/2020, referencing bugs #706180 and #710942 (the former of which explicitly refers to pecl-apcu). # Brian Evans (2020-02-27) # Two packages are delayed during stable of PHP 7.4 # arm, arm64 and hppa necessary to not disruput consistency # but this will allow all other packages to be used # Bug 706180, 710942 dev-php/pecl-apcu php_targets_php7-4 dev-php/pecl-yaz php_targets_php7-4 The commit can be viewed on-line at [1]. Hope this helps, Ashley. [1] https://gitweb.gentoo.org/repo/gentoo.git/commit/profiles/base/package.use.stable.mask?id=4b3ffbad63031773ffbc04eff329c6986fb194a3 -- Ashley Dixon suugaku.co.uk 2A9A 4117 DA96 D18A 8A7B B0D2 A30E BF25 F290 A8AA signature.asc Description: PGP signature
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
Steve Freeman wrote: > On 2020-04-18 20:42, Dale wrote: >> Steve Freeman wrote: >>> I am trying to eliminate PHP 7.3 from my system. But I am having >>> trouble building dev-php/pecl-apcu-5.1.18 with support for PHP 7.4. >>> >>> I am getting confusing output regarding whether pecl-apcu can be built >>> with PHP 7.4 support. It is working just fine with PHP 7.3 (until I >>> changed eselect php to 7.4, which broke things as I expected). >>> >>> Currently installed are: >>> # equery l php pecl-apcu >>> * Searching for php ... >>> [IP-] [ ] dev-lang/php-7.3.17:7.3 >>> [IP-] [ ] dev-lang/php-7.4.5:7.4 >>> >>> * Searching for pecl-apcu ... >>> [IP-] [ ] dev-php/pecl-apcu-5.1.18:7 >>> >>> >>> # grep PHP_TARGETS /etc/portage/make.conf >>> PHP_TARGETS="php7-4" >>> >>> # eselect php list cli >>> [1] php7.3 >>> [2] php7.4 * >>> # eselect php list apache2 >>> [1] php7.3 >>> [2] php7.4 * >>> The other eselect PHP modules are not set. >>> >>> >>> When I try to re-emerge pecl-apcu, I get output which confuses me: >>> # emerge -pv pecl-apcu >>> >>> These are the packages that would be merged, in order: >>> >>> Calculating dependencies / >>> >>> !!! Problem resolving dependencies for dev-php/pecl-apcu >>> ... done! >>> >>> !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. >>> - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap >>> -lock-pthreadmutex -lock-semaphore -lock-spinlock" >>> PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" >>> >>> The following REQUIRED_USE flag constraints are unsatisfied: >>> any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 >>> php_targets_php7-4 ) >>> >>> The above constraints are a subset of the following complete >>> expression: >>> exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock >>> lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 >>> php_targets_php7-3 php_targets_php7-4 ) >>> >>> >>> If I understand correctly, PHP_TARGETS="(-php7-1) -php7-2 -php7-3 >>> (-php7-4)" above means that I cannot use 7.1 nor 7.4 (correct me if >>> I'm wrong). But I do not understand why, since all four versions of >>> PHP are listed in the REQUIRED_USE line underneath. >>> >>> >>> Another thing that confuses me is that PHP 7.4 isn't even listed in >>> the output below (neither enabled nor disabled, but missing entirely): >>> # equery u pecl-apcu >>> [ Legend : U - final flag setting for installation] >>> [ : I - package is installed with flag ] >>> [ Colors : set, unset ] >>> * Found these USE flags for dev-php/pecl-apcu-5.1.18: >>> U I >>> - - lock-pthreadmutex : Enable pthread mutex locking >>> + + lock-pthreadrw : Enable pthread read/write locking >>> - - lock-semaphore : Enable semaphore locks instead of fcntl >>> - - lock-spinlock : Enable spin locks (EXPERIMENTAL) >>> + + mmap : Add mmap (memory map) support >>> - - php_targets_php7-2 : Build against PHP 7.2 >>> - + php_targets_php7-3 : Build against PHP 7.3 >>> >>> >>> However, all four PHP versions seem to be supported by the ebuild, >>> dev-php/pecl-apcu-5.1.18.ebuild: >>> USE_PHP="php7-1 php7-2 php7-3 php7-4" >>> >>> Can anyone explain why php7-4 is either disallowed or missing, when >>> the ebuild seems to allow it? >>> >>> Thanks. >>> >>> >> >> >> First, my emerge output decoder ring isn't that great. There are a few >> on this list that can decode it pretty well, I'm not one of them but I >> try. ;-) >> >> This is the interesting bit to me. >> >> >> !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. >> - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap >> -lock-pthreadmutex -lock-semaphore -lock-spinlock" >> PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" >> >> The following REQUIRED_USE flag constraints are unsatisfied: >> any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 >> php_targets_php7-4 ) >> >> The above constraints are a subset of the following complete >> expression: >> exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock >> lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 >> php_targets_php7-3 php_targets_php7-4 ) >> >> >> Note in the first part it has PHPTARGETS= and that php7-4 is shown as >> disabled. Why is that? Is it disabled in package.use or do you have to >> manually enable it in package.use? Since the others are also disabled, >> is that setting correct somehow?? The way it shows it, all PHP is >> disabled which doesn't make sense to me. >> >> I'd do a grep -r php /etc/portage/ and see if it shows some old entry >> that needs to be changed or even removed, or possibly one added. One >> thing I've done and seen other post about, double entries. You add a >> entry at the top of a file and there is a older entry further down. >> Whichever emerge reads last is the one it uses. It tends to ignore the >> previous entry. If you forget the old one is
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On 2020-04-18 20:42, Dale wrote: Steve Freeman wrote: I am trying to eliminate PHP 7.3 from my system. But I am having trouble building dev-php/pecl-apcu-5.1.18 with support for PHP 7.4. I am getting confusing output regarding whether pecl-apcu can be built with PHP 7.4 support. It is working just fine with PHP 7.3 (until I changed eselect php to 7.4, which broke things as I expected). Currently installed are: # equery l php pecl-apcu * Searching for php ... [IP-] [ ] dev-lang/php-7.3.17:7.3 [IP-] [ ] dev-lang/php-7.4.5:7.4 * Searching for pecl-apcu ... [IP-] [ ] dev-php/pecl-apcu-5.1.18:7 # grep PHP_TARGETS /etc/portage/make.conf PHP_TARGETS="php7-4" # eselect php list cli [1] php7.3 [2] php7.4 * # eselect php list apache2 [1] php7.3 [2] php7.4 * The other eselect PHP modules are not set. When I try to re-emerge pecl-apcu, I get output which confuses me: # emerge -pv pecl-apcu These are the packages that would be merged, in order: Calculating dependencies / !!! Problem resolving dependencies for dev-php/pecl-apcu ... done! !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap -lock-pthreadmutex -lock-semaphore -lock-spinlock" PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" The following REQUIRED_USE flag constraints are unsatisfied: any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) The above constraints are a subset of the following complete expression: exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) If I understand correctly, PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" above means that I cannot use 7.1 nor 7.4 (correct me if I'm wrong). But I do not understand why, since all four versions of PHP are listed in the REQUIRED_USE line underneath. Another thing that confuses me is that PHP 7.4 isn't even listed in the output below (neither enabled nor disabled, but missing entirely): # equery u pecl-apcu [ Legend : U - final flag setting for installation] [ : I - package is installed with flag ] [ Colors : set, unset ] * Found these USE flags for dev-php/pecl-apcu-5.1.18: U I - - lock-pthreadmutex : Enable pthread mutex locking + + lock-pthreadrw : Enable pthread read/write locking - - lock-semaphore : Enable semaphore locks instead of fcntl - - lock-spinlock : Enable spin locks (EXPERIMENTAL) + + mmap : Add mmap (memory map) support - - php_targets_php7-2 : Build against PHP 7.2 - + php_targets_php7-3 : Build against PHP 7.3 However, all four PHP versions seem to be supported by the ebuild, dev-php/pecl-apcu-5.1.18.ebuild: USE_PHP="php7-1 php7-2 php7-3 php7-4" Can anyone explain why php7-4 is either disallowed or missing, when the ebuild seems to allow it? Thanks. First, my emerge output decoder ring isn't that great. There are a few on this list that can decode it pretty well, I'm not one of them but I try. ;-) This is the interesting bit to me. !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap -lock-pthreadmutex -lock-semaphore -lock-spinlock" PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" The following REQUIRED_USE flag constraints are unsatisfied: any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) The above constraints are a subset of the following complete expression: exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) Note in the first part it has PHPTARGETS= and that php7-4 is shown as disabled. Why is that? Is it disabled in package.use or do you have to manually enable it in package.use? Since the others are also disabled, is that setting correct somehow?? The way it shows it, all PHP is disabled which doesn't make sense to me. I'd do a grep -r php /etc/portage/ and see if it shows some old entry that needs to be changed or even removed, or possibly one added. One thing I've done and seen other post about, double entries. You add a entry at the top of a file and there is a older entry further down. Whichever emerge reads last is the one it uses. It tends to ignore the previous entry. If you forget the old one is there, it makes your brain go wonky. It doesn't help emerge either. Also, equery list -p may prove helpful if this reply or someone with a better decoder ring doesn't come up with a hint. Hope that helps, given my decoder ring is not great. lol Dale :-) :-) Good suggestion. I didn't have anything like that. Over the years, I've developed the habit of keeping entries in alphabetical order and never allowing anything to
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On 2020-04-18 20:36, Ashley Dixon wrote: On Sat, Apr 18, 2020 at 08:22:26PM -0500, Steve Freeman wrote: Can anyone explain why php7-4 is either disallowed or missing, when the ebuild seems to allow it? You need to allow the ~amd64 keyword (assuming that is your architecture) and explicitly define the value of the PHP_TARGETS symbol. Try the following line, and amend your package.accept_keywords and make.conf if it works as expected. ACCEPT_KEYWORDS="~amd64" PHP_TARGETS="php7-4" emerge -atv dev-php/pecl-apcu Based on your suggestion, I simply added the following line to /etc/portage/package.accept_keywords: =dev-php/pecl-apcu-5.1.18 ~amd64 It worked like a champ. Thank you very much! I did not see anything in my output that made think "~amd64". How on earth did you figure that out? I would love to know. :-)
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
Steve Freeman wrote: > I am trying to eliminate PHP 7.3 from my system. But I am having > trouble building dev-php/pecl-apcu-5.1.18 with support for PHP 7.4. > > I am getting confusing output regarding whether pecl-apcu can be built > with PHP 7.4 support. It is working just fine with PHP 7.3 (until I > changed eselect php to 7.4, which broke things as I expected). > > Currently installed are: > # equery l php pecl-apcu > * Searching for php ... > [IP-] [ ] dev-lang/php-7.3.17:7.3 > [IP-] [ ] dev-lang/php-7.4.5:7.4 > > * Searching for pecl-apcu ... > [IP-] [ ] dev-php/pecl-apcu-5.1.18:7 > > > # grep PHP_TARGETS /etc/portage/make.conf > PHP_TARGETS="php7-4" > > # eselect php list cli > [1] php7.3 > [2] php7.4 * > # eselect php list apache2 > [1] php7.3 > [2] php7.4 * > The other eselect PHP modules are not set. > > > When I try to re-emerge pecl-apcu, I get output which confuses me: > # emerge -pv pecl-apcu > > These are the packages that would be merged, in order: > > Calculating dependencies / > > !!! Problem resolving dependencies for dev-php/pecl-apcu > ... done! > > !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. > - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap > -lock-pthreadmutex -lock-semaphore -lock-spinlock" > PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" > > The following REQUIRED_USE flag constraints are unsatisfied: > any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 > php_targets_php7-4 ) > > The above constraints are a subset of the following complete > expression: > exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock > lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 > php_targets_php7-3 php_targets_php7-4 ) > > > If I understand correctly, PHP_TARGETS="(-php7-1) -php7-2 -php7-3 > (-php7-4)" above means that I cannot use 7.1 nor 7.4 (correct me if > I'm wrong). But I do not understand why, since all four versions of > PHP are listed in the REQUIRED_USE line underneath. > > > Another thing that confuses me is that PHP 7.4 isn't even listed in > the output below (neither enabled nor disabled, but missing entirely): > # equery u pecl-apcu > [ Legend : U - final flag setting for installation] > [ : I - package is installed with flag ] > [ Colors : set, unset ] > * Found these USE flags for dev-php/pecl-apcu-5.1.18: > U I > - - lock-pthreadmutex : Enable pthread mutex locking > + + lock-pthreadrw : Enable pthread read/write locking > - - lock-semaphore : Enable semaphore locks instead of fcntl > - - lock-spinlock : Enable spin locks (EXPERIMENTAL) > + + mmap : Add mmap (memory map) support > - - php_targets_php7-2 : Build against PHP 7.2 > - + php_targets_php7-3 : Build against PHP 7.3 > > > However, all four PHP versions seem to be supported by the ebuild, > dev-php/pecl-apcu-5.1.18.ebuild: > USE_PHP="php7-1 php7-2 php7-3 php7-4" > > Can anyone explain why php7-4 is either disallowed or missing, when > the ebuild seems to allow it? > > Thanks. > > First, my emerge output decoder ring isn't that great. There are a few on this list that can decode it pretty well, I'm not one of them but I try. ;-) This is the interesting bit to me. !!! The ebuild selected to satisfy "pecl-apcu" has unmet requirements. - dev-php/pecl-apcu-5.1.18::gentoo USE="lock-pthreadrw mmap -lock-pthreadmutex -lock-semaphore -lock-spinlock" PHP_TARGETS="(-php7-1) -php7-2 -php7-3 (-php7-4)" The following REQUIRED_USE flag constraints are unsatisfied: any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) The above constraints are a subset of the following complete expression: exactly-one-of ( lock-pthreadmutex lock-pthreadrw lock-spinlock lock-semaphore ) any-of ( php_targets_php7-1 php_targets_php7-2 php_targets_php7-3 php_targets_php7-4 ) Note in the first part it has PHPTARGETS= and that php7-4 is shown as disabled. Why is that? Is it disabled in package.use or do you have to manually enable it in package.use? Since the others are also disabled, is that setting correct somehow?? The way it shows it, all PHP is disabled which doesn't make sense to me. I'd do a grep -r php /etc/portage/ and see if it shows some old entry that needs to be changed or even removed, or possibly one added. One thing I've done and seen other post about, double entries. You add a entry at the top of a file and there is a older entry further down. Whichever emerge reads last is the one it uses. It tends to ignore the previous entry. If you forget the old one is there, it makes your brain go wonky. It doesn't help emerge either. Also, equery list -p may prove helpful if this reply or someone with a better decoder ring doesn't come up with a hint. Hope that helps, given my decoder ring is not great. lol Dale :-) :-)
Re: [gentoo-user] PHP 7.4 and dev-php/pecl-apcu-5.1.18
On Sat, Apr 18, 2020 at 08:22:26PM -0500, Steve Freeman wrote: > Can anyone explain why php7-4 is either disallowed or missing, when the > ebuild seems to allow it? You need to allow the ~amd64 keyword (assuming that is your architecture) and explicitly define the value of the PHP_TARGETS symbol. Try the following line, and amend your package.accept_keywords and make.conf if it works as expected. ACCEPT_KEYWORDS="~amd64" PHP_TARGETS="php7-4" emerge -atv dev-php/pecl-apcu -- Ashley Dixon suugaku.co.uk 2A9A 4117 DA96 D18A 8A7B B0D2 A30E BF25 F290 A8AA signature.asc Description: PGP signature