You are not logged in.
Hello everyone, I’m here because I have some issue trying to build the AUR package of Paru.
My local Paru repository is clean and up to date, since I used this commands before testing again for this post:
git restore .
git clean -fdx
git fetch
git pull
So all the changes that I made for testing on my own should be gone, and the repository should be up to date with the git master branch. In fact running a git status shows exactly that:
On branch master
Your branch is up to date with 'origin/master'.nothing to commit, working tree clean
When running the makepkg -si command I get an error telling me it's not able to locate the OpenSSL development header, and this happens during the compilation of the openssl-sys v0.9.103. Below is possible to find the snippet of the error message, and linked the full command output generate by the command makepkg -si.
Failed to find OpenSSL development headers.
You can try fixing this setting the `OPENSSL_DIR` environment variable
pointing to your OpenSSL installation or installing OpenSSL headers package
specific to your distribution:# On Ubuntu
sudo apt-get install pkg-config libssl-dev
# On Arch Linux
sudo pacman -S pkgconf openssl
# On Fedora
sudo dnf install pkgconf perl-FindBin perl-IPC-Cmd openssl-devel
# On Alpine Linux
apk add pkgconf openssl-devSee rust-openssl documentation for more information:
Trying to solve this problem on my own I did few things, and the last was compiling the project manually. So I ran the cargo build command found in the PKGBUILD file, and this instead worked just fine.
For instance the full command I ran was: cargo build --frozen --features "git" --release --target-dir target and this is it's full output.
I have no idea why the command inside the build script doesn't work but it does when run on it's own. I tried also to comment parts of the script, to check if it was some configuration command done previously that made the problem, but also running only the bare command cargo build was a problem inside the script ( of course I did not remove the cd command ).
Trying to solve this I also installed the openssl-1.1 package in addition to the openssl package I already had.
My current packages versions are:
gcc 14.2.1+r730+gc061ad5a36ba-1
rustup 1.27.1-1
openssl 3.4.0-1
openssl-1.1 1.1.1.w-2
And the command rustup --version shows this output:
rustup 1.27.1 (2024-05-07)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.84.1 (e71f9a9a9 2025-01-27)`
Running a cargo update on the project updates several crates, including:
openssl: from version v0.10.66 to v0.10.70
openssl-probe: from version v0.1.5 to v0.1.6
openssl-sys: from version v0.9.103 to v0.9.105
But this didn't change the output, since the manual compilation worked also before the update, and for the automated one I had to put the update command inside the script ( since the source folder was wiped all the time ), but it didn't worked anyway.
I did not set any environment variable, since in the docs provided in the rust error message it says that it should auto-detect the OpenSSL installation on it's own using pkg-config, and the manual build worked. In fact using printenv shows this output:
SHELL=/usr/bin/bash
WINDOWID=14680076
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XTERM_VERSION=XTerm(397)
I3SOCK=/run/user/1000/i3/ipc-socket.672
DESKTOP_SESSION=i3
XTERM_SHELL=/usr/bin/bash
GTK_MODULES=canberra-gtk-module
XDG_SEAT=seat0
PWD=/home/mirco
LOGNAME=mirco
XDG_SESSION_DESKTOP=i3
XDG_SESSION_TYPE=x11
XAUTHORITY=/home/mirco/.Xauthority
XDG_GREETER_DATA_DIR=/var/lib/lightdm-data/mirco
MOTD_SHOWN=pam
HOME=/home/mirco
LANG=en_US.UTF-8
XDG_CURRENT_DESKTOP=i3
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XTERM_LOCALE=en_US.UTF-8
XDG_SESSION_CLASS=user
TERM=xterm-256color
USER=mirco
DISPLAY=:0
SHLVL=1
XDG_VTNR=7
XDG_SESSION_ID=2
XDG_RUNTIME_DIR=/run/user/1000
DEBUGINFOD_URLS=https://debuginfod.archlinux.org
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/usr/lib/rustup/bin
GDMSESSION=i3
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
MAIL=/var/spool/mail/mirco
_=/usr/bin/printenv
Don't think it should matter but I'm running on the kernel version 6.13.1-arch1-1, dunno just trying to give as much information as possible.
Last edited by SameSite (2025-02-06 21:44:47)
Offline
...
warning: openssl-sys@0.9.103: cc: error: unrecognized command-line option ‘-j6’
error: failed to run custom build command for `openssl-sys v0.9.103`
...
Please post the contents of `/etc/makepkg.conf`.
Offline
did you do a full system update and then try again?
Offline
@mackin_cheese can you build paru successfully with a value of CFLAGS set to `-march=x86-64 -mtune=generic -O2 -j6 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/mnt/hdd/aur/paru/src=/usr/src/debug/paru -flto=auto`
CFLAGS = Some(-march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -g -ffile-prefix-map=/build/paru/src=/usr/src/debug/paru -flto=auto -j6)
cargo:rerun-if-env-changed=CC_SHELL_ESCAPED_FLAGS
CC_SHELL_ESCAPED_FLAGS = None
cargo:warning=cc: error: unrecognized command-line option ‘-j6’
Offline
I built paru successfully but not with those parameters, i just went with what was in the pkgbuild.
Offline
I am suggesting SameSite has added `-j6` to CFLAGS in /etc/makepkg.conf which is invalid. If you do the same does that break the build for you?
Edit:
$ cc -j6
gcc: error: unrecognized command-line option ‘-j6’
gcc: fatal error: no input files
compilation terminated.
$ clang -j6
clang: error: unknown argument: '-j6'
clang: error: no input files
Last edited by loqs (2025-02-05 21:04:33)
Offline
one seccond let me look at the pastebin
Last edited by mackin_cheese (2025-02-05 22:42:13)
Offline
@SameSite is there a reason why you are using the '-j6' option? you really shouldn't be editing your makepkg.conf file if it's going to prevent a package build and then subsequently ask us what the issue may be. Try building this with a defaulted makepkg.conf
Offline
Thanks guys changing the content of the /etc/makepkg.conf did the job.
I have no idea why it was like that, because the first time I tried to install Paru there were a dependency problem with Pacman that was just been updated, and since the only AUR package I'm running at the moment is VSCode it was not that big of a deal to update it manually.
Then when I tried to install it again yesterday I had that problem and I was assuming that the real error was the missing OpenSSL library, like the error was mentioning, and not the warning prenset just before.
But yeah inspecting the code of the file linked in the error message I realized that if for whatever reason the GCC compilation of the OpenSSL library failed it assume that the library is missing, so yeah also wrong flag or missing compiler can rise this error I guess.
Last edited by SameSite (2025-02-06 21:48:02)
Offline