Tesseract problem on installation during make - tesseract

I am trying to install tesseract-ocr on Debian 9 with gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516.
I run with the below order, according to this https://github.com/tesseract-ocr/tessdoc/blob/master/Compiling-%E2%80%93-GitInstallation.md
./autogen.sh
./configure
make
Now when I run make I get the following error:
root#genius1062:/usr/local/tesseract# make
Making all in .
make[1]: Entering directory '/usr/local/tesseract'
CXX src/api/libtesseract_la-baseapi.lo
In file included from ./src/ccutil/elst.h:24:0,
from ./src/ccstruct/points.h:22,
from ./src/ccstruct/rect.h:22,
from ./src/ccstruct/boxword.h:22,
from src/api/baseapi.cpp:26:
./src/ccutil/serialis.h: In member function ‘bool tesseract::TFile::DeSerialize(std::vector&)’:
./src/ccutil/serialis.h:107:17: error: expected primary-expression before ‘constexpr’
} else if ( constexpr (std::is_same_v<T, std::string>)) {
^~~~~~~~~
./src/ccutil/serialis.h:107:17: error: expected ‘)’ before ‘constexpr’
./src/ccutil/serialis.h:116:15: error: expected ‘(’ before ‘constexpr’
} else if constexpr (std::is_class_v) {
^~~~~~~~~
./src/ccutil/serialis.h:151:3: error: expected ‘}’ at end of input
}
^
./src/ccutil/serialis.h: In member function ‘bool tesseract::TFile::Serialize(const std::vector&)’:
./src/ccutil/serialis.h:166:15: error: expected ‘(’ before ‘constexpr’
} else if constexpr (std::is_same_v<T, std::string>) {
^~~~~~~~~
./src/ccutil/serialis.h:198:3: error: expected ‘}’ at end of input
}
^
In file included from ./src/ccutil/genericvector.h:22:0,
from ./src/ccstruct/fontinfo.h:25,
from ./src/ccstruct/ratngs.h:29,
from ./src/dict/dawg.h:33,
from ./src/dict/dawg_cache.h:23,
from src/api/baseapi.cpp:28:
./src/ccutil/helpers.h: In function ‘bool tesseract::Serialize(FILE*, const std::vector&)’:
./src/ccutil/helpers.h:252:13: error: expected ‘(’ before ‘constexpr’
} else if constexpr (std::is_class_v) {
^~~~~~~~~
src/api/baseapi.cpp:2380:1: error: expected ‘}’ at end of input
} // namespace tesseract
^
src/api/baseapi.cpp: At global scope:
src/api/baseapi.cpp:2380:1: error: expected ‘}’ at end of input
Makefile:4696: recipe for target 'src/api/libtesseract_la-baseapi.lo' failed
make[1]: *** [src/api/libtesseract_la-baseapi.lo] Error 1
make[1]: Leaving directory '/usr/local/tesseract'
Makefile:7801: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
I have tried the popst instatllation iinstruction that id supposed to solve this issue but no luck
make all-recursive
Making all in ccstruct
/bin/sh ../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -
I.. -I../ccutil -I../cutil -I../image -I../viewer -I/opt/local/
include -I/usr/local/include/leptonica -g -O2 -MT blobbox.lo -MD -MP -
MF .deps/blobbox.Tpo -c -o blobbox.lo blobbox.cpp
mv -f .deps/blobbox.Tpo .deps/blobbox.Plo
mv: rename .deps/blobbox.Tpo to .deps/blobbox.Plo: No such file or
directory
make[3]: *** [blobbox.lo] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2`enter code here`
Any help is appreciated.

Upgrade your compiler - current tesseract needs a modern compiler supporting c++17.

Related

This happened while following the gstreamer plugin example

First I downloaded git via git clone https://gitlab.freedesktop.org/gstreamer/gst-template.git command
And shell $ cd gst-template/gst-plugin/src
Completed entering the shell $ ../tools/make_element MyFilter command
And I did meson build in /gst-template, then ninja -C build, so the log came out as below.
ninja: Entering directory `build/'
[1/4] Compiling C object gst-plugin/libgstplugin.so.p/src_gstplugin.c.o
FAILED: gst-plugin/libgstplugin.so.p/src_gstplugin.c.o
cc -Igst-plugin/libgstplugin.so.p -Igst-plugin -I../gst-plugin -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include - fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -g -fPIC -pthread -DHAVE_CONFIG_H -MD -MQ gst- plugin/libgstplugin.so.p/src_gstplugin.c.o -MF gst-plugin/libgstplugin.so.p/src_gstplugin.c.o.d -o gst-plugin/libgstplugin.so.p/src_gstplugin.c.o -c ../gst- plugin/src/gstplugin.c
../gst-plugin/src/gstplugin.c:102:45: error: expected ‘)’ before string constant
GST_ELEMENT_REGISTER_DEFINE (myfirstplugin, "myfirstplugin", GST_RANK_NONE,
^~~~~~~~~~
../gst-plugin/src/gstplugin.c: In function ‘plugin_init’:
../gst-plugin/src/gstplugin.c:266:10: warning: implicit declaration of function ‘GST_ELEMENT_REGISTER’; did you mean ‘GST_ELEMENT_CAST’? [-Wimplicit- function-declaration]
return GST_ELEMENT_REGISTER (myfirstplugin, plugin);
^~~~~~~~~
GST_ELEMENT_CAST
../gst-plugin/src/gstplugin.c:266:32: error: ‘myfirstplugin’ undeclared (first use in this function); did you mean ‘GstPlugin’?
return GST_ELEMENT_REGISTER (myfirstplugin, plugin);
^~~~~~~~~~~~~
GstPlugin
../gst-plugin/src/gstplugin.c:266:32: note: each undeclared identifier is reported only once for each function it appears in
../gst-plugin/src/gstplugin.c:267:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
[2/4] Compiling C object gst-plugin/libgstaudiofilterexample.so.p/src_gstaudiofilter.c.o
FAILED: gst-plugin/libgstaudiofilterexample.so.p/src_gstaudiofilter.c.o
cc -Igst-plugin/libgstaudiofilterexample.so.p -Igst-plugin -I../gst-plugin -I/usr/include/gstreamer-1.0 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib- 2.0/include -I/usr/include/orc-0.4 -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -g -fPIC -pthread -DHAVE_CONFIG_H -MD -MQ gst-plugin/libgstaudiofilterexample.so.p/src_gstaudiofilter.c.o -MF gst-plugin/libgstaudiofilterexample.so.p/src_gstaudiofilter.c.o.d -o gst- plugin/libgstaudiofilterexample.so.p/src_gstaudiofilter.c.o -c ../gst-plugin/src/gstaudiofilter.c
../gst-plugin/src/gstaudiofilter.c:99:51: error: expected ‘)’ before string constant
GST_ELEMENT_REGISTER_DEFINE (audiofiltertemplate, "audiofiltertemplate",
^~~~~~~~~~~~~~
../gst-plugin/src/gstaudiofilter.c: In function ‘plugin_init’:
../gst-plugin/src/gstaudiofilter.c:311:10: warning: implicit declaration of function ‘GST_ELEMENT_REGISTER’; did you mean ‘GST_ELEMENT_CAST’? [-Wimplicit- function-declaration]
return GST_ELEMENT_REGISTER (audiofiltertemplate, plugin);
^~~~~~~~~
GST_ELEMENT_CAST
../gst-plugin/src/gstaudiofilter.c:311:32: error: ‘audiofiltertemplate’ undeclared (first use in this function); did you mean ‘GstAudioFilterTemplate’?
return GST_ELEMENT_REGISTER (audiofiltertemplate, plugin);
^~~~~~~~~~~~
GstAudioFilterTemplate
../gst-plugin/src/gstaudiofilter.c:311:32: note: each undeclared identifier is reported only once for each function it appears in
../gst-plugin/src/gstaudiofilter.c:312:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
ninja: build stopped: subcommand failed.
The installed gstreamer version doesn't match to the cloned version from the git repository.
Use gst-launch-1.0 --version to determine which version you have installed.
You need at least 1.18 to use the gst-plugin example.

Audio Policies error during Pixel Experience compilation

During the compilation of Pixel Experience (I use brunch, but the same error is occurred if I use lunch) I get an unusual error, something that has to do with Audio Polices.
I have tried reinstalling Ubuntu (I'm using 18.04.3) and doing everything from scratch, but the error remains.
The device tree should be fine, since I have compiled the same ROM before with the same device tree, kernel and vendor.
kirk#kirk-dev:~/android/system$ brunch aosp_clover-userdebug
including vendor/aosp/vendorsetup.sh
Trying dependencies-only mode on a non-existing device tree?
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
CUSTOM_VERSION=PixelExperience_clover-9.0-20190812-0627-UNOFFICIAL
TARGET_PRODUCT=aosp_clover
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=kryo
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.0.0-23-generic-x86_64-Ubuntu-18.04.3-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190705.003
OUT_DIR=/home/kirk/android/system/out
PRODUCT_SOONG_NAMESPACES= hardware/qcom/audio-caf/msm8998 hardware/qcom/display-caf/msm8998 hardware/qcom/media-caf/msm8998
============================================
============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=9
CUSTOM_VERSION=PixelExperience_clover-9.0-20190812-0627-UNOFFICIAL
TARGET_PRODUCT=aosp_clover
TARGET_BUILD_VARIANT=userdebug
TARGET_BUILD_TYPE=release
TARGET_ARCH=arm64
TARGET_ARCH_VARIANT=armv8-a
TARGET_CPU_VARIANT=generic
TARGET_2ND_ARCH=arm
TARGET_2ND_ARCH_VARIANT=armv8-a
TARGET_2ND_CPU_VARIANT=kryo
HOST_ARCH=x86_64
HOST_2ND_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-5.0.0-23-generic-x86_64-Ubuntu-18.04.3-LTS
HOST_CROSS_OS=windows
HOST_CROSS_ARCH=x86
HOST_CROSS_2ND_ARCH=x86_64
HOST_BUILD_TYPE=release
BUILD_ID=PQ3A.190705.003
OUT_DIR=/home/kirk/android/system/out
PRODUCT_SOONG_NAMESPACES= hardware/qcom/audio-caf/msm8998 hardware/qcom/display-caf/msm8998 hardware/qcom/media-caf/msm8998 hardware/qcom/audio-caf/msm8998 hardware/qcom/display-caf/msm8998 hardware/qcom/media-caf/msm8998
============================================
ninja: no work to do.
ninja: no work to do.
Environment variable PATH was modified (/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/out/soong/host/linux-x86/bin:/home/kirk/android/system/out/host/linux-x86/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin:/home/kirk/android/system/development/scripts:/home/kirk/android/system/prebuilts/devtools/tools:/home/kirk/android/system/external/selinux/prebuilts/bin:/home/kirk/android/system/prebuilts/misc/linux-x86/dtc:/home/kirk/android/system/prebuilts/misc/linux-x86/libufdt:/home/kirk/android/system/prebuilts/android-emulator/linux-x86_64:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin => /home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/out/soong/host/linux-x86/bin:/home/kirk/android/system/out/host/linux-x86/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin:/home/kirk/android/system/development/scripts:/home/kirk/android/system/prebuilts/devtools/tools:/home/kirk/android/system/external/selinux/prebuilts/bin:/home/kirk/android/system/prebuilts/misc/linux-x86/dtc:/home/kirk/android/system/prebuilts/misc/linux-x86/libufdt:/home/kirk/android/system/prebuilts/android-emulator/linux-x86_64:/home/kirk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin), regenerating...
Environment variable PATH was modified (/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/out/soong/host/linux-x86/bin:/home/kirk/android/system/out/host/linux-x86/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin:/home/kirk/android/system/development/scripts:/home/kirk/android/system/prebuilts/devtools/tools:/home/kirk/android/system/external/selinux/prebuilts/bin:/home/kirk/android/system/prebuilts/misc/linux-x86/dtc:/home/kirk/android/system/prebuilts/misc/linux-x86/libufdt:/home/kirk/android/system/prebuilts/android-emulator/linux-x86_64:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin => /home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/prebuilts/jdk/jdk9/linux-x86/bin:/home/kirk/android/system/out/soong/host/linux-x86/bin:/home/kirk/android/system/out/host/linux-x86/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin:/home/kirk/android/system/prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin:/home/kirk/android/system/development/scripts:/home/kirk/android/system/prebuilts/devtools/tools:/home/kirk/android/system/external/selinux/prebuilts/bin:/home/kirk/android/system/prebuilts/misc/linux-x86/dtc:/home/kirk/android/system/prebuilts/misc/linux-x86/libufdt:/home/kirk/android/system/prebuilts/android-emulator/linux-x86_64:/home/kirk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin), regenerating...
[539/961] including system/sepolicy/Android.mk ...
system/sepolicy/Android.mk:88: warning: Be careful when using the SELINUX_IGNORE_NEVERALLOWS flag. It does not work in user builds and using it will not stop you from failing CTS.
[961/961] including vendor/xiaomi/sdm660-common/Android.mk ...
build/make/core/Makefile:28: warning: overriding commands for target `/home/kirk/android/system/out/target/product/clover/vendor/lib64/hw/fingerprint.default.so'
build/make/core/base_rules.mk:412: warning: ignoring old commands for target `/home/kirk/android/system/out/target/product/clover/vendor/lib64/hw/fingerprint.default.so'
[ 0% 290/84433] target thumb C++: libaudiopolicymanager_32 <= vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp
FAILED: /home/kirk/android/system/out/target/product/clover/obj_arm/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/AudioPolicyManager.o
/bin/bash -c "PWD=/proc/self/cwd prebuilts/clang/host/linux-x86/clang-4691093/bin/clang++ -I frameworks/av/services -I frameworks/av/services/audioflinger -I system/media/audio_effects/include -I system/media/audio_utils/include -I frameworks/av/services/audiopolicy/common/include -I frameworks/av/services/audiopolicy/engine/interface -I frameworks/av/services/audiopolicy -I frameworks/av/services/audiopolicy/common/managerdefinitions/include -I vendor/qcom/opensource/audio/policy_hal -I /home/kirk/android/system/out/target/product/clover/obj_arm/SHARED_LIBRARIES/libaudiopolicymanager_intermediates -I /home/kirk/android/system/out/target/product/clover/gen/SHARED_LIBRARIES/libaudiopolicymanager_intermediates -I libnativehelper/include_jni \$(cat /home/kirk/android/system/out/target/product/clover/obj_arm/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/import_includes) -I system/core/include -I system/media/audio/include -I hardware/libhardware/include -I hardware/libhardware_legacy/include -I hardware/ril/include -I libnativehelper/include -I frameworks/native/include -I frameworks/native/opengl/include -I frameworks/av/include -isystem bionic/libc/include -isystem bionic/libc/kernel/uapi -isystem bionic/libc/kernel/uapi/asm-arm -isystem bionic/libc/kernel/android/scsi -isystem bionic/libc/kernel/android/uapi -c -fomit-frame-pointer -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith -no-canonical-prefixes -DNDEBUG -UDEBUG -fno-exceptions -Wno-multichar -O2 -g -fno-strict-aliasing -fdebug-prefix-map=/proc/self/cwd= -D__compiler_offsetof=__builtin_offsetof -Werror=int-conversion -Wno-reserved-id-macro -Wno-format-pedantic -Wno-unused-command-line-argument -fcolor-diagnostics -Wno-expansion-to-defined -Wno-zero-as-null-pointer-constant -fdebug-prefix-map=\$PWD/= -ffunction-sections -fdata-sections -fno-short-enums -funwind-tables -fstack-protector-strong -Wa,--noexecstack -D_FORTIFY_SOURCE=2 -Wstrict-aliasing=2 -Werror=return-type -Werror=non-virtual-dtor -Werror=address -Werror=sequence-point -Werror=date-time -Werror=format-security -nostdlibinc -msoft-float -march=armv8-a -mfloat-abi=softfp -mfpu=neon-fp-armv8 -mcpu=cortex-a53 -mfpu=neon-fp-armv8 -D__ARM_FEATURE_LPAE=1 -target arm-linux-androideabi -Bprebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/arm-linux-androideabi/bin -Wsign-promo -Wno-inconsistent-missing-override -Wno-null-dereference -D_LIBCPP_ENABLE_THREAD_SAFETY_ANNOTATIONS -Wno-thread-safety-negative -Wno-gnu-include-next -fvisibility-inlines-hidden -std=gnu++14 -mthumb -Os -fno-rtti -Wall -Werror -DPCM_OFFLOAD_ENABLED -DPCM_OFFLOAD_ENABLED_24 -DAUDIO_EXTN_FORMATS_ENABLED -DAAC_ADTS_OFFLOAD_ENABLED -DAUDIO_EXTN_HDMI_SPK_ENABLED -DAUDIO_EXTN_AFE_PROXY_ENABLED -DUSE_XML_AUDIO_POLICY_CONF -DCOMPRESS_VOIP_ENABLED -fPIC -D_USING_LIBCXX -DANDROID_STRICT -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -Werror=address-of-temporary -Werror=return-type -Wno-tautological-constant-compare -Wno-null-pointer-arithmetic -Wno-enum-compare -Wno-enum-compare-switch -MD -MF /home/kirk/android/system/out/target/product/clover/obj_arm/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/AudioPolicyManager.d -o /home/kirk/android/system/out/target/product/clover/obj_arm/SHARED_LIBRARIES/libaudiopolicymanager_intermediates/AudioPolicyManager.o vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp"
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2240:65: error: member reference type 'android::AudioMix *' is a pointer; did you mean to use '->'?
sp<AudioPolicyMix> policyMix = inputDesc->mPolicyMix.promote();
~~~~~~~~~~~~~~~~~~~~~^
->
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2240:66: error: no member named 'promote' in 'android::AudioMix'
sp<AudioPolicyMix> policyMix = inputDesc->mPolicyMix.promote();
~~~~~~~~~~~~~~~~~~~~~ ^
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2243:37: error: no member named 'mCbFlags' in 'android::AudioPolicyMix'
&& ((policyMix->mCbFlags & AudioMix::kCbFlagNotifyActivity) != 0)) {
~~~~~~~~~ ^
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2244:77: error: no member named 'mDeviceAddress' in 'android::AudioPolicyMix'
mpClientInterface->onDynamicPolicyMixStateUpdate(policyMix->mDeviceAddress,
~~~~~~~~~ ^
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2265:39: error: no member named 'mMixType' in 'android::AudioPolicyMix'
} else if (policyMix->mMixType == MIX_TYPE_PLAYERS) {
~~~~~~~~~ ^
vendor/qcom/opensource/audio/policy_hal/AudioPolicyManager.cpp:2266:42: error: no member named 'mDeviceAddress' in 'android::AudioPolicyMix'
address = policyMix->mDeviceAddress;
~~~~~~~~~ ^
6 errors generated.
[ 0% 299/84433] target C++: netutils-wrapper-1.0 <= system/netd/netutils_wrappers/NetUtilsWrapper-1.0.cpp
ninja: build stopped: subcommand failed.
09:31:14 ninja failed with: exit status 1
#### failed to build some targets (03:41 (mm:ss)) ####
I had the same error yesterday.
And I reverted the codes from here.
By now I haven't faced any issue.
Simply change every "policyMix" to "inputDesc->mPolicyMix" in AudioPolicyManager.cpp file.
[UPDATE]
PE just updated their code, resync the repo might help.

Build of "aiy-vision-dkms" fails

I am trying to install the Google AIY Vision Bonnet on Raspian Stretch 4.14.79-v7+, as explained in https://github.com/google/aiyprojects-raspbian/blob/aiyprojects/HACKING.md, but the build of aiy-vision-dkms fails with lots of errors.
I did all the steps while in a Python virtual environment, so defined:
# virtualenv and virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
I execute these commands:
echo "deb https://dl.google.com/aiyprojects/deb stable main" | sudo tee /etc/apt/sources.list.d/aiyprojects.list
wget -q -O - https://dl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
sudo apt-get update
sudo apt-get upgrade
sudo reboot
sudo apt-get install dkms
sudo apt install raspberrypi-kernel-headers
sudo reboot
sudo apt-get install -y aiy-vision-dkms
At this point the build fails:
pi#raspberrypi:/var/lib/dkms $ sudo apt-get install -y aiy-vision-dkms
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
aiy-dkms aiy-vision-firmware
The following NEW packages will be installed:
aiy-dkms aiy-vision-dkms aiy-vision-firmware
0 upgraded, 3 newly installed, 0 to remove and 9 not upgraded.
Need to get 0 B/2,488 kB of archives.
After this operation, 6,983 kB of additional disk space will be used.
Selecting previously unselected package aiy-dkms.
(Reading database ... 172760 files and directories currently installed.)
Preparing to unpack .../aiy-dkms_1.1-2_all.deb ...
Unpacking aiy-dkms (1.1-2) ...
Selecting previously unselected package aiy-vision-firmware.
Preparing to unpack .../aiy-vision-firmware_1.2-0_all.deb ...
Unpacking aiy-vision-firmware (1.2-0) ...
Selecting previously unselected package aiy-vision-dkms.
Preparing to unpack .../aiy-vision-dkms_1.1-1_all.deb ...
Unpacking aiy-vision-dkms (1.1-1) ...
Setting up aiy-dkms (1.1-2) ...
Loading new aiy-1.1 DKMS files...
It is likely that 4.14.79-v7+ belongs to a chroot's host
Building for 3.6-trunk-rpi, 4.14.79+ and 4.14.79-v7+
Building initial module for 3.6-trunk-rpi
Error! Bad return status for module build on kernel: 3.6-trunk-rpi (armv7l)
Consult /var/lib/dkms/aiy/1.1/build/make.log for more information.
Setting up aiy-vision-firmware (1.2-0) ...
Setting up aiy-vision-dkms (1.1-1) ...
Loading new aiy-vision-1.1 DKMS files...
It is likely that 4.14.79-v7+ belongs to a chroot's host
Building for 3.6-trunk-rpi, 4.14.79+ and 4.14.79-v7+
Building initial module for 3.6-trunk-rpi
Error! Bad return status for module build on kernel: 3.6-trunk-rpi (armv7l)
Consult /var/lib/dkms/aiy-vision/1.1/build/make.log for more information.
Below is /var/lib/dkms/aiy/1.1/build/make.log :
DKMS make.log for aiy-1.1 for kernel 3.6-trunk-rpi (armv7l)
Wed 30 Jan 22:03:20 CET 2019
make: Entering directory '/usr/src/linux-headers-3.6-trunk-rpi'
LD /var/lib/dkms/aiy/1.1/build/aiy/mfd/built-in.o
LD /var/lib/dkms/aiy/1.1/build/aiy/gpio/built-in.o
LD /var/lib/dkms/aiy/1.1/build/aiy/pwm/built-in.o
CC [M] /var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.o
CC [M] /var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.o
LD /var/lib/dkms/aiy/1.1/build/aiy/iio/adc/built-in.o
CC [M] /var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.o
CC [M] /var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.o
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:157:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:157:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:158:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:158:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:159:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:159:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:160:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:160:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:163:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:163:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:164:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:164:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:165:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:165:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:166:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:166:2: error: unknown field ‘info_mask_separate’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c: In function ‘aiy_adc_probe’:
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:176:2: error: implicit declaration of function ‘devm_iio_device_alloc’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.c:176:10: warning: assignment makes pointer from integer without a cast [enabled by default]
cc1: some warnings being treated as errors
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:313: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.o' failed
make[6]: *** [/var/lib/dkms/aiy/1.1/build/aiy/iio/adc/aiy-adc.o] Error 1
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/iio/adc' failed
make[5]: *** [/var/lib/dkms/aiy/1.1/build/aiy/iio/adc] Error 2
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/iio' failed
make[4]: *** [/var/lib/dkms/aiy/1.1/build/aiy/iio] Error 2
make[4]: *** Waiting for unfinished jobs....
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:27:18: error: field ‘chip’ has incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘to_aiy’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:58:28: warning: initialization from incompatible pointer type [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:58:28: warning: (near initialization for ‘aiy_pwm’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_calculate_8bit_settings’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:80:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘to_aiy’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:46:9: error: implicit declaration of function ‘gpiochip_get_data’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:46:27: warning: initialization makes pointer from integer without a cast [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:89:16: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_request’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:55:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:58:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_free’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:67:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:71:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:75:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: In function ‘aiy_io_mcu_write_direct’:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:86:2: error: implicit declaration of function ‘__i2c_transfer’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_direction_input’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:83:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: In function ‘aiy_io_mcu_wait_alive’:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:98:3: error: implicit declaration of function ‘msleep’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:87:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_get’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:100:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:104:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_set_impl’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:121:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_set’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:129:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:99:18: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_direction_output’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:139:2: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:144:15: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: In function ‘aiy_io_update_firmware’:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:174:2: error: implicit declaration of function ‘request_firmware_direct’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c: In function ‘aiy_gpio_probe’:
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:163:6: error: ‘struct gpio_chip’ has no member named ‘parent’
/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.c:175:2: error: implicit declaration of function ‘devm_gpiochip_add_data’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:106:4: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: At top level:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:304:34: error: array type has incomplete element type
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:305:2: error: field name not in record or union initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:305:2: error: (near initialization for ‘aiy_io_i2c_volatile_ranges’)
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:306:3: error: field name not in record or union initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:306:3: error: (near initialization for ‘aiy_io_i2c_volatile_ranges’)
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:307:2: error: field name not in record or union initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:307:2: error: (near initialization for ‘aiy_io_i2c_volatile_ranges’)
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:308:3: error: field name not in record or union initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:308:3: error: (near initialization for ‘aiy_io_i2c_volatile_ranges’)
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:311:21: error: variable ‘aiy_io_i2c_volatile_table’ has initializer but incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:312:2: error: unknown field ‘yes_ranges’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:312:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:312:2: warning: (near initialization for ‘aiy_io_i2c_volatile_table’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:313:2: error: unknown field ‘n_yes_ranges’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:313:18: error: negative width in bit-field ‘<anonymous>’
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:313:18: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:313:18: warning: (near initialization for ‘aiy_io_i2c_volatile_table’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:316:21: error: variable ‘aiy_io_i2c_regmap_config’ has initializer but incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:317:2: error: unknown field ‘reg_bits’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:317:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:317:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:318:2: error: unknown field ‘val_bits’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:318:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:318:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:319:2: error: unknown field ‘max_register’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:319:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:319:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:320:2: error: unknown field ‘volatile_table’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:320:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:320:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:321:2: error: unknown field ‘cache_type’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:321:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:321:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:322:2: error: unknown field ‘can_multi_write’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:322:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:322:2: warning: (near initialization for ‘aiy_io_i2c_regmap_config’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: In function ‘aiy_io_i2c_probe’:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:337:2: error: implicit declaration of function ‘devm_regmap_init_i2c’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:337:14: warning: assignment makes pointer from integer without a cast [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:372:29: error: ‘PLATFORM_DEVID_NONE’ undeclared (first use in this function)
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:372:29: note: each undeclared identifier is reported only once for each function it appears in
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:373:10: warning: passing argument 3 of ‘mfd_add_devices’ discards ‘const’ qualifier from pointer target type [enabled by default]
/usr/src/linux-headers-3.6-trunk-common/include/linux/mfd/core.h:100:12: note: expected ‘struct mfd_cell *’ but argument is of type ‘const struct mfd_cell *’
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c: At top level:
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:421:1: warning: data definition has no type or storage class [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:421:1: warning: type defaults to ‘int’ in declaration of ‘module_i2c_driver’ [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:421:1: warning: parameter names (without types) in function declaration [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_calculate_16bit_settings’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:134:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_request’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:141:32: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:144:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:144:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:148:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:150:7: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_free’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:157:32: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:160:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:160:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:165:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:168:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_write_setting’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:184:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:192:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:198:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_8bit_config’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:212:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:219:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:223:39: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:226:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_16bit_config’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:241:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:246:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:250:39: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:252:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:304:34: warning: ‘aiy_io_i2c_volatile_ranges’ defined but not used [-Wunused-variable]
/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.c:411:26: warning: ‘aiy_io_i2c_driver’ defined but not used [-Wunused-variable]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_config’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:263:36: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:267:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:270:9: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:288:3: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:292:9: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_enable’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:305:36: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:310:9: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:311:3: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:314:3: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:320:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_disable’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:328:36: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:331:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:331:2: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:337:15: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:337:54: error: dereferencing pointer to incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: At top level:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:341:21: error: variable ‘aiy_pwm_ops’ has initializer but incomplete type
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:342:2: error: unknown field ‘request’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:342:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:342:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:343:2: error: unknown field ‘free’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:343:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:343:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:344:2: error: unknown field ‘config’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:344:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:344:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:345:2: error: unknown field ‘enable’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:345:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:345:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:346:2: error: unknown field ‘disable’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:346:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:346:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:347:2: error: unknown field ‘owner’ specified in initializer
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:347:2: warning: excess elements in struct initializer [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:347:2: warning: (near initialization for ‘aiy_pwm_ops’) [enabled by default]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_probe’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:366:2: error: implicit declaration of function ‘pwmchip_add’ [-Werror=implicit-function-declaration]
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c: In function ‘aiy_pwm_remove’:
/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.c:380:2: error: implicit declaration of function ‘pwmchip_remove’ [-Werror=implicit-function-declaration]
cc1: some warnings being treated as errors
cc1: some warnings being treated as errors
cc1: some warnings being treated as errors
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:313: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.o' failed
make[5]: *** [/var/lib/dkms/aiy/1.1/build/aiy/gpio/gpio-aiy-io.o] Error 1
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/gpio' failed
make[4]: *** [/var/lib/dkms/aiy/1.1/build/aiy/gpio] Error 2
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:313: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.o' failed
make[5]: *** [/var/lib/dkms/aiy/1.1/build/aiy/mfd/aiy-io-i2c.o] Error 1
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/mfd' failed
make[4]: *** [/var/lib/dkms/aiy/1.1/build/aiy/mfd] Error 2
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:313: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.o' failed
make[5]: *** [/var/lib/dkms/aiy/1.1/build/aiy/pwm/pwm-aiy-io.o] Error 1
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy/pwm' failed
make[4]: *** [/var/lib/dkms/aiy/1.1/build/aiy/pwm] Error 2
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:443: recipe for target '/var/lib/dkms/aiy/1.1/build/aiy' failed
make[3]: *** [/var/lib/dkms/aiy/1.1/build/aiy] Error 2
/usr/src/linux-headers-3.6-trunk-common/Makefile:1208: recipe for target '_module_/var/lib/dkms/aiy/1.1/build' failed
make[2]: *** [_module_/var/lib/dkms/aiy/1.1/build] Error 2
Makefile:130: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make: *** [all] Error 2
make: Leaving directory '/usr/src/linux-headers-3.6-trunk-rpi'
Below is /var/lib/dkms/aiy-vision/1.1/build/make.log :
DKMS make.log for aiy-vision-1.1 for kernel 3.6-trunk-rpi (armv7l)
Wed 30 Jan 22:03:35 CET 2019
make: Entering directory '/usr/src/linux-headers-3.6-trunk-rpi'
LD /var/lib/dkms/aiy-vision/1.1/build/built-in.o
CC [M] /var/lib/dkms/aiy-vision/1.1/build/aiy-vision.o
/var/lib/dkms/aiy-vision/1.1/build/aiy-vision.c:32:33: fatal error: linux/gpio/consumer.h: No such file or directory
compilation terminated.
/usr/src/linux-headers-3.6-trunk-common/scripts/Makefile.build:313: recipe for target '/var/lib/dkms/aiy-vision/1.1/build/aiy-vision.o' failed
make[3]: *** [/var/lib/dkms/aiy-vision/1.1/build/aiy-vision.o] Error 1
/usr/src/linux-headers-3.6-trunk-common/Makefile:1208: recipe for target '_module_/var/lib/dkms/aiy-vision/1.1/build' failed
make[2]: *** [_module_/var/lib/dkms/aiy-vision/1.1/build] Error 2
Makefile:130: recipe for target 'sub-make' failed
make[1]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make: *** [all] Error 2
make: Leaving directory '/usr/src/linux-headers-3.6-trunk-rpi'
Do you have an idea what could I do?
Thanks
Sincerely
Under /lib/module I noticed there was an old 3.6 kernel called "3.6.trunk-rpi". The aiy installation was compiling also for this kernel. Suspecting that this would not work because of the too old kernel, I removed it with sudo apt-get --purge remove linux-headers-3.6-trunk-common.
Then the aiy-vision-dkms build was succesfull.

Regarding Memcached source code running issue

using the following link,tried running the memcached source code...
https://devcenter.heroku.com/articles/process-model
while running it,configure command works properly.
when i'm running the make command,it throws the following error....How to solve this issue?
syscon#syscon-OptiPlex-3020:~/Documents/work/memcached-1.4.5$ sudo make
make all-recursive
make[1]: Entering directory /home/syscon/Documents/work/memcached-1.4.5'
Making all in doc
make[2]: Entering directory/home/syscon/Documents/work/memcached-1.4.5/doc'
make all-am
make[3]: Entering directory /home/syscon/Documents/work/memcached-1.4.5/doc'
make[3]: Nothing to be done forall-am'.
make[3]: Leaving directory /home/syscon/Documents/work/memcached-1.4.5/doc'
make[2]: Leaving directory/home/syscon/Documents/work/memcached-1.4.5/doc'
make[2]: Entering directory /home/syscon/Documents/work/memcached-1.4.5'
gcc -std=gnu99 -DHAVE_CONFIG_H -I. -DNDEBUG -g -O2 -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached-memcached.o -MD -MP -MF .deps/memcached-memcached.Tpo -c -o memcached-memcached.otest -f 'memcached.c' || echo './'memcached.c
memcached.c: In function ‘complete_incr_bin’:
memcached.c:1023:16: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
c->binary_header.request.cas == ITEM_get_cas(it))) {
^
memcached.c:1044:13: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
c->cas = ITEM_get_cas(it);
^
memcached.c:1061:17: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
c->cas = ITEM_get_cas(it);
^
memcached.c: In function ‘process_bin_get’:
memcached.c:1193:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
rsp->message.header.response.cas = htonll(ITEM_get_cas(it));
^
memcached.c: In function ‘process_bin_update’:
memcached.c:1889:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
ITEM_set_cas(it, c->binary_header.request.cas);
^
memcached.c:1905:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
if (ITEM_get_cas(it) != 0) {
^
memcached.c: In function ‘process_bin_append_prepend’:
memcached.c:1949:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
ITEM_set_cas(it, c->binary_header.request.cas);
^
memcached.c: In function ‘process_bin_delete’:
memcached.c:2014:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
if (cas == 0 || cas == ITEM_get_cas(it)) {
^
memcached.c: In function ‘do_store_item’:
memcached.c:2127:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
else if (ITEM_get_cas(it) == ITEM_get_cas(old_it)) {
^
memcached.c:2127:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
memcached.c:2144:25: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
(unsigned long long)ITEM_get_cas(old_it),
^
memcached.c:2145:25: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
(unsigned long long)ITEM_get_cas(it));
^
memcached.c:2158:13: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
if (ITEM_get_cas(it) != 0) {
^
memcached.c:2160:17: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
if (ITEM_get_cas(it) != ITEM_get_cas(old_it)) {
^
memcached.c:2160:17: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
memcached.c:2202:13: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
c->cas = ITEM_get_cas(it);
^
memcached.c:2214:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
c->cas = ITEM_get_cas(it);
^
memcached.c: In function ‘process_get_command’:
memcached.c:2592:45: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
(unsigned long long)ITEM_get_cas(it));
^
memcached.c: In function ‘process_update_command’:
memcached.c:2751:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
ITEM_set_cas(it, req_cas_id);
^
memcached.c: In function ‘do_add_delta’:
memcached.c:2870:9: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
ITEM_set_cas(it, (settings.use_cas) ? get_cas_id() : 0);
^
memcached.c: In function ‘main’:
memcached.c:4630:13: error: variable ‘udp_port’ set but not used [-Werror=unused-but-set-variable]
int udp_port;
^
cc1: all warnings being treated as errors
make[2]: *** [memcached-memcached.o] Error 1
make[2]: Leaving directory/home/syscon/Documents/work/memcached-1.4.5'
make[1]: * [all-recursive] Error 1
make[1]: Leaving directory `/home/syscon/Documents/work/memcached-1.4.5'
make: * [all] Error 2
cd memcached-1.4.5/
wget http://johntech-resource.googlecode.com/files/fix-strict-aliasing.patch
patch memcached.h fix-strict-aliasing.patch
./configure
nano Makefile # add -Wno-error=unused-but-set-variable to CFLAGS.
make
make install
it helped for me.
Taken from
http://www.cnblogs.com/balaamwe/archive/2012/05/31/2528066.html

ntox86-ld: cannot find -lminiupnpc

I am trying to build a pjsip based project for blackberry 10,
but I get errors when compiling:
../src/navigator.cpp:63:6: warning: unused parameter 'type' [-Wunused-parameter]
/opt/bbndk/host_10_1_0_132/linux/x86/usr/bin/ntox86-ld: skipping incompatible /root/blackberry/fiume/lib/upnp/libminiupnpc.a when searching for -lminiupnpc
qcc -Vgcc_ntox86 -lang-c++ -Wl,-rpath-link,/opt/bbndk/target_10_1_0_1020/qnx6/x86/lib -Wl,-rpath-link,/opt/bbndk/target_10_1_0_1020/qnx6/x86/usr/lib -Wl,-rpath-link,/opt/bbndk/target_10_1_0_1020/qnx6/x86/usr/lib/qt4/lib -o o-g/fiume o-g/.obj/AddressBook.o o-g/.obj/AudioManager.o o-g/.obj/BpsPlatform.o o-g/.obj/ContactEditor.o o-g/.obj/ContactViewer.o o-g/.obj/Fiume.o o-g/.obj/PjCallback.o o-g/.obj/buddy.o o-g/.obj/callhistory.o o-g/.obj/callhistoryrecord.o o-g/.obj/debugger.o o-g/.obj/kuzaranda.o o-g/.obj/main.o o-g/.obj/navigator.o o-g/.obj/moc_AddressBook.o o-g/.obj/moc_AudioManager.o o-g/.obj/moc_BpsPlatform.o o-g/.obj/moc_ContactEditor.o o-g/.obj/moc_ContactViewer.o o-g/.obj/moc_Fiume.o o-g/.obj/moc_PjCallback.o o-g/.obj/moc_buddy.o o-g/.obj/moc_callhistory.o o-g/.obj/moc_callhistoryrecord.o o-g/.obj/moc_debugger.o o-g/.obj/moc_kuzaranda.o o-g/.obj/moc_navigator.o -L/opt/bbndk/target_10_1_0_1020/qnx6/x86/lib -L/opt/bbndk/target_10_1_0_1020/qnx6/x86/usr/lib -L/opt/bbndk/target_10_1_0_1020/qnx6/x86/usr/lib/qt4/lib -L/opt/bbndk/target_10_1_0_1020/qnx6//usr/lib/qt4/lib -L/root/blackberry/fiume/lib -L/root/blackberry/fiume/lib/upnp -lpjsua-i486-pc-nto-qnx8.0.0 -lpjsip-ua-i486-pc-nto-qnx8.0.0 -lpjsip-simple-i486-pc-nto-qnx8.0.0 -lpjsip-i486-pc-nto-qnx8.0.0 -lpjmedia-codec-i486-pc-nto-qnx8.0.0 -lpjmedia-videodev-i486-pc-nto-qnx8.0.0 -lpjmedia-i486-pc-nto-qnx8.0.0 -lpjmedia-audiodev-i486-pc-nto-qnx8.0.0 -lspeex-i486-pc-nto-qnx8.0.0 -lopencore-amrnb -lgsmcodec-i486-pc-nto-qnx8.0.0 -lilbccodec-i486-pc-nto-qnx8.0.0 -lg7221codec-i486-pc-nto-qnx8.0.0 -lpjnath-i486-pc-nto-qnx8.0.0 -lpjlib-util-i486-pc-nto-qnx8.0.0 -lresample-i486-pc-nto-qnx8.0.0 -lmilenage-i486-pc-nto-qnx8.0.0 -lsrtp-i486-pc-nto-qnx8.0.0 -lportaudio-i486-pc-nto-qnx8.0.0 -lpj-i486-pc-nto-qnx8.0.0 -lpjsdp-i486-pc-nto-qnx8.0.0 -lasound -lcrypto -lssl -lminiupnpc -lbbpim -laudio_manager -lbb -lbbsystem -lbbplatform -lscreen -L/opt/bbndk/target_10_1_0_1020/qnx6/usr/share/qt4/lib -lQtSensors -lbbcascades -lQtDeclarative -lQtScript -lQtSvg -lQtSql -lsqlite3 -lz -lQtXmlPatterns -lQtGui -lQtNetwork -lsocket -lQtCore -lm -lbps
make[2]: Leaving directory `/root/blackberry/fiume/x86'
make[1]: Leaving directory `/root/blackberry/fiume/x86'
/opt/bbndk/host_10_1_0_132/linux/x86/usr/bin/ntox86-ld: cannot find -lminiupnpc
cc: /opt/bbndk/host_10_1_0_132/linux/x86/usr/bin/ntox86-ld error 1
make[2]: *** [o-g/fiume] Error 1
make[1]: *** [debug] Error 2
make: *** [Simulator-Debug] Error 2``
**** Build Finished ****`
Why is libminiupnpc.a considered "incompatible", and what can I do about it?
It's probably that libminiupnpc.a was compiled for the ARM architecture, rather than the one you want (x86). Try recompiling it using qcc -Vgcc_ntox86