Public bug reported:
The package build fails in dh_clean. We can reproduce it by simply
running 'make clean':
Package libR was not found in the pkg-config search path.
Perhaps you should add the directory containing `libR.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libR', required by 'virtual:world', not found
make: *** No rule to make target 'clean'. Stop.
Here is the failing command:
pkg-config --cflags-only-I libR
Running it in debug mode, we can see the following warnings:
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Name' field
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Description' field
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Version' field
/usr/lib/pkgconfig/libR.pc: warning: skipping invalid file
Finally, checking /usr/lib/pkgconfig/libR.pc, we realize that the file
is empty for r-base-core_4.5.2-1build1_amd64.deb in the proposed pocket.
however, r-base-core_4.5.2-1_amd64.deb (in the release pocket), has the
following contents:
$ cat old/usr/lib/pkgconfig/libR.pc
rhome=/usr/lib/R
rlibdir=${rhome}/lib
rincludedir=/usr/share/R/include
Name: libR
Description: R as a library
Version: 4.5.2
Libs: -Wl,--export-dynamic -fopenmp -Wl,-Bsymbolic-functions -flto=auto
-ffat-lto-objects -Wl,-z,relro -L${rlibdir} -lR
Cflags: -I${rincludedir} -I${rincludedir}
Libs.private:
Checking the build logs for r-base-core_4.5.2-1build1 at
https://launchpadlibrarian.net/835083897/buildlog_ubuntu-resolute-
amd64.r-base_4.5.2-1build1_BUILDING.txt.gz
mkdir -p -- /<<PKGBUILDDIR>>/debian/r-base-core/usr/lib/pkgconfig
/bin/sed: -e expression #5, char 102: unknown option to `s'
make[3]: [Makefile:85: install-pc] Error 1 (ignored)
Which is most likely the culprit here.
This is the failing sed command:
$ sed -n 89p src/unix/Makefile.in
-e 's:@others:$(MAIN_LDFLAGS) $(LDFLAGS):' \
The new build (the one with the sed failure), adds the following to
LDFLAGS:
--package-
metadata={%22type%22:%22deb%22%2C%22os%22:%22ubuntu%22%2C%22name%22:%22r-base%22%2C%22version%22:%224.5.2-1build1%22%2C%22architecture%22:%22amd64%22}
This is messing with the sed's 's' command separator since it adds lots
of ':' characters.
It is also interesting to note that the sed command is allowed to fail.
See the r-devel mailing list relevant discussion at
https://stat.ethz.ch/pipermail/r-devel/2009-September/054731.html
We should change the separator for that specific sed command. We can try
'!' since ',' is widely used in LDFLAGS.
Also, we should probably stop allowing that specific sed command to fail
to improve reproducibility for that package.
** Affects: r-base (Ubuntu)
Importance: Undecided
Assignee: Athos Ribeiro (athos)
Status: New
** Tags: update-excuse
** Changed in: r-base (Ubuntu)
Assignee: (unassigned) => Athos Ribeiro (athos)
** Tags added: update-excuse
** Description changed:
The package build fails in dh_clean. We can reproduce it by simply
running 'make clean':
Package libR was not found in the pkg-config search path.
Perhaps you should add the directory containing `libR.pc'
to the PKG_CONFIG_PATH environment variable
Package 'libR', required by 'virtual:world', not found
make: *** No rule to make target 'clean'. Stop.
Here is the failing command:
pkg-config --cflags-only-I libR
Running it in debug mode, we can see the following warnings:
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Name' field
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Description'
field
/usr/lib/pkgconfig/libR.pc: warning: file does not declare a `Version' field
/usr/lib/pkgconfig/libR.pc: warning: skipping invalid file
Finally, checking /usr/lib/pkgconfig/libR.pc, we realize that the file
is empty for r-base-core_4.5.2-1build1_amd64.deb in the proposed pocket.
however, r-base-core_4.5.2-1_amd64.deb (in the release pocket), has the
following contents:
$ cat old/usr/lib/pkgconfig/libR.pc
rhome=/usr/lib/R
rlibdir=${rhome}/lib
rincludedir=/usr/share/R/include
Name: libR
Description: R as a library
Version: 4.5.2
Libs: -Wl,--export-dynamic -fopenmp -Wl,-Bsymbolic-functions -flto=auto
-ffat-lto-objects -Wl,-z,relro -L${rlibdir} -lR
Cflags: -I${rincludedir} -I${rincludedir}
Libs.private:
+
+
+ Checking the build logs for r-base-core_4.5.2-1build1 at
+
+ https://launchpadlibrarian.net/835083897/buildlog_ubuntu-resolute-
+ amd64.r-base_4.5.2-1build1_BUILDING.txt.gz
+
+ mkdir -p -- /<<PKGBUILDDIR>>/debian/r-base-core/usr/lib/pkgconfig
+ /bin/sed: -e expression #5, char 102: unknown option to `s'
+ make[3]: [Makefile:85: install-pc] Error 1 (ignored)
+
+ Which is most likely the culprit here.
+
+
+ This is the failing sed command:
+
+ $ sed -n 89p src/unix/Makefile.in
+ -e 's:@others:$(MAIN_LDFLAGS) $(LDFLAGS):' \
+
+ The new build (the one with the sed failure), adds the following to
+ LDFLAGS:
+
+ --package-
+
metadata={%22type%22:%22deb%22%2C%22os%22:%22ubuntu%22%2C%22name%22:%22r-base%22%2C%22version%22:%224.5.2-1build1%22%2C%22architecture%22:%22amd64%22}
+
+ This is messing with the sed's 's' command separator since it adds lots
+ of ':' characters.
+
+ It is also interesting to note that the sed command is allowed to fail.
+ See the r-devel mailing list relevant discussion at
+ https://stat.ethz.ch/pipermail/r-devel/2009-September/054731.html
+
+ We should change the separator for that specific sed command. We can try
+ '!' since ',' is widely used in LDFLAGS.
+
+ Also, we should probably stop allowing that specific sed command to fail
+ to improve reproducibility for that package.
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2138363
Title:
Empty /usr/lib/pkgconfig/libR.pc
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/r-base/+bug/2138363/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs