Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1854905 - brltty fails to build on Red Hat Enterprise Linux 8.3.0: asoundlib.h: No such file or directory
Summary: brltty fails to build on Red Hat Enterprise Linux 8.3.0: asoundlib.h: No such...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 8
Classification: Red Hat
Component: brltty
Version: ---
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: 8.0
Assignee: aegorenk
QA Contact: Ondrej Mejzlik
URL:
Whiteboard:
Depends On: 1716389
Blocks: 1894575 1765611
TreeView+ depends on / blocked
 
Reported: 2020-07-08 12:32 UTC by aegorenk
Modified: 2021-05-18 15:24 UTC (History)
6 users (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of: 1716389
Environment:
Last Closed: 2021-05-18 15:24:15 UTC
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description aegorenk 2020-07-08 12:32:41 UTC
+++ This bug was initially created as a clone of Bug #1716389 +++

brltty 6.0-2.fc31 faisl to build on Fedora 31/rawhide:

./pcm_alsa.c:22:10: fatal error: asoundlib.h: No such file or directory
   22 | #include <asoundlib.h>
      |          ^~~~~~~~~~~~~
compilation terminated.

This blocks the Python 3.8 rebuild.

We think this is caused by https://src.fedoraproject.org/rpms/alsa-lib/c/8c75636abba982ee9ac77d3383af1f7098bf4514?branch=master

Full logs from the Python 3.8 can be obtained from: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/package/brltty/

--- Additional comment from Miro Hrončok on 2019-06-03 12:25:48 UTC ---

Jaroslav, could you please provide some insight on why this header file was removed? Was it moved to another package?

--- Additional comment from Jaroslav Škarvada on 2019-06-03 16:02:30 UTC ---

It seems like we don't have -I/usr/include/alsa, investigating why. My guess is that some function brltty used for alsa autodetection has been changed or removed, the asoundlib.h seems to be present.

--- Additional comment from Jaroslav Škarvada on 2019-06-03 16:04:21 UTC ---

The configure output is now:
configure: pcm package: alsa
configure: pcm includes:
configure: pcm libs: -lasound.
configure: midi package: alsa
configure: midi includes:
configure: midi libs: -lasound.

It should be:
configure: pcm package: alsa
configure: pcm includes: -I/usr/include/alsa 
configure: pcm libs: -lasound 
configure: midi package: alsa
configure: midi includes: -I/usr/include/alsa 
configure: midi libs: -lasound

--- Additional comment from Jaroslav Škarvada on 2019-06-03 16:18:00 UTC ---

It seems like alsa bug, it should work this way:
$ pkg-config --cflags-only-I alsa
-I/usr/include/alsa 

but it works this way:
$ pkg-config --cflags-only-I alsa
<nothing>

--- Additional comment from Jaroslav Škarvada on 2019-06-03 16:33:31 UTC ---

It seems the problem is in the /usr/lib64/pkgconfig/alsa.pc, there should be:
Cflags: -I${includedir} -I${includedir}/alsa

but there is just:
Cflags: -I${includedir}

To be honest I don't know why there is -I${includedir}, it seems redundant for me, but the -I${includedir}/alsa definitely needs to be there, so reassigning to alsa.

--- Additional comment from Miro Hrončok on 2019-06-07 10:51:04 UTC ---

This issue is blocking the Python 3.8 rebuilds. If this package won't build with 3.8, it won't be installable, along with all its dependent packages, after the side tag is merged.
Furthermore, as it fails to install, its dependent packages will fail to install and/or build as well. The fix should be pushed on the master branch and no release bump is required.

Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.8: https://copr.fedorainfracloud.org/coprs/g/python/python3.8/

This issue needs to be resolved by next week, if other rebuilds of Python 3.8 beta 1 go well. If this is unrealistic for you, let us know how much time you need.

If you don't have free cycles to dedicate fixing your package, notify us and we'll try to provide some pointers. Let us know if we can push a fix directly without a pull request, in the case we happen to have one before you do.

--- Additional comment from Jaroslav Kysela on 2019-06-07 12:17:05 UTC ---

The problem appears that the "link-only" header in the source file is used. The source should be changed to use <alsa/asoundlib.h> path. We are using it everywhere in the ALSA packages:

  alsa-utils/aplay/aplay.c:#include <alsa/asoundlib.h>
  etc...

I removed the "link" to keep things more consistent. The applications should be fixed.

--- Additional comment from Miro Hrončok on 2019-06-07 12:29:34 UTC ---

Trying with:

sed -i 's|#include <asoundlib.h>|#include <alsa/asoundlib.h>|' Programs/*_alsa.c

--- Additional comment from Miro Hrončok on 2019-06-07 12:34:55 UTC ---

https://src.fedoraproject.org/rpms/brltty/pull-request/10

--- Additional comment from Jaroslav Škarvada on 2019-06-07 14:18:21 UTC ---

It seems it's documented:
https://alsa-project.org/wiki/Changes_v1.1.8_v1.1.9

So let's fix it in the brltty.

Comment 10 errata-xmlrpc 2021-05-18 15:24:15 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (brltty bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2021:1765


Note You need to log in before you can comment on or make changes to this bug.