Problems with freeze forte. [message #1869012] |
Mon, 29 July 2024 12:27 |
Vadim RTV Messages: 14 Registered: April 2023 |
Junior Member |
|
|
Regarding the problem "4diac project copying to other computer" you recommended switching to the freeze version.
I switched, the problems with 4diac under Windows were resolved, but problems arose with forte after switching from the test for Windows to the target for embedded Linux:
PLC based on Allwinner V3s.
The old version of forte 2.0.1 worked on it.
On the PC there was a configuration:
linux ububtu 18.04.6 and
arm-linux-gnueabihf-gcc/g++ version 6.3
Ubuntu GLIBC 2.27-3ubuntu1.6 version 2.27
After installing the freeze version of forte, when compiling it in this configuration, it displays many errors like:
/home/forte/src/core/iec61131_cast_helper.h:100:93: error: expected primary-expression before ',' token _of_subtype_v = std::conjunction_v<std::is_base_of<CommonSubtype, T>,
std::is_base_of<CommonSubtype, U>>;;
/home/forte/src/core/iec61131_cast_helper.h:111:58: error: wrong number of template arguments (2, should be 3)
I assumed that the problem was in the old version of gcc and Linux, installed Ubuntu 22.04.3 and gcc 11.4.
freeze forte compiled, but when launched on the controller it displays:
./forte
./forte: /lib/libm.so.6: version `GLIBC_2.27' not found (required by ./forte)
./forte: /lib/libm.so.6: version `GLIBC_2.29' not found (required by ./forte)
./forte: /lib/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by ./
forte)
./forte: /lib/libstdc++.so.6: version `GLIBCXX_3.4.29' not found (required by ./
forte)
./forte: /lib/libc.so.6: version `GLIBC_2.34' not found (required by ./forte)
At the same time, problems with cross-compilation of u-boot & linux were added: in the new version Ubuntu 22 they do not compile, they give errors:
U-boot:
arm-linux-gnueabihf-gcc: error: unrecognized -march target: armv5
arm-linux-gnueabihf-gcc: note: valid arguments are: armv4 armv4t armv5t armv5te armv5tej armv6 armv6j
armv6k armv6z armv6kz armv6zk armv6t2 armv6-m armv6s-m armv7 armv7-a armv7ve armv7-r armv7-m armv7e-m
armv8-a armv8.1-a armv8.2-a armv8.3-a armv8.4-a armv8.5-a armv8.6-a armv8-m.base armv8-m.main armv8-r
armv8.1-m.main iwmmxt iwmmxt2; did you mean 'armv4'?arm-linux-gnueabihf-gcc: error: missing argument
to '-march='
arm-linux-gnueabihf-gcc: error: missing argument to '-march='
Linux, there are a lot of errors of this type:
/tmp/ccJ0Ffzi.s:203: Error: selected processor does not support `dsb st' in ARM mode
Therefore, I had to create two Linux systems on the PC, Ubuntu versions 18 and 22, and compile freeze forte in 22 and copy the resulting executable file to Linux 18 and there create a boot image for controller, in which the RAMDisk contains forte, but at startup it gives an error on GLIBC.
How to solve these problems for freeze forte, u-boot, linux?
|
|
|
Powered by
FUDForum. Page generated in 0.04338 seconds