Jump to content
  • 0

Running AD2 waveforms and python scripts with glibc 2.12


AndrewSM

Question

Hi I’m having trouble getting the waveforms sdk to work with my analog discovery II. I have the Adept runtime & Utilities installed with the FTDI drivers. The analog discovery shows up when I run this command:

$ dadutil enum

So I don’t think it’s a USB driver issue.

I’m using Red Hat Enterprise 6.10 with glibc 2.12, which may be the source of my problems. I’m trying to run python scripts from the example folder (with python 2.7). When running the latest versions of Adept 2 runtime, I would get errors from the libdwf.x.x.x about missing the required glibc 2.14 library. When running older versions of the runtime, I would not get those explicit errors but the script would never find and connect to the analog discovery.

Is there a way to run the scripts without updating glibc for the whole system? I’ve learned that just updating glibc is a disruptive change that could break other statically and dynamically linked binaries on the system (and this computer is used for a bunch of other stuff in our lab). I can download another version of glibc but I don’t know how to direct the libdwf.x.x.x to use it.

Thanks!

Andrew

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

For anyone else having a similar problem I found a workaround, though it's a little strange. 

Install the glibc 2.14 library in parallel in an alternate location. I put mine in a folder in the root directory.

The libdwf.x.x.x binary does not look for the glibc-2.12 library directly. It looks for a symbolic link file named libc.so.6 in directory /lib64. That file redirects libdwf.x.x.x to the glibc library. Now if you modify libc.so.6 to point to the new glibc library, you will have major problems because many systems in the computer rely on the current installed version 2.12 (I got a kernel panic and had to use a recovery disk to revert my changes...). Instead of modifying glibc.so.6, make a new symbolic link file in the same location that points to the new library. I named mine "glibc.so.7". But libdwf.x.x.x will still look for libc.so.6 instead of the new file so you have to open it in a hex editor and modify it. All I had to do was Ctrl-f for "libc.so.6" and change the 6 to a 7. After all that it works!

I think you could also modify a binary in the same way to get the waveform GUI application to work. Try running if from terminal and look at the errors to find whatever file is looking for the glibc library and modify it to look for libc.so.7 instead of libc.so.6. I havn't gotten around to it though since I just need to run python scripts. 

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...