On 1/27/2020 9:45 PM, Douglas R. Reno via blfs-support wrote:
On 1/27/20 10:16 PM, Alan Feuerbacher via blfs-support wrote:
On 1/27/2020 7:44 PM, Douglas R. Reno via blfs-support wrote:
On 1/27/20 8:35 PM, Alan Feuerbacher via blfs-support wrote:
Building alsa-tools-1.1.7 in BLFS systemd development version:
The BLFS book has a script that builds a number of sub-programs. I
got an
error with "make" for one of them, and tracked it down to a conversion
error in the sub-program hdspmixer. You get six errors like:
###############
HDSPMixerWindow.cxx: In function ‘void readregisters_cb(void*)’:
HDSPMixerWindow.cxx:82:36: error: invalid conversion from ‘__u64*’
{aka ‘long long unsigned int*’} to ‘uint64_t*’ {aka ‘long unsigned
int*’} [-fpermissive]
82 | input_rms = hdspm_peak_rms.input_rms;
| ~~~~~~~~~~~~~~~^~~~~~~~~
| |
| __u64* {aka long long
unsigned int*}
. . .
###############
I'm guessing that there is a problem here that needs to be fixed by
the alsa-tools people.
I got around the problem by changing the "for tool in *" script so
that it
does not build the offending program "hdspmixer", but builds all
the others.
I don't know if I'll need alsa-tools in the long run, but am building
it now because a number of other programs list it as a dependency.
Does this seem reasonable?
Alan
Hi Alan,
With alsa-lib-1.2.1.2 and alsa-tools-1.1.7, I can't produce this.
Can you ensure that you used the sed in the book please? I remember
adding one there to fix this problem. It's due to the Kernel API
Headers being incompatible with alsa-tools after being synced into
the alsa-lib tree (as part of this, they removed the user
definitions from the API by accident, and the sed is designed to fix
it).
Just to make sure:
sed -i -e "/#include/i #define __user" \ hdspconf/src/*.cxx \
hdspmixer/src/*.cxx \ hdsploader/hdsploader.c
Should be what you're inputting.
Hi Doug,
Yes, I double-checked that sed; it's correct.
I also rebuilt alsa-lib and then alsa-tools. Same error.
And again, when I cd into the hdspmixer directory, and execute
"./configure --prefix=/usr; make", I get that same error.
Hi Alan,
I've tracked this down to another Kernel API change causing problems.
Can you try the following seds for hdspmixer?
sed -i '39 s/uint32_t/__u32/' hdspmixer/src/HDSPMixerWindow.cxx
sed -i '40 s/uint64_t/__u64/' hdspmixer/src/HDSPMixerWindow.cxx
Please do this after the other seds that are already on that page.
That worked; everything builds fine. Thanks!
Alan
--
http://lists.linuxfromscratch.org/listinfo/blfs-support
FAQ: http://www.linuxfromscratch.org/blfs/faq.html
Unsubscribe: See the above information page