#Windows prerequisites
This page is for optional Windows tools that improve conversion quality.
Make Markdown Library itself is installed with the .whl file. These tools are separate system programs. You do not need all of them to start.
#What should I install?
| Tool | Required? | Use it when |
|---|---|---|
| Python | Yes | Required to run Make Markdown Library. |
| Tesseract OCR | Recommended for scanned PDFs/images | Your PDFs are scans or your images contain text. |
| LibreOffice | Optional | You want better LiteParse coverage for Word, PowerPoint, Excel, or OpenDocument files. |
| ImageMagick | Optional | You process image formats or image-heavy documents. |
lit CLI |
Optional | You want manual LiteParse debugging or CLI-based complexity checks. |
If you mainly use normal PDFs, Word documents, Markdown, and text files, install the tool first and run doctor. Add the optional tools only when you need them.
#1. Check the environment
Run:
py -m make_markdown_library doctorThe important idea is that doctor is advisory. Missing optional tools do not necessarily mean the tool is broken.
#2. Install Tesseract OCR
Install Tesseract if you want OCR for scanned PDFs or images containing text.
Run:
winget install -e --id UB-Mannheim.TesseractOCRClose PowerShell, open a new PowerShell window, then check:
tesseract --versionThen run:
py -m make_markdown_library doctorIf tesseract is not found after installation, check whether this file exists:
Test-Path "C:\Program Files\Tesseract-OCR\tesseract.exe"If that returns True, add the folder to your user PATH:
$tesseractPath = "C:\Program Files\Tesseract-OCR"
$currentPath = [Environment]::GetEnvironmentVariable("Path", "User")
if ($currentPath -notlike "*$tesseractPath*") {
[Environment]::SetEnvironmentVariable("Path", "$currentPath;$tesseractPath", "User")
Write-Host "Added to User PATH: $tesseractPath"
} else {
Write-Host "Already in User PATH: $tesseractPath"
}Close PowerShell and open a new one before checking again.
#3. Install LibreOffice
Install LibreOffice if you want better LiteParse coverage for Office/OpenDocument conversion.
Run:
winget install -e --id TheDocumentFoundation.LibreOfficeClose PowerShell, open a new PowerShell window, then check:
soffice --versionIf that command does not work but LibreOffice is installed, Make Markdown Library also checks the common Windows install location:
C:\Program Files\LibreOffice\program\soffice.comSo a full LibreOffice desktop install can still be detected even when the folder is not on PATH.
#4. Install ImageMagick
Install ImageMagick only if you process image formats or image-heavy documents.
Run:
winget install -e --id ImageMagick.ImageMagickClose PowerShell, open a new PowerShell window, then check:
magick -versionImportant: Windows also has a built-in convert.exe. That is not ImageMagick. Make Markdown Library checks for magick, not Windows convert.exe.
#5. Check the LiteParse lit CLI
The LiteParse Python package may install a lit command. It is useful for manual debugging and some CLI-based complexity checks, but it is not required for normal conversion through Python.
Check:
lit --helpIf lit is missing but LiteParse is installed, check the user Scripts folder:
Get-ChildItem "$env:APPDATA\Python\Python313\Scripts\lit*"If lit.exe is there but PowerShell cannot find it, add the folder to your user PATH:
$userScripts = "$env:APPDATA\Python\Python313\Scripts"
$currentPath = [Environment]::GetEnvironmentVariable("Path", "User")
if ($currentPath -notlike "*$userScripts*") {
[Environment]::SetEnvironmentVariable("Path", "$currentPath;$userScripts", "User")
Write-Host "Added to User PATH: $userScripts"
} else {
Write-Host "Already in User PATH: $userScripts"
}Close PowerShell and open a new one before checking again.
#Recommended setup
For most Windows users, the practical setup is:
- Install Python.
- Install Make Markdown Library from the
.whlfile. - Install Tesseract if you need OCR.
- Install LibreOffice only if Office/OpenDocument conversion through LiteParse matters.
- Install ImageMagick only if image conversion matters.
Use doctor after each change:
py -m make_markdown_library doctor