private void resolveExternalLibraries(Program program, List<Loaded<Program>> loadedPrograms,
			List<DomainFolder> searchFolders, List<LibrarySearchPath> fsSearchPaths,
			List<Option> options, TaskMonitor monitor, MessageLog log)
			throws CancelledException {
		ExternalManager extManager = program.getExternalManager();
		String[] extLibNames = extManager.getExternalLibraryNames();
		log.appendMsg("Linking the External Programs of '%s' to imported libraries..."
				.formatted(program.getName()));
		for (String externalLibName : extLibNames) {
			if (Library.UNKNOWN.equals(externalLibName)) {
				continue;
			}
			monitor.checkCancelled();
			try {
				Loaded<Program> match = findLibraryInLoadedList(loadedPrograms, externalLibName);
				if (match != null) {
					String path = match.getProjectFolderPath() + match.getName();
					extManager.setExternalPath(externalLibName, path, false);
					log.appendMsg("  [" + externalLibName + "] -> [" + path + "]");
				}
				else {
					boolean found = false;
					for (DomainFolder searchFolder : searchFolders) {
						DomainFile alreadyImportedLib = findLibraryInProject(externalLibName,
							searchFolder, fsSearchPaths, options, monitor);
						if (alreadyImportedLib != null) {
							extManager.setExternalPath(externalLibName,
								alreadyImportedLib.getPathname(), false);
							log.appendMsg("  [" + externalLibName + "] -> [" +
								alreadyImportedLib.getPathname() + "] (previously imported)");
							found = true;
							break;
						}
					}
					if (!found) {
						log.appendMsg("  [" + externalLibName + "] -> not found in project");
					}
				}
			}
			catch (InvalidInputException e) {
				Msg.error(this, "Bad library name: " + externalLibName, e);
			}
		}
		log.appendMsg("------------------------------------------------\n");
	}
Gets a {@link List} of library names that the given {@link Program} imports from

@param provider The {@link ByteProvider} to get the library names from
@param program The {@link Program} to get the library names from
@return A {@link List} of library names that the given {@link Program} imports from
Ghidra/Features/Base/src/main/java/ghidra/app/util/opinion/AbstractLibrarySupportLoader.java