A PowerShell script to scan all EXE/DLL files in a directory and report missing dependencies (DLLs) that are not found anywhere in the search paths.
- Scans all
.exeand.dllfiles in a specified directory (optionally recursive) - Uses
llvm-readobjto extract dependencies - Reports only DLLs that are missing everywhere (not found locally or in system/PATH directories)
- Optionally excludes well-known system DLLs from missing check
- Supports progress display and detailed dependency output
- Can ignore PATH directories for stricter deployment validation
- Windows
- PowerShell
llvm-readobj.exe: LLVM tool
# 1) Basic: Only print missing DLLs (binary_path<TAB>missing_dll)
.\check_missing_deps_llvm.ps1 -root_dir "C:\my\bin"
# 2) With progress + detailed FOUND/MISSING per binary
.\check_missing_deps_llvm.ps1 -root_dir "C:\my\bin" -show_progress -show_dependencies
# 3) Stricter for deployment: Ignore PATH
.\check_missing_deps_llvm.ps1 -root_dir "C:\my\bin" -include_path_dirs:$false -show_dependencies
# 4) Specify llvm-readobj path directly
.\check_missing_deps_llvm.ps1 -root_dir "C:\my\bin" -llvm_readobj_path "C:\LLVM\bin\llvm-readobj.exe"-root_dir(required): Directory to scan for EXE/DLL files-llvm_readobj_path: Full path tollvm-readobj.exe(recommended)-recursive: Recursively scan subdirectories (default:$true)-exclude_system_dll: Exclude well-known system DLLs from missing check (default:$true)-show_progress: Show progress bar-show_dependencies: Show detailed dependencies (FOUND/MISSING) per binary-include_path_dirs: Include PATH directories when searching for DLLs (default:$true)
- If
llvm-readobj.exeis not found automatically, specify its path with-llvm_readobj_path.
See LICENSE.