For C programs, I can use the glibc_version_header to force the code to link with GLIBC version symbols. And therefore I can build on one system and run on a system with a different version of glibc, this works find for a C program.
I’m trying to make this work for a go lang program.
I have modified all of the dependent code so that they contain versioned symbols
However when I run by go program I get
test22$ ./SDS/src/SDS_fabric/service/bin/x86/bare-metal/SDS_fabric
./SDS/src/SDS_fabric/service/bin/x86/bare-metal/SDS_fabric: /lib64/libc.so.6: version `GLIBC_2.28’ not found (required by ./SDS/src/SDS_fabric/service/bin/x86/bare-metal/SDS_fabric)
Questions
Do I need to add some CGO directive into my main.go function?
How can I find what symbol is creating the issue, and what code it is contained in?
Thanks
Paul