Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index Assistance Unsupported Software
  • Search

Problems installing Cairo Dock in Gentoo MATE

This forum covers all Gentoo-related software not officially supported by Gentoo. Ebuilds/software posted here might harm the health and stability of your system(s), and are not supported by Gentoo developers. Bugs/errors caused by ebuilds from overlays.gentoo.org are covered by this forum, too.
Post Reply
Advanced search
39 posts
  • 1
  • 2
  • Next
Author
Message
Doruletz
n00b
n00b
Posts: 4
Joined: Wed Apr 28, 2021 10:54 am
Location: USA

Problems installing Cairo Dock in Gentoo MATE

  • Quote

Post by Doruletz » Wed Apr 28, 2021 11:03 am

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: Select all

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.
Top
alamahant
Advocate
Advocate
Posts: 4034
Joined: Sat Mar 23, 2019 12:12 pm

  • Quote

Post by alamahant » Wed Apr 28, 2021 11:20 am

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: Select all

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: Select all

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

Code: Select all

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.
:)
Top
Doruletz
n00b
n00b
Posts: 4
Joined: Wed Apr 28, 2021 10:54 am
Location: USA

  • Quote

Post by Doruletz » Wed Apr 28, 2021 11:54 am

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: Select all

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: Select all

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

Code: Select all

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: Select all

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.
Top
alamahant
Advocate
Advocate
Posts: 4034
Joined: Sat Mar 23, 2019 12:12 pm

  • Quote

Post by alamahant » Wed Apr 28, 2021 12:21 pm

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: Select all

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

Code: Select all

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: Select all

cat >> /etc/portage/package.accept_keywords << EOF
x11-misc/cairo-dock   ~amd64
x11-plugins/cairo-dock-plugins ~amd64
EOF
before emerging
:)
Top
Doruletz
n00b
n00b
Posts: 4
Joined: Wed Apr 28, 2021 10:54 am
Location: USA

  • Quote

Post by Doruletz » Thu Apr 29, 2021 3:08 am

alamahant wrote: It worked for me with

Code: Select all

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: Select all

x11-misc/cairo-dock ~amd64
x11-plugins/cairo-dock-plugins ~amd64
2 - Addded the sabayon Portage Overlay with:

Code: Select all

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

Code: Select all

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: Select all

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: Select all

layman -d sabayon
layman -a pinkbyte
layman -S
3 - Attempted to install Cairo Dock from the pinkbyte Portage Overlay with:

Code: Select all

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: Select all

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: Select all

# 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.
Top
Doruletz
n00b
n00b
Posts: 4
Joined: Wed Apr 28, 2021 10:54 am
Location: USA

  • Quote

Post by Doruletz » Thu Apr 29, 2021 3:28 am

@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.
Top
soka
Tux's lil' helper
Tux's lil' helper
Posts: 100
Joined: Wed Dec 27, 2006 11:05 am
Location: Argentina

  • Quote

Post by soka » Thu Apr 29, 2021 12:21 pm

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.
Top
alamahant
Advocate
Advocate
Posts: 4034
Joined: Sat Mar 23, 2019 12:12 pm

  • Quote

Post by alamahant » Thu Apr 29, 2021 2:09 pm

Please try with this

Code: Select all

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

see here
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...
:)
:)
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

cairo-dock=yes cairo-dock-plugins-no

  • Quote

Post by brick_danger » Tue May 18, 2021 4:20 pm

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.
Top
Hu
Administrator
Administrator
Posts: 24403
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Tue May 18, 2021 5:51 pm

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.
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

Format

  • Quote

Post by brick_danger » Thu May 20, 2021 12:33 am

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?
Top
Hu
Administrator
Administrator
Posts: 24403
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Thu May 20, 2021 1:34 am

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.
Top
Princess Nell
l33t
l33t
User avatar
Posts: 947
Joined: Fri Apr 15, 2005 1:00 pm

  • Quote

Post by Princess Nell » Thu May 20, 2021 9:02 pm

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: Select all

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/cai ... /patches/0 in /etc/portage/x11-plugins/cairo-dock-plugins-3.4.1. Yes, I use gcc-10.2.0 here.

Code: Select all

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 ~ # 
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

GCC Flags and Compiler Versions

  • Quote

Post by brick_danger » Fri May 21, 2021 3:49 pm

@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: Select all

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?
Top
Princess Nell
l33t
l33t
User avatar
Posts: 947
Joined: Fri Apr 15, 2005 1:00 pm

  • Quote

Post by Princess Nell » Fri May 21, 2021 4:20 pm

The compiler flag is explained in the feature_test_macros(7) man page.
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.
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

  • Quote

Post by brick_danger » Fri May 21, 2021 8:21 pm

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.
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

Still Failing After After Patch and Compiler Profile Switch

  • Quote

Post by brick_danger » Sat May 22, 2021 4:13 am

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: Select all

# 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: Select all

alsa exif gmenu gnote gtk3 indicator3 -kde mail terminal -twitter vala -webkit xfce xgamma xklavier -zeitgeist
Top
Hu
Administrator
Administrator
Posts: 24403
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Sat May 22, 2021 3:40 pm

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?
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

cairo-doc-pulgins-3.4.1.ebuild with patch

  • Quote

Post by brick_danger » Sat May 22, 2021 7:59 pm

I applied the patch in the src_configure() function:

Code: Select all

 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]
Top
Hu
Administrator
Administrator
Posts: 24403
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Sat May 22, 2021 10:01 pm

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.
Top
Princess Nell
l33t
l33t
User avatar
Posts: 947
Joined: Fri Apr 15, 2005 1:00 pm

  • Quote

Post by Princess Nell » Sat May 22, 2021 11:39 pm

I saved the patch I linked to as
/etc/portage/patches/x11-plugins/cairo-dock-plugins-3.4.1/cairo-dock-plugins-3.4.1-gcc10-extern.patch
.
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

  • Quote

Post by brick_danger » Mon May 31, 2021 6:15 pm

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?
Top
Hu
Administrator
Administrator
Posts: 24403
Joined: Tue Mar 06, 2007 5:38 am

  • Quote

Post by Hu » Mon May 31, 2021 7:07 pm

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.
Top
brick_danger
n00b
n00b
Posts: 15
Joined: Tue Mar 09, 2021 11:57 pm

  • Quote

Post by brick_danger » Mon May 31, 2021 8:28 pm

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?
Top
Princess Nell
l33t
l33t
User avatar
Posts: 947
Joined: Fri Apr 15, 2005 1:00 pm

  • Quote

Post by Princess Nell » Mon May 31, 2021 9:08 pm

See here: https://wiki.gentoo.org/wiki//etc/portage/patches
Top
Post Reply

39 posts
  • 1
  • 2
  • Next

Return to “Unsupported Software”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy

 

 

magic