code: def find_linked_dynamic_libraries():
      
      with TaskContext("Find the required dynamic libraries") as log:
          llvm = get_llvm()
          libs = required_link_libraries()
          resolved = []
          for libname in libs:
              if llvm:
                  fullpath = os.path.join(llvm, "lib", libname)
                  if os.path.isfile(fullpath):
                      resolved.append(fullpath)
                      log.info("Library `%s` found at %s" % (libname, fullpath))
                      continue
                  else:
                      log.info("%s does not exist" % fullpath)
              # Rely on the shell `locate` command to find the dynamic libraries.
              proc = subprocess.Popen(["locate", libname], stdout=subprocess.PIPE,
                                      stderr=subprocess.PIPE)
              stdout, stderr = proc.communicate()
              if proc.returncode == 0:
                  results = stdout.decode().strip().split("\n")
                  results = [r for r in results if r]
                  if results:
                      results.sort(key=len)
                      fullpath = results[0]
                      assert os.path.isfile(fullpath), "Invalid path: %r" % (fullpath,)
                      resolved.append(fullpath)
                      log.info("Library `%s` found at %s" % (libname, fullpath))
                      continue
                  else:
                      log.fatal("Cannot locate dynamic library `%s`" % libname)
              else:
                  log.fatal("`locate` command returned the following error:\n%s"
                            % stderr.decode())
          return resolved
docs: This function attempts to locate the required link libraries, and returns
      them as a list of absolute paths.