Skip to content
This repository has been archived by the owner on Feb 9, 2023. It is now read-only.

Setting up aiy-python-wheels: protobuf not supported on armv6.1 #526

Closed
jannewmarch opened this issue Nov 18, 2018 · 27 comments
Closed

Setting up aiy-python-wheels: protobuf not supported on armv6.1 #526

jannewmarch opened this issue Nov 18, 2018 · 27 comments
Labels

Comments

@jannewmarch
Copy link

I'm trying to setup Mycroft on the Voice Hat with an RPi 3B+. The install script calls
sudo apt-get install aiy-python-wheels
This fails with
protobuf-3.6.1-cp35-cp35m-linux_armv6.1 is not a supported wheel on this platform
Is this an AIY issue? Is there a fix or workaround?

Thanks, Jan

@dmitriykovalev
Copy link
Contributor

Thanks for reporting this. Technically this wheel is compatible and should work on RPi 3B+ but looks like pip is not happy about its name. Please use our SD card image if possible, it should work on any Pi board.

@xlyytcy
Copy link

xlyytcy commented Nov 20, 2018

Same issue on 3B.

@genus1
Copy link

genus1 commented Nov 21, 2018

This is a challenge. I had five boards working before the upgrade to button.wait_for_press(). I have a LOT of stuff on the pi besides just voice to be able to control boards with voice. I literally have to start from scratch to rebuild these boards, which is really not a desired option. Please post an upgrade here when the bug is fixed using upgrade. Or in the meantime could you post the code to fix the bug you put in your new image? The problem is in duration_pb2.

@jannewmarch
Copy link
Author

andlo has posted a fix in the Mycroft forum Setting up aiy-python-wheels: protobuf not supported on armv6.1

@genus1
Copy link

genus1 commented Nov 22, 2018

This issue should NOT be closed until apt upgrade works properly. Google needs to fix this or every time we update or upgrade we have to repatch. Also it is NOT an answer to just download the current image when it overwrites all your code.

@teslasmoustache
Copy link

teslasmoustache commented Nov 23, 2018

I am having the same issue. This is not resolved. 'apt install aiy-python-wheels' is not going to work until whatever has changed in protobuf allows it to be compatible again.

@novalu
Copy link

novalu commented Nov 23, 2018

Actually, answer is not to download the current image, because it has the same issue.

I've tried to install packages manually on Raspbian images:
• 2017-09-07
• 2018-03-13
• 2018-11-13
and it didn't worked with the same error as @jannewmarch has.

Then I've gave it up and use flash provided image aiyprojects-latest.img.xz from 2018-08-07, but apt-get upgrade didn't work either with the same error. It looks like it will be working without the upgrading (but the I've discovered another issue #356 :/).

I have Raspberry 3 with Voice Kit V1 and everything worked when I've tried installing it for the first time in October 2017. Thank you.

@novalu
Copy link

novalu commented Nov 27, 2018

New image version mentioned manoj7410 in #530 resolved this issue for me.

@Cr4z33
Copy link

Cr4z33 commented Dec 6, 2018

How can I apply the new image update without having to reflash it again and loose all my settings?

@genus1
Copy link

genus1 commented Dec 20, 2018

I reloaded the new image and it works. But I used downgrading the RPi.GPIO as mentioned the bottom posts at #481.

@ZLevine
Copy link

ZLevine commented Jan 25, 2019

Why is this closed? This is not resolved — not everyone can start with the image as a base.

@mss-deepak
Copy link

I am using raspberry 3B with AIY voice v1 hat, with this I am getting error on apt install aiy-python-wheels
please suggest me any solution.

@jannewmarch jannewmarch reopened this Feb 6, 2019
@jannewmarch
Copy link
Author

This seems to have been marked closed by me on 22 Nov. If I did, I didn't mean to! I mentioned a workaround, but that isn't a fix. So I'm re-opening it, because it isn't fixed yet.

@mss-deepak
Copy link

This seems to have been marked closed by me on 22 Nov. If I did, I didn't mean to! I mentioned a workaround, but that isn't a fix. So I'm re-opening it, because it isn't fixed yet.

Thanks for reopening as this issue as is widely faced by users without any working solution.
@jannewmarch do you found any solution for your problem?
I am trying to install this from last 2 weeks, I also tried the recommended solution to update the image with latest one bu this image is not boot able which is another problem :
https://github.com/google/aiyprojects-raspbian/releases/tag/v20181116

@mpember
Copy link

mpember commented Feb 10, 2019

If the problem has been fixed, could you advise what was done to fix it? Simply telling users to start with a clean install is NOT the most user-friendly approach.

@jannewmarch
Copy link
Author

andlo has posted a workaround for Mycroft in the Mycroft forum Setting up aiy-python-wheels: protobuf not supported on armv6.1. It's not a fix - it allows Mycroft to boot up by timing out on aiy-python-wheels, but every hour or so it tries to reload it and has to time out again.

@mpember
Copy link

mpember commented Feb 11, 2019

The problem stems from the aiy-python-wheels package not identifying the hardware prior to forcing an install of an armv61 version of protobuf.

#!/bin/bash

set -e

case "$1" in
    configure)
        pip3 install --no-deps --no-cache-dir --disable-pip-version-check \
            /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl

        SITE_PACKAGES=$(python3 -c "import site; print(site.getsitepackages()[0])")

        # armv6l
        SITE_PACKAGES_ARMV6L=${SITE_PACKAGES}-linux-armv6l
        mkdir -p ${SITE_PACKAGES_ARMV6L}
        unzip -d ${SITE_PACKAGES_ARMV6L} \
            /opt/aiy/python-wheels/google_assistant_library-1.0.1-py2.py3-none-linux_armv6l.whl

        # armv7l
        SITE_PACKAGES_ARMV7L=${SITE_PACKAGES}-linux-armv7l
        mkdir -p ${SITE_PACKAGES_ARMV7L}
        unzip -d ${SITE_PACKAGES_ARMV7L} \
            /opt/aiy/python-wheels/google_assistant_library-1.0.1-py2.py3-none-linux_armv7l.whl

        cat > ${SITE_PACKAGES}/aiy.pth <<EOF
import distutils.util; import sys; import site; path='%s-%s' %(site.getsitepackages()[0], distutils.util.get_platform()); {True: [], False: sys.path}.get(path in sys.path).append(path);
EOF
    ;;
    abort-upgrade|abort-remove|abort-deconfigure)
    ;;

    *)
        echo "postinst called with unknown argument \`$1'" >&2
        exit 0
    ;;
esac



exit 0

@johanhenselmans
Copy link

johanhenselmans commented Apr 24, 2019

Workaround on rapberry-pi3:
first do
sudo ln -s /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv7l.whl

Then in
/var/lib/dpkg/info/aiy-python-wheels.postinst

replace

/opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl

with
/opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv7l.whl

then do:
sudo dpkg --configure -a

@rickwookie
Copy link

rickwookie commented Apr 24, 2019

Workaround on rapberry-pi3:
first do
sudo ln -s /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv7l.whl
Then in
/var/lib/dpkg/info/aiy-python-wheels.postinst
replace
/opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl
with
/opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv7l.whl
then do:
sudo dpkg --configure -a

I then get:

` $ sudo dpkg --configure -a

Setting up aiy-projects-python (1.1-0) ...
fatal: destination path '/opt/aiy/projects-python' already exists and is not an empty directory.
dpkg: error processing package aiy-projects-python (--configure):
subprocess installed post-installation script returned error exit status 128
Errors were encountered while processing:
aiy-projects-python`

@johanhenselmans
Copy link

johanhenselmans commented Apr 24, 2019

You are stalled in a previous phase as the sudo apt-get install aiy-python-wheels .

Perhaps

sudo dpkg --configure --force-overwrite --force-overwrite-dir -a

works for you?

Another solution might be to look at the /opt/aiy/ folder, and look at the aiy packages that have already been installed, remove them and remove /opt/aiy and start all over again.

In the end I had these installed:

ii aiy-board-info 1.0-1 all AIY Kit Information
ii aiy-bt-prov-server 1.0-1 all AIY Bluetooth provisioning server
ii aiy-cwc-server 1.0-1 all AIY Coding with Chrome Server
ii aiy-dkms 1.1-2 all Hardware device drivers for AIY Projects Kits.
ii aiy-io-mcu-firmware 1.0-1 all AIY MCU Firmware
ii aiy-models 1.1-0 all Binary model data for AIY devices
ii aiy-overlay-vision 1.0-1 all Device tree overlay for AIY Vision Bonnet.
ii aiy-overlay-voice 1.0-1 all Device tree overlay for AIY Voice Bonnet.
ii aiy-projects-python 1.1-0 all AIY Python API
ii aiy-python-wheels 1.1-1 all Prebuilt Python wheels for AIY
ii aiy-usb-gadget 1.0-1 all AIY USB Gadget
ii aiy-vision-dkms 1.1-1 all AIY Vision DKMS driver.
ii aiy-vision-firmware 1.2-0 all Binary firmware for AIY vision bonnet
ii aiy-voice-services 1.1-1 all AIY Voice Services
ii aiy-voicebonnet-soundcard-dkms 1.0-2 all AIY Voice DKMS driver.

@rickwookie
Copy link

rickwookie commented Apr 24, 2019

You are stalled in a previous phase as the sudo apt-get install aiy-python-wheels .
Perhaps
sudo dpkg --configure --force-overwrite --force-overwrite-dir -a
works for you?
Another solution might be to look at the /opt/aiy/ folder, and look at the aiy packages that have already been installed, remove them and remove /opt/aiy and start all over again.
In the end I had these installed:

ii aiy-board-info 1.0-1 all AIY Kit Information
ii aiy-bt-prov-server 1.0-1 all AIY Bluetooth provisioning server
ii aiy-cwc-server 1.0-1 all AIY Coding with Chrome Server
ii aiy-dkms 1.1-2 all Hardware device drivers for AIY Projects Kits.
ii aiy-io-mcu-firmware 1.0-1 all AIY MCU Firmware
ii aiy-models 1.1-0 all Binary model data for AIY devices
ii aiy-overlay-vision 1.0-1 all Device tree overlay for AIY Vision Bonnet.
ii aiy-overlay-voice 1.0-1 all Device tree overlay for AIY Voice Bonnet.
ii aiy-projects-python 1.1-0 all AIY Python API
ii aiy-python-wheels 1.1-1 all Prebuilt Python wheels for AIY
ii aiy-usb-gadget 1.0-1 all AIY USB Gadget
ii aiy-vision-dkms 1.1-1 all AIY Vision DKMS driver.
ii aiy-vision-firmware 1.2-0 all Binary firmware for AIY vision bonnet
ii aiy-voice-services 1.1-1 all AIY Voice Services
ii aiy-voicebonnet-soundcard-dkms 1.0-2 all AIY Voice DKMS driver.

I renamed the projects-python directory to projects-python2 then re-ran:

$ sudo dpkg --configure -a
Setting up aiy-projects-python (1.1-0) ...
Cloning into '/opt/aiy/projects-python'...
Receiving objects: 100% (2594/2594), 1.53 MiB | 0 bytes/s, done.
Resolving deltas: 100% (1195/1195), done.
warning: remote HEAD refers to nonexistent ref, unable to checkout.

/opt/aiy/projects-python /
Note: checking out 'aiy-github'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

HEAD is now at 5c74ce5... Update HACKING.md.
Deleted tag 'aiy-github' (was 5c74ce5)
Switched to a new branch 'aiyprojects'
/
Obtaining file:///opt/aiy/projects-python/src
Exception:
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 1025, in check_if_exists
    self.satisfied_by = pkg_resources.get_distribution(str(no_marker))
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 553, in get_distribution
    dist = get_provider(dist)
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 427, in get_provider
    return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 963, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 854, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (google-cloud-speech 0.30.0 (/usr/local/lib/python3.5/dist-packages), Requirement.parse('google-cloud-speech==0.36.0'), {'aiy-projects-python'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/pip/basecommand.py", line 215, in main
    status = self.run(options, args)
  File "/usr/lib/python3/dist-packages/pip/commands/install.py", line 353, in run
    wb.build(autobuilding=True)
  File "/usr/lib/python3/dist-packages/pip/wheel.py", line 749, in build
    self.requirement_set.prepare_files(self.finder)
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 380, in prepare_files
    ignore_dependencies=self.ignore_dependencies))
  File "/usr/lib/python3/dist-packages/pip/req/req_set.py", line 521, in _prepare_file
    req_to_install.check_if_exists()
  File "/usr/lib/python3/dist-packages/pip/req/req_install.py", line 1036, in check_if_exists
    self.req.name
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 553, in get_distribution
    dist = get_provider(dist)
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 427, in get_provider
    return working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 963, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/share/python-wheels/pkg_resources-0.0.0-py2.py3-none-any.whl/pkg_resources/__init__.py", line 854, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (google-cloud-speech 0.30.0 (/usr/local/lib/python3.5/dist-packages), Requirement.parse('google-cloud-speech==0.36.0'), {'aiy-projects-python'})
dpkg: error processing package aiy-projects-python (--configure):
 subprocess installed post-installation script returned error exit status 2
Errors were encountered while processing:
 aiy-projects-python

@Whytehorse
Copy link

Whytehorse commented May 10, 2019

Solved this. Someone hard-coded an older version of protobuf into /var/lib/dpkg/info/aiy-python-wheels.postinst . Please send this upstream for correction. The workaround is as follows:


pip3 download protobuf
(file downloaded is protobuf-3.7.1-py2.py3-none-any.whl)
 pip3 install ./protobuf-3.7.1-py2.py3-none-any.whl

sudo nano /var/lib/dpkg/info/aiy-python-wheels.postinst

Comment out the lines containing

# pip3 install --no-deps --no-cache-dir --disable-pip-version-check \
       #     /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl

Finish installation:
sudo dpkg --configure --force-overwrite --force-overwrite-dir -a

@MaximeSoulie
Copy link

Solved this. Someone hard-coded an older version of protobuf into /var/lib/dpkg/info/aiy-python-wheels.postinst . Please send this upstream for correction. The workaround is as follows:


pip3 download protobuf
(file downloaded is protobuf-3.7.1-py2.py3-none-any.whl)
 pip3 install ./protobuf-3.7.1-py2.py3-none-any.whl

sudo nano /var/lib/dpkg/info/aiy-python-wheels.postinst

Comment out the lines containing

# pip3 install --no-deps --no-cache-dir --disable-pip-version-check \
       #     /opt/aiy/python-wheels/protobuf-3.6.1-cp35-cp35m-linux_armv6l.whl

Finish installation:
sudo dpkg --configure --force-overwrite --force-overwrite-dir -a

Thank you very much Whytehorse, as this issue is still present on the latest image 2019-07-20... !

@Avi-avidan
Copy link

trying to install aiy v1 [python-wheels (1.1-1)] on rpi4. followed this entire thread. workarounds did not work for me :-/.
any advice would be greatly appreciated. really.

sudo dpkg --configure --force-overwrite --force-overwrite-dir -a
Setting up aiy-voicebonnet-soundcard-dkms (1.0-2) ... Removing old aiy-voicebonnet-soundcard-1.0 DKMS files... Deleting module version: 1.0 completely from the DKMS tree. Done. Loading new aiy-voicebonnet-soundcard-1.0 DKMS files... It is likely that 4.19.75-v7l+ belongs to a chroot's host Building for 4.19.75+, 4.19.75-v7+, 4.19.75-v7l+ and 4.19.75-v8+ Building initial module for 4.19.75+ Error! Bad return status for module build on kernel: 4.19.75+ (armv7l) Consult /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/make.log for more information. dpkg: error processing package aiy-voicebonnet-soundcard-dkms (--configure): installed aiy-voicebonnet-soundcard-dkms package post-installation script subprocess returned error exit status 10 Errors were encountered while processing: aiy-voicebonnet-soundcard-dkms

cat /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/make.log
DKMS make.log for aiy-voicebonnet-soundcard-1.0 for kernel 4.19.75+ (armv7l) Mon 11 Nov 2019 10:56:18 PM IST make: Entering directory '/usr/src/linux-headers-4.19.75+' CC [M] /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.o CC [M] /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.o CC [M] /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rl6231.o In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.c:25: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2207:36: warning: ‘struct snd_soc_codec’ declared inside parameter list will not be visible outside of this definition or declaration int rt5645_sel_asrc_clk_src(struct snd_soc_codec *codec, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2210:35: warning: ‘struct snd_soc_codec’ declared inside parameter list will not be visible outside of this definition or declaration int rt5645_set_jack_detect(struct snd_soc_codec *codec, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.c: In function ‘snd_rpi_aiy_voicebonnet_init’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.c:40:29: error: ‘struct snd_soc_pcm_runtime’ has no member named ‘codec’ rt5645_sel_asrc_clk_src(rtd->codec, ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.c:62:35: error: ‘struct snd_soc_pcm_runtime’ has no member named ‘codec’ return rt5645_set_jack_detect(rtd->codec, &headset_jack, NULL, NULL); ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.c:63:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ make[1]: *** [scripts/Makefile.build:309: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/snd-aiy-voicebonnet.o] Error 1 make[1]: *** Waiting for unfinished jobs.... In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:35: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2207:36: warning: ‘struct snd_soc_codec’ declared inside parameter list will not be visible outside of this definition or declaration int rt5645_sel_asrc_clk_src(struct snd_soc_codec *codec, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2210:35: warning: ‘struct snd_soc_codec’ declared inside parameter list will not be visible outside of this definition or declaration int rt5645_set_jack_detect(struct snd_soc_codec *codec, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_reset’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:428:9: error: implicit declaration of function ‘snd_soc_write’; did you mean ‘snd_ac97_write’? [-Werror=implicit-function-declaration] return snd_soc_write(codec, RT5645_RESET, 0); ^~~~~~~~~~~~~ snd_ac97_write /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘set_dmic_clk’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:835:32: error: implicit declaration of function ‘snd_soc_dapm_to_codec’; did you mean ‘snd_soc_dapm_to_component’? [-Werror=implicit-function-declaration] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ snd_soc_dapm_to_component /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:835:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:836:31: error: implicit declaration of function ‘snd_soc_codec_get_drvdata’; did you mean ‘snd_soc_dai_get_drvdata’? [-Werror=implicit-function-declaration] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ snd_soc_dai_get_drvdata /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:836:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] In file included from ./include/linux/i2c.h:30, from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:17: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:843:16: error: dereferencing pointer to incomplete type ‘struct snd_soc_codec’ dev_err(codec->dev, "Failed to set DMIC clock\n"); ^~ ./include/linux/device.h:1443:11: note: in definition of macro ‘dev_err’ _dev_err(dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:845:3: error: implicit declaration of function ‘snd_soc_update_bits’; did you mean ‘snd_ac97_update_bits’? [-Werror=implicit-function-declaration] snd_soc_update_bits(codec, RT5645_DMIC_CTRL1, ^~~~~~~~~~~~~~~~~~~ snd_ac97_update_bits /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘is_sys_clk_from_pll’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:853:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(source->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:856:8: error: implicit declaration of function ‘snd_soc_read’; did you mean ‘snd_soc_cnew’? [-Werror=implicit-function-declaration] val = snd_soc_read(codec, RT5645_GLB_CLK); ^~~~~~~~~~~~ snd_soc_cnew /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘is_using_asrc’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:867:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(source->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_enable_hweq’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:915:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: At top level: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:943:5: error: conflicting types for ‘rt5645_sel_asrc_clk_src’ int rt5645_sel_asrc_clk_src(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~~ In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:35: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2207:5: note: previous declaration of ‘rt5645_sel_asrc_clk_src’ was here int rt5645_sel_asrc_clk_src(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~~ In file included from ./include/linux/linkage.h:7, from ./include/linux/kernel.h:7, from ./include/linux/list.h:9, from ./include/linux/module.h:9, from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:12: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1008:19: error: conflicting types for ‘rt5645_sel_asrc_clk_src’ EXPORT_SYMBOL_GPL(rt5645_sel_asrc_clk_src); ^~~~~~~~~~~~~~~~~~~~~~~ ./include/linux/export.h:79:21: note: in definition of macro ‘___EXPORT_SYMBOL’ extern typeof(sym) sym; \ ^~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1008:1: note: in expansion of macro ‘EXPORT_SYMBOL_GPL’ EXPORT_SYMBOL_GPL(rt5645_sel_asrc_clk_src); ^~~~~~~~~~~~~~~~~ In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:35: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2207:5: note: previous declaration of ‘rt5645_sel_asrc_clk_src’ was here int rt5645_sel_asrc_clk_src(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘hp_amp_power’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1671:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_hp_event’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1763:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1764:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_spk_event’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1829:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_lout_event’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1862:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_bst2_event’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1892:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5650_hp_event’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1915:32: warning: initialization of ‘struct snd_soc_codec *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_codec *codec = snd_soc_dapm_to_codec(w->dapm); ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:1916:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_hw_params’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2703:35: error: ‘struct snd_soc_dai’ has no member named ‘codec’ struct snd_soc_codec *codec = dai->codec; ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2704:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_dai_fmt’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2779:35: error: ‘struct snd_soc_dai’ has no member named ‘codec’ struct snd_soc_codec *codec = dai->codec; ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2780:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_dai_sysclk’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2850:35: error: ‘struct snd_soc_dai’ has no member named ‘codec’ struct snd_soc_codec *codec = dai->codec; ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2851:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_dai_pll’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2884:35: error: ‘struct snd_soc_dai’ has no member named ‘codec’ struct snd_soc_codec *codec = dai->codec; ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2885:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_tdm_slot’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2955:35: error: ‘struct snd_soc_dai’ has no member named ‘codec’ struct snd_soc_codec *codec = dai->codec; ^~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:2956:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_bias_level’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3021:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3025:31: error: implicit declaration of function ‘snd_soc_codec_get_bias_level’; did you mean ‘snd_soc_dapm_get_bias_level’? [-Werror=implicit-function-declaration] if (SND_SOC_BIAS_STANDBY == snd_soc_codec_get_bias_level(codec)) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ snd_soc_dapm_get_bias_level /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_enable_push_button_irq’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3081:38: error: implicit declaration of function ‘snd_soc_codec_get_dapm’; did you mean ‘snd_soc_component_get_dapm’? [-Werror=implicit-function-declaration] struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); ^~~~~~~~~~~~~~~~~~~~~~ snd_soc_component_get_dapm /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3081:38: warning: initialization of ‘struct snd_soc_dapm_context *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_jack_detect’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3108:38: warning: initialization of ‘struct snd_soc_dapm_context *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); ^~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3109:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: At top level: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3207:5: error: conflicting types for ‘rt5645_set_jack_detect’ int rt5645_set_jack_detect(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~ In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:35: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2210:5: note: previous declaration of ‘rt5645_set_jack_detect’ was here int rt5645_set_jack_detect(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_set_jack_detect’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3211:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ In file included from ./include/linux/linkage.h:7, from ./include/linux/kernel.h:7, from ./include/linux/list.h:9, from ./include/linux/module.h:9, from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:12: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: At top level: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3236:19: error: conflicting types for ‘rt5645_set_jack_detect’ EXPORT_SYMBOL_GPL(rt5645_set_jack_detect); ^~~~~~~~~~~~~~~~~~~~~~ ./include/linux/export.h:79:21: note: in definition of macro ‘___EXPORT_SYMBOL’ extern typeof(sym) sym; \ ^~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3236:1: note: in expansion of macro ‘EXPORT_SYMBOL_GPL’ EXPORT_SYMBOL_GPL(rt5645_set_jack_detect); ^~~~~~~~~~~~~~~~~ In file included from /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:35: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.h:2210:5: note: previous declaration of ‘rt5645_set_jack_detect’ was here int rt5645_set_jack_detect(struct snd_soc_codec *codec, ^~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_probe’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3376:38: warning: initialization of ‘struct snd_soc_dapm_context *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct snd_soc_dapm_context *dapm = snd_soc_codec_get_dapm(codec); ^~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3377:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3400:2: error: implicit declaration of function ‘snd_soc_codec_force_bias_level’; did you mean ‘snd_soc_dapm_force_bias_level’? [-Werror=implicit-function-declaration] snd_soc_codec_force_bias_level(codec, SND_SOC_BIAS_OFF); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ snd_soc_dapm_force_bias_level /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_suspend’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3424:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_resume’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3434:31: warning: initialization of ‘struct rt5645_priv *’ from ‘int’ makes pointer from integer without a cast [-Wint-conversion] struct rt5645_priv *rt5645 = snd_soc_codec_get_drvdata(codec); ^~~~~~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: At top level: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3499:15: error: variable ‘soc_codec_dev_rt5645’ has initializer but incomplete type static struct snd_soc_codec_driver soc_codec_dev_rt5645 = { ^~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3500:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘probe’ .probe = rt5645_probe, ^~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3500:11: warning: excess elements in struct initializer .probe = rt5645_probe, ^~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3500:11: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3501:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘remove’ .remove = rt5645_remove, ^~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3501:12: warning: excess elements in struct initializer .remove = rt5645_remove, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3501:12: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3502:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘suspend’ .suspend = rt5645_suspend, ^~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3502:13: warning: excess elements in struct initializer .suspend = rt5645_suspend, ^~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3502:13: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3503:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘resume’ .resume = rt5645_resume, ^~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3503:12: warning: excess elements in struct initializer .resume = rt5645_resume, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3503:12: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3504:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘set_bias_level’ .set_bias_level = rt5645_set_bias_level, ^~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3504:20: warning: excess elements in struct initializer .set_bias_level = rt5645_set_bias_level, ^~~~~~~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3504:20: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3505:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘idle_bias_off’ .idle_bias_off = true, ^~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3505:19: warning: excess elements in struct initializer .idle_bias_off = true, ^~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3505:19: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3506:3: error: ‘struct snd_soc_codec_driver’ has no member named ‘component_driver’ .component_driver = { ^~~~~~~~~~~~~~~~ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3506:22: error: extra brace group at end of initializer .component_driver = { ^ /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3506:22: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3506:22: warning: excess elements in struct initializer /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3506:22: note: (near initialization for ‘soc_codec_dev_rt5645’) /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_i2c_probe’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3865:2: error: implicit declaration of function ‘setup_timer’; did you mean ‘setup_irq’? [-Werror=implicit-function-declaration] setup_timer(&rt5645->btn_check_timer, ^~~~~~~~~~~ setup_irq /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3881:8: error: implicit declaration of function ‘snd_soc_register_codec’; did you mean ‘snd_soc_register_dai’? [-Werror=implicit-function-declaration] ret = snd_soc_register_codec(&i2c->dev, &soc_codec_dev_rt5645, ^~~~~~~~~~~~~~~~~~~~~~ snd_soc_register_dai /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: In function ‘rt5645_i2c_remove’: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3906:2: error: implicit declaration of function ‘snd_soc_unregister_codec’; did you mean ‘snd_soc_unregister_card’? [-Werror=implicit-function-declaration] snd_soc_unregister_codec(&i2c->dev); ^~~~~~~~~~~~~~~~~~~~~~~~ snd_soc_unregister_card /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c: At top level: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.c:3499:36: error: storage size of ‘soc_codec_dev_rt5645’ isn’t known static struct snd_soc_codec_driver soc_codec_dev_rt5645 = { ^~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors make[1]: *** [scripts/Makefile.build:309: /var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build/rt5645.o] Error 1 make: *** [Makefile:1519: _module_/var/lib/dkms/aiy-voicebonnet-soundcard/1.0/build] Error 2 make: Leaving directory '/usr/src/linux-headers-4.19.75+'

@dmitriykovalev
Copy link
Contributor

This should be fixed in the latest SD card image, please follow HACKING.md to install python-wheels [1.3-1].

@d8ahazard
Copy link

This should be fixed in the latest SD card image, please follow HACKING.md to install python-wheels [1.3-1].

Yeah, that's a big negatory there, ghost rider. Getting the same issue when I try to install manually:

pi@raspberrypi:~ $ sudo apt-get install -y aiy-python-wheels
Reading package lists... Done
Building dependency tree
Reading state information... Done
aiy-python-wheels is already the newest version (1.3-1).
The following packages were automatically installed and are no longer required:
vlc-plugin-notify vlc-plugin-samba vlc-plugin-video-splitter vlc-plugin-visualization
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 17 not upgraded.
1 not fully installed or removed.
After this operation, 0 B of additional disk space will be used.
Setting up aiy-python-wheels (1.3-1) ...
protobuf-3.10.0-cp37-cp37m-linux_armv7l.whl is not a supported wheel on this platform.
dpkg: error processing package aiy-python-wheels (--configure):
subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
aiy-python-wheels
E: Sub-process /usr/bin/dpkg returned an error code (1)

@combs
Copy link

combs commented Feb 12, 2020

@dmitriykovalev

Setting up aiy-python-wheels (1.3-1) ...
protobuf-3.10.0-cp37-cp37m-linux_armv6l.whl is not a supported wheel on this platform.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests