Message269617
> On Android cross-builds, it should be possible to reproduce the failure when the build system and the host system have the same PLATFORM_TRIPLET
I confirm that this is the case. The following backtrace is produced when cross-building and installing Android x86_64 on a linux x86_64:
PYTHONPATH=/sdcard/org.bitbucket.pyona/lib/python3.6 \
_PYTHON_PROJECT_BASE=/home/xavier/src/android/pyona/build/python3.6-android-21-x86_64 _PYTHON_HOST_PLATFORM=linux-x86_64 PYTHONPATH=/home/xavier/src/android/pyona/build/python3.6-android-21-x86_64/build/lib.linux-x86_64-3.6:/home/xavier/src/packages/android/cpython/Lib:/home/xavier/src/packages/android/cpython/Lib/plat-x86_64-linux-gnu python3.6 -Wi /sdcard/org.bitbucket.pyona/lib/python3.6/compileall.py \
-d /sdcard/org.bitbucket.pyona/lib/python3.6 -f \
-x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
/sdcard/org.bitbucket.pyona/lib/python3.6
Traceback (most recent call last):
File "/sdcard/org.bitbucket.pyona/lib/python3.6/compileall.py", line 17, in <module>
import struct
File "/sdcard/org.bitbucket.pyona/lib/python3.6/struct.py", line 13, in <module>
from _struct import *
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
make[3]: [Makefile:1270: libinstall] Error 1 (ignored)
'python3.6' is the native interpreter built from the same source tree as the source tree used for the cross-build. PATH has been set so that this native interpreter is run. Running this same command interactively with the native interpreter gives the same result:
[xavier@bilboquet python-native]$ PYTHONPATH=/home/xavier/src/android/pyona/build/python3.6-android-21-x86_64/build/lib.linux-x86_64-3.6:/home/xavier/src/packages/android/cpython/Lib:/home/xavier/src/packages/android/cpython/Lib/plat-x86_64-linux-gnu ./python3.6
Python 3.6.0a2+ (default:64ed56fbc5e7+, Jun 27 2016, 10:36:45)
[GCC 6.1.1 20160602] on linux
Type "help", "copyright", "credits" or "license" for more information.
Traceback (most recent call last):
File "/home/xavier/config/.pystartup", line 14, in <module>
import readline
ImportError: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
>>>
Cross-building and installing Android i686 on a linux x86_64 with the same Makefile does not cause the problem.
Adding -E to PYTHON_FOR_BUILD fixes the x86_64 install. |
|
Date |
User |
Action |
Args |
2016-06-30 18:47:38 | xdegaye | set | recipients:
+ xdegaye, doko, ncoghlan, rpetrov, Benedikt.Morbach |
2016-06-30 18:47:38 | xdegaye | set | messageid: <1467312458.8.0.812564179603.issue22724@psf.upfronthosting.co.za> |
2016-06-30 18:47:38 | xdegaye | link | issue22724 messages |
2016-06-30 18:47:38 | xdegaye | create | |
|