I have a device with armel architecture, the file system is running on a VM (amd64 architecture) because the device has not enough space to install compile requirements. The OS is Debian 9 (stretch).
I download the Python, create the file config.site with following content (found it in another answer):
After that i run
./configure. At last with many options (that i found in different forums) like:
CONFIG_SITE=config.site ./configure --target=arm-linux --host=arm-linux-gnu "CFLAGS=-m32" "CXXFLAGS=-m32" "LDFLAGS=-m32" --build=armel --enable-ipv6
At this point, for what i need
With different settings it work, if it worked I run
If this was complete i run
checkinstall -D --install=no --fstrans=yes
If this running successful i install the .deb package on the another device with armel architecure, but if I run
python there comes an error:
bash: /usr/local/bin/python: cannot execute binary file.
Can you explain me why?
After the installation of the Debian package the output of
file /usr/local/bin/pythonis a symbolic link up to
The output of the last is:
python2.7: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, stripped
I found that the gcc use x86-64 to compile is that correct? Or i need to change that? When yes, how i change that?
I want to know more about compiling. Please write detailed answers and/or add source links to your answer.
Many thanks in advance!