Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Problems installing Cairo Dock in Gentoo MATE
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Unsupported Software
View previous topic :: View next topic  
Author Message
Doruletz
n00b
n00b


Joined: 28 Apr 2021
Posts: 4
Location: USA

PostPosted: Wed Apr 28, 2021 11:03 am    Post subject: Problems installing Cairo Dock in Gentoo MATE Reply with quote

Hello everybody.

New to Gentoo, but have been using Linux Mint for almost 11 years, and also did some Distro Hopping / Testing lately in Arch, Debian, Void. I am somewhat proficient in Linux, maybe on the very low end of medium skills...
Downloaded from GIT, cairo-dock-core-master.zip and cairo-dock-plug-ins-master.zip
The Cairo Dock Core compiles and installs OK, the dock launches and runs, but no matter what I do, I cannot compile the Cairo Dock Plugins.
I keep getting this error:

Code:
cmake .. -DCMAKE_INSTALL_PREFIX=/usr
-- Checking for module 'gldi=3.4.99.alpha1'
-- Package 'gldi', required by 'virtual:world', not found
CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:545 (message):
A required package was not found
Call Stack (most recent call first):
/usr/share/cmake/Modules/FindPkgConfig.cmake:733 (_pkg_check_modules_internal)
CMakeLists.txt:52 (pkg_check_modules)
-- Configuring incomplete, errors occurred!
See also "/home/gentoodoru/Desktop/cairo-dock-plug-ins-master/build/CMakeFiles/CMakeOutput.log"


All the Portage Overlays that show the Cairo Dock Core and Cairo Dock Plugins packages are DEAD.
I cannot download from them, it gets stuck and keeps trying to download from 216.92.2.140 to no avail, after 3 or 4 attempts, I get error, cannot download.
I need the cairo Dock, so please, please, HELP ME.
Thanks.
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Wed Apr 28, 2021 11:20 am    Post subject: Reply with quote

Welcome to Gentoo.
Do not try to build it yourself.
If need be please write your own ebuild.
It has a lot of deps
from their wiki
Code:

Required: cairo librsvg-2.0 dbus-1 dbus-glib-1 libxml-2.0 glib-2.0 gldi # = cairo-dock-core, with the same version!
Highly Recommended: libalsa libetpan libgnome-menu3 gio-2.0 libxklavier xrandr x11 xxf86vm
gvfs upower-glib zeitgeist-1.0 libexif vte(-2.90) lm_sensors ; 'python', 'curl' and 'wget' packages ; dbusmenu-glib(-0.4) dbusmenu-gtk(3)(-0.4)
Suggested: indicator(3)-0.4 libido(3)-0.1 libical libpulse webkitgtk-3.0 (or webkit-1.0) ; these daemons: indicator-messages and indicator-sound ; 'ruby' and 'valac' packages
Optional: fftw3, mono: glib-sharp-2.0 ndesk-dbus-1.0 ndesk-dbus-glib-1.0

for the plugins.
You are missing something
Code:

CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:545 (message):
A required package was not found


Code:

All the Portage Overlays that show the Cairo Dock Core and Cairo Dock Plugins packages are DEAD.
I cannot download from them, it gets stuck and keeps trying to download from 216.92.2.140 to no avail, after 3 or 4 attempts, I get error, cannot download.
I need the cairo Dock, so please, please, HELP ME.

Use layman...
https://wiki.gentoo.org/wiki/Layman
to add overlay and emerge to install.
_________________
:)
Back to top
View user's profile Send private message
Doruletz
n00b
n00b


Joined: 28 Apr 2021
Posts: 4
Location: USA

PostPosted: Wed Apr 28, 2021 11:54 am    Post subject: Reply with quote

alamahant wrote:
Welcome to Gentoo.
Do not try to build it yourself.
If need be please write your own ebuild.
It has a lot of deps
from their wiki
Code:

Required: cairo librsvg-2.0 dbus-1 dbus-glib-1 libxml-2.0 glib-2.0 gldi # = cairo-dock-core, with the same version!
Highly Recommended: libalsa libetpan libgnome-menu3 gio-2.0 libxklavier xrandr x11 xxf86vm
gvfs upower-glib zeitgeist-1.0 libexif vte(-2.90) lm_sensors ; 'python', 'curl' and 'wget' packages ; dbusmenu-glib(-0.4) dbusmenu-gtk(3)(-0.4)
Suggested: indicator(3)-0.4 libido(3)-0.1 libical libpulse webkitgtk-3.0 (or webkit-1.0) ; these daemons: indicator-messages and indicator-sound ; 'ruby' and 'valac' packages
Optional: fftw3, mono: glib-sharp-2.0 ndesk-dbus-1.0 ndesk-dbus-glib-1.0

for the plugins.
You are missing something
Code:

CMake Error at /usr/share/cmake/Modules/FindPkgConfig.cmake:545 (message):
A required package was not found


Code:

All the Portage Overlays that show the Cairo Dock Core and Cairo Dock Plugins packages are DEAD.
I cannot download from them, it gets stuck and keeps trying to download from 216.92.2.140 to no avail, after 3 or 4 attempts, I get error, cannot download.
I need the cairo Dock, so please, please, HELP ME.

Use layman...
https://wiki.gentoo.org/wiki/Layman
to add overlay and emerge to install.


Thank for you answer, alamahant.

However, I'm not sure you understood the post completely, so let me explain further...
YES, I did use LAYMAN for the Portage Overlays, of course.

Code:
layman -L
layman -a
layman -s
layman -l
layman -d


Also, except for the GLDI, which was supposed to be provided by the Cairo Dock Core (package is already in the core compiled files), I made sure I had all the dependencies installed.

And of course I have also noticed that the build / install fails because it is missing something, says so in the output, it's missing GLDI.

P.S. -
alamahant wrote:
Do not try to build it yourself.
If need be please write your own ebuild.


I have tried to understand how to use those ebuilds, but so far I did not get it...
At first I hoped they're executables, that you can simply just install, similar to the .DEB files in Mint - Ubuntu.
I'm not very good with MAN pages, I'm more of a hands-on or follow a step by step guide kind of guy.
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Wed Apr 28, 2021 12:21 pm    Post subject: Reply with quote

Quote:

However, I'm not sure you understood the post completely, so let me explain further...
YES, I did use LAYMAN for the Portage Overlays, of course.

Code:
layman -L
layman -a
layman -s
layman -l
layman -d

It worked for me with
Code:

layman -a sabayon
layman -S
emerge -av cairo-dock

installed successfully
Code:

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

Calculating dependencies... done!
[ebuild  N     ] x11-libs/gtkglext-1.2.0-r5::gentoo  ABI_X86="(64) -32 (-x32)" 688 KiB
[ebuild  N     ] x11-misc/cairo-dock-3.4.1::sabayon  USE="crypt -desktop_manager -gtk3 -xcomposite" 2,601 KiB

Total: 2 packages (2 new), Size of downloads: 3,289 KiB

Would you like to merge these packages? [Yes/No] y
>>> Verifying ebuild manifests
>>> Emerging (1 of 2) x11-libs/gtkglext-1.2.0-r5::gentoo
>>> Installing (1 of 2) x11-libs/gtkglext-1.2.0-r5::gentoo
>>> Emerging (2 of 2) x11-misc/cairo-dock-3.4.1::sabayon
>>> Installing (2 of 2) x11-misc/cairo-dock-3.4.1::sabayon
>>> Recording x11-misc/cairo-dock in "world" favorites file...
>>> Jobs: 2 of 2 complete                           Load avg: 0.89, 0.73, 0.77

 * Messages for package x11-misc/cairo-dock-3.4.1:

 * Additional plugins are available to extend the functionality
 * of Cairo-Dock. It is recommended to install at least
 * x11-pluings/cairo-dock-plugins.
 *
 * Cairo-Dock is an app that draws on a RGBA GLX visual.
 * Some users have noticed that if the dock is launched,
 * severals qt4-based applications could crash, like skype or vlc.
 * If you have this problem, add the following line into your bashrc :
 * alias vlc='export XLIB_SKIP_ARGB_VISUALS=1; vlc; unset XLIB_SKIP_ARGB_VISUALS'
 * see http://www.qtforum.org/article/26669/qt4-mess-up-the-opengl-context.html for more details.
>>> Auto-cleaning packages...

>>> No outdated packages were found on your system.

 * GNU info directory index is up-to-date.


you might need to allow ~arch if you are using stable.
Code:

cat >> /etc/portage/package.accept_keywords << EOF
x11-misc/cairo-dock   ~amd64
x11-plugins/cairo-dock-plugins ~amd64
EOF

before emerging
_________________
:)
Back to top
View user's profile Send private message
Doruletz
n00b
n00b


Joined: 28 Apr 2021
Posts: 4
Location: USA

PostPosted: Thu Apr 29, 2021 3:08 am    Post subject: Reply with quote

alamahant wrote:

It worked for me with
Code:

layman -a sabayon
layman -S
emerge -av cairo-dock

installed successfully


Although I have tried both the sabayon as well as the pinkbyte Portage Overlays before, with no success, I followed your advice and tried it again.
Here is a step by step of what I did:

1 - Edited my /etc/portage/package.accept_keywords by including these lines:

Code:
x11-misc/cairo-dock ~amd64
x11-plugins/cairo-dock-plugins ~amd64


2 - Addded the sabayon Portage Overlay with:

Code:
layman -a sabayon
layman -S


3 - Attempted to install Cairo Dock from the sabayon Portage Overlay with:

Code:
emerge -av cairo-dock
emerge -av cairo-dock-plugins


The cairo-dock got compiled and installed correctly.
The cairo-dock-plugins failed to compile and install, with this error:

Code:
make: *** [Makefile:171: all] Error 2
 * ERROR: x11-plugins/cairo-dock-plugins-3.4.1::sabayon failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=x11-plugins/cairo-dock-plugins-3.4.1::sabayon'`,
 * the complete build log and the output of `emerge -pqv '=x11-plugins/cairo-dock-plugins-3.4.1::sabayon'`.
 * The complete build log is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/environment'.
 * Working directory: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1_build'
 * S: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1'

>>> Failed to emerge x11-plugins/cairo-dock-plugins-3.4.1, Log file:

>>>  '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'

 * Messages for package x11-plugins/cairo-dock-plugins-3.4.1:

 * ERROR: x11-plugins/cairo-dock-plugins-3.4.1::sabayon failed (compile phase):
 *   emake failed
 *
 * If you need support, post the output of `emerge --info '=x11-plugins/cairo-dock-plugins-3.4.1::sabayon'`,
 * the complete build log and the output of `emerge -pqv '=x11-plugins/cairo-dock-plugins-3.4.1::sabayon'`.
 * The complete build log is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/environment'.
 * Working directory: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1_build'
 * S: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1'


Next, I have tried with the pinkbyte Portage Overlay.

1 - Removed the sabayon Portage Overlay and added the pinkbyte Portage Overlay instead:

Code:
layman -d sabayon
layman -a pinkbyte
layman -S


3 - Attempted to install Cairo Dock from the pinkbyte Portage Overlay with:

Code:
emerge -av cairo-dock
emerge -av cairo-dock-plugins


The cairo-dock got compiled and installed correctly.
The cairo-dock-plugins failed to compile and install, with this error:

Code:
ninja: build stopped: subcommand failed.
 * ERROR: x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte failed (compile phase):
 *   ninja -v -j8 -l0 failed
 *
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 2212:  Called cmake-utils_src_compile
 *   environment, line  839:  Called cmake-utils_src_make
 *   environment, line 1023:  Called _cmake_ninja_src_make
 *   environment, line  501:  Called eninja
 *   environment, line 1329:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 *
 * If you need support, post the output of `emerge --info '=x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte'`,
 * the complete build log and the output of `emerge -pqv '=x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte'`.
 * The complete build log is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/environment'.
 * Working directory: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1_build'
 * S: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1'

>>> Failed to emerge x11-plugins/cairo-dock-plugins-3.4.1, Log file:

>>>  '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'

 * Messages for package x11-plugins/cairo-dock-plugins-3.4.1:

 * ERROR: x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte failed (compile phase):
 *   ninja -v -j8 -l0 failed
 *
 * Call stack:
 *     ebuild.sh, line  125:  Called src_compile
 *   environment, line 2212:  Called cmake-utils_src_compile
 *   environment, line  839:  Called cmake-utils_src_make
 *   environment, line 1023:  Called _cmake_ninja_src_make
 *   environment, line  501:  Called eninja
 *   environment, line 1329:  Called die
 * The specific snippet of code:
 *       "$@" || die "${nonfatal_args[@]}" "${*} failed"
 *
 * If you need support, post the output of `emerge --info '=x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte'`,
 * the complete build log and the output of `emerge -pqv '=x11-plugins/cairo-dock-plugins-3.4.1::pinkbyte'`.
 * The complete build log is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/temp/environment'.
 * Working directory: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1_build'
 * S: '/var/tmp/portage/x11-plugins/cairo-dock-plugins-3.4.1/work/cairo-dock-plugins-3.4.1'


Is there anything above that I am doing wrong???

Also, here is my /etc/portage/make.conf file:

Code:
# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
CHOST="x86_64-pc-linux-gnu"
COMMON_FLAGS="-march=skylake -O2 -pipe"
CFLAGS="${COMMON_FLAGS}"
CXXFLAGS="${COMMON_FLAGS}"
FCFLAGS="${COMMON_FLAGS}"
FFLAGS="${COMMON_FLAGS}"
MAKEOPTS="-j8"
ACCEPT_LICENSE="*"

# NOTE: This stage was built with the bindist Use flag enabled
PORTDIR="/var/db/repos/gentoo"
DISTDIR="/var/cache/distfiles"
PKGDIR="/var/cache/binpkgs"

# This sets the language of build output to English.
# Please keep this setting intact when reporting bugs.
LC_MESSAGES=C

GENTOO_MIRRORS="http://www.gtlib.gatech.edu/pub/gentoo http://mirrors.rit.edu/gentoo/ http://gentoo.mirrors.tds.net/gentoo http://gentoo.cs.utah.edu/ http://gentoo.osuosl.org/ rsync://rsync.us.gentoo.org/gentoo-portage"
USE="X alsa exif -systemd -bluetooth -qtwebengine -webengine -sqlite networkmanager"
GRUB_PLATFORMS="efi-64"
VIDEO_CARDS="nvidia"


Thanks again for taking the time to respond and trying to help me solve this problem.
Looking forward to hear from you again soon.
Back to top
View user's profile Send private message
Doruletz
n00b
n00b


Joined: 28 Apr 2021
Posts: 4
Location: USA

PostPosted: Thu Apr 29, 2021 3:28 am    Post subject: Reply with quote

@alamahant

One more thing, you failed to mention what Desktop you are using.
I am using the MATE Desktop, do you think that might have any bearing on my problem???

However, I have successfully installed the Cairo Dock with the MATE Desktop in Linux Mint, Ubuntu MATE, Arch Linux, EndeavourOS, ArcoLinux, Debian SID, Fedora 34 (it was a Beta at that time, since it only got its full release yesterday).
They all installed with no problems whatsoever, and are running just fine.
Back to top
View user's profile Send private message
soka
Tux's lil' helper
Tux's lil' helper


Joined: 27 Dec 2006
Posts: 99
Location: Argentina

PostPosted: Thu Apr 29, 2021 12:21 pm    Post subject: Reply with quote

I have cairo dock installed under mate, if interested I can paste the ebuilds I'm using and you can add them to a local overlay.
Be aware though that I have modified the sources to fix some bugs and add some customizations to my liking, so you will have to add my sources too.
Back to top
View user's profile Send private message
alamahant
Advocate
Advocate


Joined: 23 Mar 2019
Posts: 3879

PostPosted: Thu Apr 29, 2021 2:09 pm    Post subject: Reply with quote

Please try with this
Code:

CFLAGS="-D_POSIX_C_SOURCE=200809L" emerge cairo-dock-plugins


see here
https://forums.gentoo.org/viewtopic-t-1081152-start-0.html
I am using xfce but did not attempt to emerge the plugins,just the dock.
EDIT it does NOT work........
Maybe it cant work with gcc 10.
I dont know if you might wish to also install gcc9 just for this package.Yet again there is no gurantee it will work.
Having said that gcc was notorious for having broken half of linux packages with its strict policies.
Now most of them work just fine after a lot lot of work from Gentoo maintainers BUT maybe this one wasn't...
Someone more knowledgeable migt be able to help you more...
:)
_________________
:)
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Tue May 18, 2021 4:20 pm    Post subject: cairo-dock=yes cairo-dock-plugins-no Reply with quote

Finally, a somewhat recent thread on this.

I've been pulling my hair out on this for over a day. It's gotten to the point where I no longer care about cairo-dock, but just want to successfully build it.

I created a localrepo using these instructions and cherry picked the dependencies from here. I'm still going through them one by one. As the subject states, I can build the dock, but not the plugins. The compiler options suggested in this thread do not work. I am in the exact position everyone else is in here :D

Anyone have any progress or success? If I get this to work, I'll post it here. I have been documenting my steps.
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Tue May 18, 2021 5:51 pm    Post subject: Reply with quote

As best I can see, no one in this thread has posted any actionable error messages. A few people have posted the summary stating that a failure occurred, but that does not help us understand why. If you need help, please pastebin the full output of the failed build.
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Thu May 20, 2021 12:33 am    Post subject: Format Reply with quote

What's the new format we use on this forum? I haven't used Gentoo since 2002, so that was the last time I was here. It used to be to post the output of the two commands emerge tells you, preceded by a synopsis of what program failed to emerge. Do we just pastebin that stuff to keep the board clean?
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Thu May 20, 2021 1:34 am    Post subject: Reply with quote

Posting inline is fine, if the block you need to post is small enough to be manageable. For some packages, the build log alone will exceed the maximum allowed size for a forum post, so when in doubt, we recommend someone pastebin the full log, and trust that a respondent will cite inline the important part.
Back to top
View user's profile Send private message
Princess Nell
l33t
l33t


Joined: 15 Apr 2005
Posts: 916

PostPosted: Thu May 20, 2021 9:02 pm    Post subject: Reply with quote

Here's how to build the plugins.

As mentioned already: unmask the two packages in package.accept_keywords, and emerge. cairo-dock and deps build fine, but cairo-dock-plugins fails due to a duplicate declaration of struct timeval (IIRC) pulled in from system header files. The fix for this is, as mentioned already,
Code:

CFLAGS="-D_POSIX_C_SOURCE=200809L" emerge cairo-dock-plugins

This could be automated via package.env, /etc/portage/env, I didn't test.

Moving on, the compile will fail again, at a later point, with a duplicate symbol at the linker stage. This is fixed by using the following patch: http://sisyphus.ru/en/srpm/Sisyphus/cairo-dock-plugins/patches/0 in /etc/portage/x11-plugins/cairo-dock-plugins-3.4.1. Yes, I use gcc-10.2.0 here.
Code:

localhost ~ # eix cairo-dock
[I] x11-misc/cairo-dock [1]
     Available versions:  (~)3.4.1 {crypt desktop_manager gtk3 xcomposite}
     Installed versions:  3.4.1(21:41:00 20/05/21)(crypt -desktop_manager -gtk3 -xcomposite)
     Homepage:            http://www.glx-dock.org
     Description:         Cairo-dock is a fast, responsive, Mac OS X-like dock.

[I] x11-plugins/cairo-dock-plugins [1]
     Available versions:  (~)3.4.1 {alsa exif gmenu gnote gtk3 indicator3 kde mail terminal twitter vala webkit xfce xgamma xklavier zeitgeist}
     Installed versions:  3.4.1(21:50:43 20/05/21)(alsa exif -gmenu -gnote -gtk3 -indicator3 -kde -mail -terminal -twitter -vala -webkit -xfce -xgamma -xklavier -zeitgeist)
     Homepage:            http://www.glx-dock.org
     Description:         Official plugins for cairo-dock

* x11-themes/cairo-dock-themes [1]
     Available versions:  ~1.6.3.1
     Homepage:            http://www.cairo-dock.org
     Description:         Official themes for Cairo-dock

[1] "sabayon" /var/lib/layman/sabayon

Found 3 matches
localhost ~ #
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Fri May 21, 2021 3:49 pm    Post subject: GCC Flags and Compiler Versions Reply with quote

@Princess Nell

Thanks for the explanation as to the build fail, and why. Since the OP said he came here from Mint, I'm assuming he/she has no idea about how to use a C compiler, let alone passing more advanced options to it. Can you expand on and let everyone know what these flags do/mean?

Code:
CFLAGS="-D_POSIX_C_SOURCE=200809L"


I think an explanation would be good for noobs so they don't go hard coding C Compiler options into their config packages when they don't know what they exactly do.

You also mentioned using gcc 10.2.x. Could you explain or provide reference to using multiple installed compilers in Gentoo?
Back to top
View user's profile Send private message
Princess Nell
l33t
l33t


Joined: 15 Apr 2005
Posts: 916

PostPosted: Fri May 21, 2021 4:20 pm    Post subject: Reply with quote

The compiler flag is explained in the feature_test_macros(7) man page.
Quote:

Glibc understands the following feature test macros:
...
_POSIX_C_SOURCE
Defining this macro causes header files to expose definitions as
follows:
...
• (Since glibc 2.10) The value 200809L or greater additionally
exposes definitions corresponding to the POSIX.1-2008 base
specification (excluding the XSI extension).
...

gcc-10.2.0-r5 is the current version of gcc in stable. While I also have an older version installed, I did not try it. In this situation, one can use "gcc-config -l" to list, and "gcc-config <profile>" to set the desired version. gcc version might not even be a factor in the solution of this problem.
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Fri May 21, 2021 8:21 pm    Post subject: Reply with quote

Quote:
gcc-10.2.0-r5 is the current version of gcc in stable. While I also have an older version installed, I did not try it. In this situation, one can use "gcc-config -l" to list, and "gcc-config <profile>" to set the desired version. gcc version might not even be a factor in the solution of this problem.


I'm not sure it is going to work, but I am going to attempt to build it on gcc11.
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Sat May 22, 2021 4:13 am    Post subject: Still Failing After After Patch and Compiler Profile Switch Reply with quote

I installed and switched compilers to gcc10.2.x-r5. Used the flag you set. Still getting a build fail. I think my patch is not being applied to in my ebuild

Code:
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id $

EAPI="6"

inherit cmake-utils eutils versionator

MY_PN="${PN/plugins/plug-ins}"
MM_PV=$(get_version_component_range '1-2')

DESCRIPTION="Official plugins for cairo-dock"
HOMEPAGE="http://www.glx-dock.org"
SRC_URI="http://launchpad.net/${MY_PN}/${MM_PV}/${PV}/+download/${MY_PN}-${PV}.tar.gz"

LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64 ~x86"
#PATCH_URI= ( /var/db/repos/localrepo/x11-plugins/cairo-dock-plugins/cairo-dock-plugins-3.4.1.patch )
IUSE="alsa exif gmenu gtk3 kde terminal gnote vala webkit xfce xgamma xklavier twitter indicator3 zeitgeist mail"

RDEPEND="
   dev-libs/dbus-glib
   dev-libs/glib:2
   dev-libs/libxml2
   gnome-base/librsvg:2
   sys-apps/dbus
   x11-libs/cairo
   !gtk3? ( x11-libs/gtk+:2 )
   x11-libs/gtkglext
   ~x11-misc/cairo-dock-${PV}
   gtk3? ( x11-libs/gtk+:3 )
   alsa? ( media-libs/alsa-lib )
   exif? ( media-libs/libexif )
   gmenu? ( gnome-base/gnome-menus )
   kde? ( kde-frameworks/kdelibs )
    !gtk3? ( x11-libs/gtk+:2 )
    x11-libs/gtkglext
    ~x11-misc/cairo-dock-${PV}
    gtk3? ( x11-libs/gtk+:3 )
    alsa? ( media-libs/alsa-lib )
    exif? ( media-libs/libexif )
    gmenu? ( gnome-base/gnome-menus )
    kde? ( kde-frameworks/kdelibs )
    terminal? ( x11-libs/vte:= )
    vala? ( dev-lang/vala:= )
    webkit? ( =net-libs/webkit-gtk-2.32.1 )
    xfce? ( xfce-base/thunar )
    xgamma? ( x11-libs/libXxf86vm )
    xklavier? ( x11-libs/libxklavier )
    gnote? ( app-misc/gnote )
    twitter? ( dev-python/oauth dev-python/simplejson )
    indicator3? ( dev-libs/libindicator:= )
    zeitgeist? ( dev-libs/libzeitgeist )
    mail? ( net-libs/libetpan )
"

DEPEND="${RDEPEND}
    dev-util/intltool
    sys-devel/gettext
    virtual/pkgconfig
    dev-libs/libdbusmenu[gtk3]
"
src_configure() {
    mycmakeargs=(
        # broken with 0.99.x (as of cairo-dock 3.3.2)
        "-Denable-upower-support=OFF"
        `use gtk3 && echo "-Dforce-gtk2=OFF" || echo "-Dforce-gtk2=ON"`
    )
     PATCHES=(
     "/var/db/repos/localrepo/x11-plugins/cairo-dock-plugins/cairo-dock-plugins-3.4.1.patch"
     )
#   epatch_user
    cmake-utils_src_configure
}


There seems to be a few new ways to patch since my last foray into Gentoo. I tried with the old school eclass, but apparently that was nixed in EAPI=6.

I also noticed that my build fails with a gmenu-cd-animation module, Not sure if it is pertinent. Stripped out gmenu, and webkit. No dice.

USE flags:
Code:
alsa exif gmenu gnote gtk3 indicator3 -kde mail terminal -twitter vala -webkit xfce xgamma xklavier -zeitgeist
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Sat May 22, 2021 3:40 pm    Post subject: Reply with quote

If your patch is applied, there will be a note in the Portage log at the phase where it is applied. How exactly did you set up for the patch to be applied? Is the error output still the same as it was before?
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Sat May 22, 2021 7:59 pm    Post subject: cairo-doc-pulgins-3.4.1.ebuild with patch Reply with quote

I applied the patch in the src_configure() function:

Code:
 PATCHES=(
     "/var/db/repos/localrepo/x11-plugins/cairo-dock-plugins/cairo-dock-plugins-3.4.1.patch"
     )


This patch resides in the same directory as the ebuild and is the patch from that Russian site that was linked earlier. I had to rename it because it was throwing all kinds of errors. At least these errors were informative, unlike Portage logs (which I turned on)

I remember doing this with eclass back in the day, but from what I read that was killed in >=EAPI=6. From the handbook, it says to use the src_prepare() function to define the patch, but this ebuild doesn't use that function. I know I'm missing something.[/quote]
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Sat May 22, 2021 10:01 pm    Post subject: Reply with quote

According to the devmaual, PATCHES should be a global array. If you define it in the src_configure function, then it is defined too late, and Portage will not react to it. You do not use src_prepare to define the patch. You allow the default definition of src_prepare to apply all patches that are listed in the global array PATCHES as of the time that src_prepare runs, which happens before src_configure. Typically, for a single patch like this, you would not fork the ebuild at all, but would rely on the user-patch mechanism.
Back to top
View user's profile Send private message
Princess Nell
l33t
l33t


Joined: 15 Apr 2005
Posts: 916

PostPosted: Sat May 22, 2021 11:39 pm    Post subject: Reply with quote

I saved the patch I linked to as
Quote:
/etc/portage/patches/x11-plugins/cairo-dock-plugins-3.4.1/cairo-dock-plugins-3.4.1-gcc10-extern.patch
.
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Mon May 31, 2021 6:15 pm    Post subject: Reply with quote

Back after a full Gentoo build on a new PC. Still running into the same problems. This might be a stupid question, but how do you tell portage where the patch is and how to apply it after EAPI=6?
Back to top
View user's profile Send private message
Hu
Moderator
Moderator


Joined: 06 Mar 2007
Posts: 21624

PostPosted: Mon May 31, 2021 7:07 pm    Post subject: Reply with quote

As I wrote above, if you want to define the patches in an ebuild, then PATCHES should be a global array containing the fully qualified paths to the patches. If you want to rely on eapply_user, then use the path form that Princess Nell showed.
Back to top
View user's profile Send private message
brick_danger
n00b
n00b


Joined: 09 Mar 2021
Posts: 15

PostPosted: Mon May 31, 2021 8:28 pm    Post subject: Reply with quote

Hu,

Can you walk me through this? I'm obviously rusty.

1) Do I modify the ebuild itself, or do I define a global patch directory in an array in make.conf?

2) Can you explain the user/patch mechanism?
Back to top
View user's profile Send private message
Princess Nell
l33t
l33t


Joined: 15 Apr 2005
Posts: 916

PostPosted: Mon May 31, 2021 9:08 pm    Post subject: Reply with quote

See here: https://wiki.gentoo.org/wiki//etc/portage/patches
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Unsupported Software All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
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