kivy / kivy/python-for-android
Errors in zmq recipe
- Dominant language
- Python
- Stars
- 8.9k
- Forks
- 2k
- Avg merge
- 12h 20m
- Merged PRs (30d)
- 9
Description
### Versions
* Python: 3.9
* OS: MacOS 11.7
* Buildozer: 1.4.0
### Description
1-
Get error when issuing `buildozer -v android debug`. As it does not seem to be related to buildozer but to the recipe, I post the issue here.
```
In file included from src/mtrie.cpp:32:
./src/generic_mtrie_impl.hpp:52:46: error: ISO C++ requires the name after '::~' to be found in the same scope as the name before '::~' [-Werror,-Wdtor-name]
template zmq::generic_mtrie_t::~generic_mtrie_t ()
~~~~~~~~~~~~~~~~~~~~~~~^~
::generic_mtrie_t
```
After fixing that one (see below), I get:
```
STDOUT:
Making install in doc
make[2]: warning: -jN forced in submake: disabling jobserver mode.
make[2]: Nothing to be done for `install-exec-am'.
make[2]: warning: -jN forced in submake: disabling jobserver mode.
config/install-sh -c -d '/Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install/include'
config/install-sh -c -d '/Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install/lib/pkgconfig'
config/install-sh -c -d '/Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install/lib'
mkdir: /Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install: File exists
mkdir: /Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install: Not a directory
mkdir: /Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install: File exists
mkdir: /Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install/lib: Not a directory
mkdir: /Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/install: Not a directory
```
### buildozer.spec
Command:
```
buildozer -v android debug
```
Spec file:
```
requirements = pyzmq
```
1. Fix of 1st error
By editing `/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/src/generic_mtrie_impl.hpp`, changing line
```
template zmq::generic_mtrie_t::~generic_mtrie_t ()
```
to
```
template zmq::generic_mtrie_t::~generic_mtrie_t ()
```
2. Fix of 2nd error
By deleting file `/Users/yves/buildozer_dps/.buildozer/android/platform/build-arm64-v8a/build/other_builds/libzmq/arm64-v8a__ndk_target_21/libzmq/INSTALL` (I thought Unix was case-sensitive...?)
Contributor guide
Research direction
Reproduce the Android build with the stated Python 3.9 setup and `requirements = pyzmq` using `buildozer -v android debug`. Inspect the mentioned `generic_mtrie_impl.hpp` error and the generated libzmq `INSTALL` path to determine whether the recipe or its build tooling causes both failures. Done means the build completes without manually editing or deleting generated files.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, python
- Domain
- build-system, mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100