Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

c/_cffi_backend.c:407:23: error: expression is not assignable #2753

Closed
akazadengr opened this issue Feb 19, 2023 · 16 comments
Closed

c/_cffi_backend.c:407:23: error: expression is not assignable #2753

akazadengr opened this issue Feb 19, 2023 · 16 comments
Labels

Comments

@akazadengr
Copy link

STDERR:

Traceback (most recent call last):
File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/usr/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 1312, in
main()
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/entrypoints.py", line 18, in main
ToolchainCL()
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 734, in init
getattr(self, command)(args)
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 153, in wrapper_func
build_dist_from_args(ctx, dist, args)
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/toolchain.py", line 212, in build_dist_from_args
build_recipes(build_order, python_modules, ctx,
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/build.py", line 504, in build_recipes
recipe.build_arch(arch)
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/recipe.py", line 983, in build_arch
self.build_compiled_components(arch)
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/recipe.py", line 994, in build_compiled_components
shprint(hostpython, 'setup.py', self.build_cmd, '-v',
File "/root/apkbuild/.buildozer/android/platform/python-for-android/pythonforandroid/logger.py", line 167, in shprint
for line in output:
File "/usr/local/lib/python3.8/dist-packages/sh-1.14.2-py3.8.egg/sh.py", line 953, in next
self.wait()
File "/usr/local/lib/python3.8/dist-packages/sh-1.14.2-py3.8.egg/sh.py", line 879, in wait
self.handle_command_exit_code(exit_code)
File "/usr/local/lib/python3.8/dist-packages/sh-1.14.2-py3.8.egg/sh.py", line 905, in handle_command_exit_code
raise exc
sh.ErrorReturnCode_1:

RAN: /root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/hostpython3/desktop/hostpython3/native-build/python3 setup.py build_ext -v

STDOUT:
/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/cffi/armeabi-v7a__ndk_target_21/cffi/setup.py:67: DeprecationWarning: The distutils package is deprecated and slated for removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
from distutils.core import Distribution
/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/cffi/armeabi-v7a__ndk_target_21/cffi/setup.py:68: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig instead
from distutils.sysconfig import get_config_vars
running build_ext
building '_cffi_backend' extension
creating build
creating build/temp.linux-x86_64-3.10
creating build/temp.linux-x86_64-3.10/c
/root/.buildozer/android/platform/android-ndk-r25b/toolchains/llvm/prebuilt/linux-x86_64/bin/clang -target armv7a-linux-androideabi21 -fomit-frame-pointer -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb -fPIC -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -target armv7a-linux-androideabi21 -fomit-frame-pointer -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -mthumb -fPIC -I/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/include -I/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/python3-libbz2-liblzma/armeabi-v7a__ndk_target_21/python3/Include -DANDROID -I/root/.buildozer/android/platform/android-ndk-r25b/toolchains/llvm/prebuilt/linux-x86_64/sysroot/usr/include -I/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/python-installs/mychatgpt/armeabi-v7a/include/python3.1 -fPIC -DUSE__THREAD -DHAVE_SYNC_SYNCHRONIZE -I/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/hostpython3/desktop/hostpython3/Include -I/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/hostpython3/desktop/hostpython3/native-build -c c/_cffi_backend.c -o build/temp.linux-x86_64-3.10/c/_cffi_backend.o
c/_cffi_backend.c:407:23: error: expression is not assignable
Py_REFCNT(ct) = 43;
~~~~~~~~~~~~~ ^
c/_cffi_backend.c:410:23: error: expression is not assignable
Py_REFCNT(ct) = 0;
~~~~~~~~~~~~~ ^
c/_cffi_backend.c:6136:5: warning: 'PyEval_InitThreads' is deprecated [-Wdeprecated-declarations]
PyEval_InitThreads();
^
/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/python3-libbz2-liblzma/armeabi-v7a__ndk_target_21/python3/Include/ceval.h:122:1: note: 'PyEval_InitThreads' has been explicitly marked deprecated here
Py_DEPRECATED(3.9) PyAPI_FUNC(void) PyEval_InitThreads(void);
^
/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/python3-libbz2-liblzma/armeabi-v7a__ndk_target_21/python3/Include/pyport.h:513:54: note: expanded from macro 'Py_DEPRECATED'
#define Py_DEPRECATED(VERSION_UNUSED) attribute((deprecated))
^
c/_cffi_backend.c:6196:9: warning: 'ffi_prep_closure' is deprecated [-Wdeprecated-declarations]
if (ffi_prep_closure(closure, &cif_descr->cif,
^
/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a/build/other_builds/libffi/armeabi-v7a__ndk_target_21/libffi/include/ffi.h:354:18: note: 'ffi_prep_closure' has been explicitly marked deprecated here
attribute((deprecated))
^
2 warnings and 2 errors generated.
error: command '/root/.buildozer/android/platform/android-ndk-r25b/toolchains/llvm/prebuilt/linux-x86_64/bin/clang' failed with exit code 1

STDERR:

Command failed: ['/usr/bin/python3', '-m', 'pythonforandroid.toolchain', 'create', '--dist_name=mychatgpt', '--bootstrap=sdl2', '--requirements=python3,kivy==2.1.0,https://github.com/kivymd/KivyMd/archive/master.zip,pygments,sdl2_ttf==2.0.15,pillow,docutils,plyer,requests,openssl,urllib3,chardet,idna,jwt,cryptography,pyparsing,firebase_admin,google-auth,cachetools,pyasn1,pyasn1_modules,rsa,google-api-python-client,google-cloud-storage,google-cloud-firestore,google-api-core,protobuf,cachecontrol,gcloud,google-cloud,httplib2,datetime,simplejson,pyrebase,oauth2client,requests_toolbelt,python_jwt,jwcrypto,deprecated,wrapt,requests==2.21.0,urllib3,chardet,certifi,idna,gcloud,,oauth2client,requests-toolbelt,protobuf_cpp,python-jwt,pycryptodome,httplib2,pyparsing,pyasn1,pyasn1_modules,rsa,jwcrypto==0.8,pandas,os,random,time,openai', '--arch=armeabi-v7a', '--copy-libs', '--color=always', '--storage-dir=/root/apkbuild/.buildozer/android/platform/build-armeabi-v7a', '--ndk-api=21', '--ignore-setup-py', '--debug']

ENVIRONMENT:

LANG = 'C.UTF-8'

LS_COLORS = 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.wim=01;31:.swm=01;31:.dwm=01;31:.esd=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:*.xspf=00;36:'

TERM = 'xterm-256color'

PATH = '/root/.buildozer/android/platform/apache-ant-1.9.4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin'

MAIL = '/var/mail/root'

LOGNAME = 'root'

USER = 'root'

HOME = '/root'

SHELL = '/bin/bash'

SUDO_COMMAND = '/usr/local/bin/buildozer android debug'

SUDO_USER = 'root'

SUDO_UID = '0'

SUDO_GID = '0'

PACKAGES_PATH = '/root/.buildozer/android/packages'

ANDROIDSDK = '/root/.buildozer/android/platform/android-sdk'

ANDROIDNDK = '/root/.buildozer/android/platform/android-ndk-r25b'

ANDROIDAPI = '31'

ANDROIDMINAPI = '21'

Buildozer failed to execute the last command

The error might be hidden in the log above this error

Please read the full log, and search for it before

raising an issue with buildozer itself.

In case of a bug report, please add a full log with log_level = 2

@akazadengr
Copy link
Author

Plz suggest me..

@misl6
Copy link
Member

misl6 commented Feb 22, 2023

develop branch of python-for-android requires an updated version of Cython.

Please upgrade your Cython version and feel free to re-open the issue if it persists.

@misl6 misl6 added the support label Feb 22, 2023
@github-actions
Copy link

👋 We use the issue tracker exclusively for bug reports and feature requests. However, this issue appears to be a support request. Please use our support channels to get help with the project.

If you're having trouble installing or using python-for-android, maybe you could be interested in our quickstart guide.

Let us know if this comment was made in error, and we'll be happy to reopen the issue.

@LazzaAU
Copy link

LazzaAU commented Mar 6, 2023

i have the same issue as this original post.
The log file can be seen here Error log

i'm on the latest cython
Name: Cython
Version: 0.29.33

and cffi version is
Name: cffi
Version: 1.15

And buildozer is on the latest version.
P4a is cloned and on the develop branch and kivy is cloned so i can run version v2.2.0.dev0
I have also done a buildozer appclean several times.

I'm stuck and not too sure where to go from here so any advise is welcome
Only known changes to buildozer that ive done recently is set target to 33 and then added the sdk path if that's of any relevance shrug

@nattokukun
Copy link

Hello LazzaAU,

I'm running Buildozer with Github Actions.
A similar error will occur if you try to execute within the next few days what was successful as of February 2023.
Below is an excerpt of the error.


jnius/jnius.c:54433:5: error: expression is not assignable
++Py_REFCNT(o);
^ ~~~~~~~~~~~~
jnius/jnius.c:54435:5: error: expression is not assignable
--Py_REFCNT(o);
^ ~~~~~~~~~~~~

Also, the requirements of Buildozer.spec are as follows.

requirements=python3,kivy==master,hostpython3,android,requests,urllib3,charset-normalizer==2.1.1,idna

Cython is not specified, so it seems to be the latest.

We are also at a dead end.
Has there been any progress since then?

In addition, we have translated and posted Japanese, so please forgive the sentences that are difficult to understand.

@LazzaAU
Copy link

LazzaAU commented May 31, 2023

I'm not sure sorry, I got the sh*T's with it so i taught myself kotlin compose instead and what took me 8 months in kivy to learn and achieve took me 3 months to learn and achieve in compose

@RobertFlatt
Copy link
Contributor

Cython is not specified, so it seems to be the latest.

Check this

https://github.com/Android-for-Python/Android-for-Python-Users#error-expression-is-not-assignable

@sunnyking
Copy link

We just hit this issue (buildozer==1.5.0, kivy==2.2, p4a version 20230521).
It seems that 20230521 version of p4a is broken.
Workaround is switching to p4a.branch = develop.

# if your buildozer.spec has the original template
sed -i 's/#p4a.branch = master/p4a.branch = develop/' buildozer.spec
buildozer appclean

@misl6
Copy link
Member

misl6 commented May 31, 2023

We just hit this issue (buildozer==1.5.0, kivy==2.2, p4a version 20230521). It seems that 20230521 version of p4a is broken. Workaround is switching to p4a.branch = develop.

# if your buildozer.spec has the original template
sed -i 's/#p4a.branch = master/p4a.branch = develop/' buildozer.spec
buildozer appclean

Yeah, the original author issue sounds a little bit different, but the one @nattokukun encountered is the same reported here: #2799, and fixed via #2800.

Current workaround is using the develop branch, but a new python-for-android release will likely land in two weeks. (we're cleaning-up and fixing some recipes)

@sunnyking
Copy link

Thanks! Yes our case is same as #2799.

@nattokukun
Copy link

Hello

Thank you for many posts.

I modified and executed "p4a.branch = develop" in buildozer.spec, but
The error content does not change.

Also, I tried to run buildozer appclean in Github Actions, but
An error occurs and it cannot be executed correctly.

The above does not solve the problem. I'm sorry.

@RobertFlatt
Copy link
Contributor

There are two issue with similar but not identical error messages, they have different resolutions.

According to your previous post #2753 (comment) I think you want the other resolution.

Same link as before https://github.com/Android-for-Python/Android-for-Python-Users#error-expression-is-not-assignable

@lightningorb
Copy link

p4a.branch = release-2022.12.20

@nattokukun
Copy link

hello Orb lightningorb

p4a.branch = release-2022.12.20

This solved it. thank you very much.

@Dsyboot
Copy link

Dsyboot commented Dec 29, 2023

p4a.branch = release-2022.12.20

THANK YOU SOO MUCH, I literally spent more than three days trying to compile this, and thanks to you I FINALLY DID IT :DD

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

No branches or pull requests

8 participants