Monday, May 22, 2023

Cross compiling working well now, on to testing on the DE10-Nano

ISSUES IN MAKEFILE AND ODD UBUNTU SITUATION

The issue that caused the toolchain to generate soft floating point versions of the binary files was related to the makefile. I was using the text editor on the Ubuntu desktop image under VMware, altering the makefile and saving it, but the behavior of the make was not what I expected. I eventually entered a completely incorrect line that should have caused make to fail, but it didn't. 

I happened to open the makefile with vi rather than the Ubuntu text editor and found a back level version of the file without my saved changes. When I fixed this up in vi, the make successfully built the binaries in hard floating point format. No idea why I can't depend on the text editor but that is not a priority to understand. 

DYNAMIC LIBRARY VERSION MISMATCH BETWEEN LAPTOP AND DE10 BOARD

When I fired up my test program on the DE10-Nano board, it complained that the GLIBC version on the board's linux didn't match the version set up by my cross compile. I certainly could have invested time to update the libraries on the board, but that introduced risks and wasn't necessary.

STATIC BINARY RESOLVES THE PROBLEMS

I simply linked the binary with static libraries. Problem solved and I was able to actually begin testing my methods to check buttons and read other signals. 

No comments:

Post a Comment