Since upgrading to perl-5.40.0, I am unable to use the perl API provided by rrdtool. # qlist -Ive rrdtool perl dev-lang/perl-5.40.0 net-analyzer/rrdtool-1.9.0 # qlist -e rrdtool | grep '\.pm$' /usr/lib64/perl5/vendor_perl/5.40/x86_64-linux/RRDs.pm /usr/lib64/perl5/vendor_perl/5.40/RRDp.pm # perl -MRRDs -e 1 Can't load '/usr/lib64/perl5/vendor_perl/5.40/x86_64-linux/auto/RRDs/RRDs.so' for module RRDs: /usr/lib64/perl5/vendor_perl/5.40/x86_64-linux/auto/RRDs/RRDs.so: undefined symbol: rrd_xport at /usr/lib64/perl5/5.40/x86_64-linux/DynaLoader.pm line 206. at -e line 0. Compilation failed in require. BEGIN failed--compilation aborted. As an additional data point, Arch Linux provides the same versions of perl and rrdtool and exhibits no such problem. I'm not yet sure as to why.
Created attachment 904952 [details] perl -V output
Fortunately, it's not a 5.40.0 regression. The solution is to have the "perl" USE flag require that the "graph" flag also be enabled. That is, the combination of USE="perl -graph" should not be tolerated.
One more thing. I would strongly advise checking whether this is an issue for the other bindings also (python, ruby, lua, tcl).