Why does cross-compilation for ARM not work. / Configure?

I know that the question is vague, but I didn’t quite know how to express what I am facing here: I am trying to cross-compile the Prolog implementation (especially SWI-Prolog) from sources . They use the GNU-Autoconf tools (which I am a complete novice to) to create sources, so I suggested that I could install triplets --hostand --buildto allow ARM cross-compilation, but that didn't work. This is the command I issued:

$ ./configure --build=i686-pc-linux-gnu --host=arm-linux-gnueabi

(... lots of checks ...)

checking for clock_gettime in -lrt... yes
checking for clock_gettime... yes
checking for pthread support for cpu clocks... configure: error: in `(...)/pl-6.6.5/src':
configure: error: cannot run test program while cross compiling
See `config.log' for more details

(The full output is inserted here )

I checked the config.log file , but I cannot figure out what exactly is missing. I understand that at this stage there may be several missing libraries or errors, but I cannot figure out where to start.

+4
source share
1 answer

The conclusion configuresays:

checking for pthread support for cpu clocks... configure: error: in `(...)/pl-6.6.5/src':
configure: error: cannot run test program while cross compiling

, , , - configure.ac AC_TRY_RUN - . , . -, . , , , configure:

checking whether mutex support recursive locking... ./configure: line 7307: ./conftest: cannot execute binary file

IMHO- , ( , README ).

, "" AC_TRY_RUN configure.ac, , configure.ac. .

, - Scratchbox2, .

+5

Source: https://habr.com/ru/post/1542176/


All Articles