So, comparing cmake output between running it within a tty and in X I noticed that the paths were different, which led me to comparing $PATH
.
Turns out that in X something was adding /bin
to my $PATH
. This normally should be fine, /bin
is symlinked to /usr/bin
after all, but for some reason this causes errors in this specific instance.
Changing build() to the following allows makepkg to succeed even within Xorg for me.
PATH="${PATH#/bin:}" cmake -DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_EXE_LINKER_FLAGS=-ljson-c ..
make
I have no idea what adds /bin
to the path, it's something specifically sourced by zsh for my user configuration (but when run inside Xorg), as bash
or zsh as root don't have the same problem.
I just added the same addition to my .zshenv, and that removes it from my profile.
If someone has the same issue and this solution works I'd love to compare dotfile configurations, in order to find the offender.
Pinned Comments
edh commented on 2023-10-11 23:00 (UTC)
If you encounter errors similar to
error [...] loading shared libraries
, you most likely need to rebuilt the grive package. Usually no further action is needed except for forcing a rebuilt.The error is due to grive having been built against an older version of the library mentioned in the error message. The library has likely since been updated by
pacman
and grive need to be made aware of this by rebuilding it.