mcpField
M
matlab-install-products

matlab-install-products

github.com/matlabクラウド・DevOps1.2k97 回インストール1 日前に更新
リポジトリ

matlab-install-products について

MATLAB Package Manager(mpm)を使った、MATLAB、Simulink、ツールボックス、サポートパッケージの再現可能なコマンドラインインストールを支援するスキルです。OS ごとの決められた手順に従い、実行前にリリース、保存先、製品を確認します。

主な機能

  1. 01mpm による MathWorks 製品のインストール
  2. 02スクリプト化・非対話型インストールへの対応
  3. 03OS ごとの固定された手順
  4. 04リリース入力ファイルと製品識別子の検証
  5. 05実行前のリリース・保存先・製品の確認

活用シーン

  1. 01CI/CD やコンテナでの MATLAB 導入
  2. 02コマンドラインからの MATLAB ツールボックス追加
  3. 03複数マシンへのインストールのスクリプト化
  4. 04既存 MATLAB 環境への製品追加

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-install-products

インストール後、Claude Code で/matlab-install-productsを入力して読み込まれたか確認します。

同梱ファイルmanifest.yamlreference/linux-macos-steps.md

詳細

MATLAB Package Manager(mpm)を使用した MATLAB 製品のインストール - 決定論的プロトコル

OS のコマンドラインから MATLAB Package Manager(mpm)を使用して MathWorks 製品をインストールするよう依頼された場合に、このスキルを使用します。

$ARGUMENTS

使用する場合

  • コマンドラインから MATLAB、Simulink、ツールボックス、またはサポートパッケージをインストールするようユーザーから依頼された場合
  • スクリプトによる再現可能な MATLAB のインストール(CI/CD、コンテナー、フリートのプロビジョニング)をユーザーが希望する場合
  • mpm、MATLAB Package Manager、または非対話型 MATLAB インストールについてユーザーから質問された場合
  • 既存の MATLAB インストールに mpm を使用して製品を追加する必要がある場合

使用しない場合

  • MATLAB のグラフィカルインストーラーまたは MathWorks のウェブサイトからのインストールをユーザーが希望する場合
  • MATLAB のライセンスまたはアクティベーションについて質問されている場合(別のワークフロー)
  • MATLAB 内から MATLAB アドオンを管理したい場合(アドオンマネージャーを使用)
  • MATLAB Engine API for Python、Java、または C++ のインストールが必要な場合(別の手順)

必ず守る決定性の契約(厳守)

  • Protocol の手順に順番どおり従ってください。手順や確認項目を追加しないでください。
  • OS に対応する正規のシェルのみを使用してください。シェルを切り替えないでください。
  • mpm / mpm.exe には絶対パスを使用してください。相対パスに依存しないでください。
  • ダウンロードの再試行は1 回までです。それ以外の場合は停止して、エラーを報告してください。
  • セキュリティソフトウェアが実行をブロックした場合は、停止してエスカレーションを指示してください。回避しないでください。

Safety Gate(Windows)— 必須、例外なし

停止してください。Windows の手順を実行する前に、このセクション全体を読んでください。

  1. いかなる理由があっても、 powershell.exe -Command を使用しないでください。PowerShell が認識する前に、Bash が $、バッククォート、引用符、配列、スクリプトブロックを壊します。これにより、unexpected EOF または構文エラーが必ず発生します。

  2. bash のヒアドキュメント(cat > file <<'EOF' ... EOF)やシェルのリダイレクト(echo ... > file、printf ... > file、>>)を使って、ファイルを作成しないでください。 引用符で囲んだヒアドキュメント(<<'PS1'、<<"EOF")も含まれます。例外を正当化しないでください。理由は変数展開ではありません(そのため、「区切り文字を引用符で囲んでいるので安全」という考えは誤りです)。この禁止が絶対である理由は、(a)Git Bash がファイルの作成時にパス、改行コード、エンコーディングを書き換え、.ps1 の解析を破損させること、(b)Write file ツールが、このプロトコルであらゆるファイルを作成する唯一の承認済み手段であることです。スクリプトも入力ファイルも同様です。安全なヒアドキュメントはありません。cat、echo、printf、>、>>、<< を使ってファイルを作ろうとしていることに気付いたら、停止して Write file ツールを使用してください。

  3. 必ず Write file ツールで .ps1 ファイルを書き込み、次のコマンドで実行してください。 powershell.exe -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File <absolute-script-path>

  4. CMD 専用の構文(if not exist、set VAR=、%USERPROFILE%)は出力しないでください。PowerShell の同等の構文(Test-Path、$env:USERPROFILE)を使用してください。

  5. すべての .ps1 ファイルの内容はASCII のみにしてください。全角ダッシュ(—)、半角ダッシュ(–)、曲線引用符、その他の非 ASCII 文字は使用しないでください。ファイルのエンコーディングでこれらの文字が保持されないと、PowerShell の解析エラー(文字列の終端の破損、閉じ波括弧がないエラー)が発生します。

powershell.exe -Command を入力しようとしている場合は、停止してください。このルールに違反しています。代わりに Write file ツールで .ps1 ファイルを作成してください。

Windows スクリプトの作成手順:

  • 誤り:powershell.exe -Command "$script = @'...(bash が $ とヒアドキュメントを破損します)
  • 誤り:cat > C:/Windows/Temp/script.ps1 <<'PS1' ... PS1(bash のヒアドキュメント。区切り文字の 'PS1' を引用符で囲んでいても禁止です)
  • 誤り:echo '...' > script.ps1 または printf '...' > script.ps1(シェルのリダイレクトは禁止です)
  • 正しい:一意の一時フォルダーを作成し、Write file ツールでその中に .ps1 ファイルを書き込んでから、-File で実行します

このプロトコルで許可される Bash ツールのコマンドは、mkdir -p(作業フォルダーの作成)、powershell.exe ... -File(スクリプトの実行)、test -f(成果物の確認)、rm -rf(後片付け)のみです。ファイルの内容を作成または書き込む Bash コマンドはすべて違反です。ファイルの内容には、必ず Write file ツールを使用してください。

一意の一時フォルダー:

  • ステップ 1 の前に、Bash ツールを使ってタイムスタンプ付きの作業フォルダーを作成します。
    • Windows:mkdir -p "C:/Users/<username>/AppData/Local/Temp/mpm-<YYYYMMDD-HHMMSS>"
    • Linux/macOS:mkdir -p "/tmp/mpm-<YYYYMMDD-HHMMSS>"
  • このフォルダーは、プロトコル全体を通じて、生成するすべてのスクリプトと入力ファイルに使用します
  • フォルダーは新規作成されるため、Write file ツールは事前に何も削除しなくても、その中にファイルを作成できます
  • 最後の後片付け手順で、フォルダー全体を削除します

Windows PowerShell 構文の注意事項:

  • 誤り:if not exist C:\Users\name\Downloads mkdir C:\Users\name\Downloads(CMD の構文)
  • 正しい:if (-not (Test-Path -LiteralPath 'C:\Users\name\Downloads')) { New-Item -ItemType Directory -Path 'C:\Users\name\Downloads' | Out-Null }

正確な製品名や識別子をユーザーに尋ねないでください。https://www.mathworks.com/products/mpm.html にある適切な mpm 入力ファイルを使って調べてください。 依存関係をインストールするかどうか、ユーザーに尋ねないでください。mpm が処理します。ユーザーが求めたものだけをインストールし、残りは mpm に任せてください。 ユーザーが MATLAB リリースの短縮名を入力した場合は、正しい正式名称を自動的に使用してください。例:25a は R2025a、25b は R2025b です。

必要な入力(不足している場合のみ確認)

  1. オペレーティングシステム(Windows、Linux、macOS)
  2. MATLAB リリース(例:R2025b)
  3. インストール先(絶対パス)
  4. 希望する製品/ツールボックス/サポートパッケージ

確認ルール

手順を実行する前に、必ずユーザーの選択内容を確認します。

  • リリース
  • インストール先フォルダー
  • 製品
  • サポートパッケージ

確認は1つのメッセージで行います。ユーザーは yes to all と返信することで、すべてを一度に確認できます。具体的な変更内容が返信された場合は、選択内容を更新して再度確認します。 確認する各値は、それぞれ別の行に表示します。 確認メッセージの最後に、次の内容を記載します:「必要な依存関係は mpm によって自動的にインストールされます。」

計画の表示(確認後、実行前)

ユーザーが入力内容を確認したら、コマンドを実行する前に、明確なインストール計画を表示します。対象の OS に合わせて以下のテンプレートを調整してください(Linux/macOS ではスラッシュと /tmp/ を使用し、.ps1 スクリプトへの参照と UAC に関する注記は省略します)。次の形式を使用してください。

Here's what I'll do:

Working folder: <C:\Users\<username>\AppData\Local\Temp\mpm-YYYYMMDD-HHMMSS>

Step 1 — Download mpm
  Check for mpm at <canonical mpm path>
  Download from <URL> if not present
  Script: <working folder>\mpm_download.ps1

Step 2 — Prepare input file
  Download release template for <release> from mathworks.com
  Set destination folder: <destination>
  Enable products: <comma-separated list>
  Add caller=agent to mark this as an agent-driven install
  Input file: <working folder>\mpm_input_<releaselower>.txt
  Script: <working folder>\mpm_prepare_input.ps1

Step 3 — Run installation
  Execute mpm install using the prepared input file
  <Windows only: note that elevated permissions (UAC prompt) will be required>

Step 4 — Verify
  Confirm MATLAB binary exists: <completion artifact path>
  Verify products via: <DESTINATION>/appdata/prodcontents.json
  <if support packages requested> Verify support packages via: <SUPPORTPKGROOT>/appdata/prodcontents.json
  Delete working folder: <working folder>
  <if MATLAB included> Show release notes: https://www.mathworks.com/help/matlab/release-notes.html?startrelease=<RELEASE>&endrelease=<RELEASE>

表示する前に、すべての環境変数とシェル固有のパスを絶対パスに解決します。作業フォルダー名に使用するタイムスタンプは計画を表示する時点で生成し、セッション全体で固定します。 ユーザーが計画を了承するまで、ステップ 1 を開始しないでください(「ok」、「go」、「yes」などの簡単な返信で十分です)。

公式ドキュメント:

実行スタイル

重要: ステップの実行中は、これから何をするかの説明や実況をしないでください。コマンドを実行し、結果(成功、失敗、エラー)のみを簡潔に報告してください。コメントは、確認、計画の表示、エラー報告にのみ使用します。

標準シェル(プロトコル全体で使用)

  • Windows:Windows PowerShell(powershell.exe)
  • Linux:bash / sh
  • macOS:zsh または bash(Apple silicon のみ。Intel Mac はサポートされていません。停止してユーザーに知らせてください)

実行前チェックリスト(Windows では各ステップの前に確認)

Windows でステップ 1~3 のコマンドを実行する前に、以下を確認してください。

  • PowerShell スクリプトは Write file ツールを使用して作成されている(-Command、ヒアドキュメント、echo/printf は使用しない)
  • スクリプトは powershell.exe ... -File <path> で実行される(-Command は使用しない)
  • bash コマンド内に PowerShell コードがインラインで記述されていない
  • .ps1 ファイルまたは入力ファイルへのリダイレクトに <<、>、>> を含む Bash コマンドがない(区切り文字を引用符で囲んだ場合でも、ヒアドキュメント/リダイレクトは禁止)

いずれかのチェックに失敗した場合は、停止し、Write file ツールを使用して書き直してください。

プロトコル(全4ステップ)

ステップ 1 - 標準パスに mpm があることを確認

標準の場所(使用前に絶対パスに解決):

  • Windows:<user home>\Downloads\mpm.exe
  • Linux:<user home>/Downloads/mpm
  • macOS:<user home>/Downloads/mpm

そのパスにファイルが存在する場合は、それを再利用します。存在しない場合は、以下からダウンロードします。

Windows(PowerShell)

必須:このスクリプトの作成には Write file ツールを使用してください。-Command またはヒアドキュメントは絶対に使用しないでください。

  1. Bash ツールを使用して作業フォルダーを作成します(計画の表示時に固定したタイムスタンプを使用)。
mkdir -p "C:/Users/<username>/AppData/Local/Temp/mpm-YYYYMMDD-HHMMSS"
  1. Write file ツールを使用して、以下の内容を <working folder>\mpm_download.ps1 に書き込みます。
param(
  [Parameter(Mandatory = $true)]
  [string]$Destination
)
if (Test-Path -LiteralPath $Destination) {
  Write-Host "mpm already present at $Destination"
} else {
  Write-Host "Downloading mpm from https://www.mathworks.com/mpm/win64/mpm - this may take a few minutes..."
  Invoke-WebRequest -Uri "https://www.mathworks.com/mpm/win64/mpm" -OutFile $Destination -UseBasicParsing
  if (-not (Test-Path -LiteralPath $Destination)) { throw "mpm download failed: $Destination" }
  Write-Host "mpm downloaded to $Destination"
}
  1. 実行します。
powershell.exe -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "<working folder>\mpm_download.ps1" -Destination "C:\Users\<username>\Downloads\mpm.exe"
Linux/macOS

シェルスクリプトの全容は reference/linux-macos-steps.md を参照してください。概要:/tmp/mpm-YYYYMMDD-HHMMSS に作業フォルダーを作成し、curl -fL -o を使って mpm を ~/Downloads/mpm にダウンロードし、chmod +x を実行します。

Step 2 - リリース入力ファイルをダウンロードして編集する

必ず、次の場所にあるリリーステンプレート入力ファイルを使用してください。 https://www.mathworks.com/products/mpm.html

要求されたリリースのテンプレート入力ファイルをダウンロードし、編集します。

  • destinationFolder のコメントを解除し、要求されたインストールパスを設定します。
  • 要求された製品とサポートパッケージの各 product.<Name> 行のコメントを解除します。
  • 入力ファイルに noJRE=true を追加します(destinationFolder の後の独立した行に記述します)。これにより、mpm が Java Runtime を同梱しなくなります。ユーザーが JRE のインストールを明示的に要求した場合に限り、この行を省略してください。
  • caller=agent の行を追加します(以下の「caller — インストールをエージェントによるものとして記録する」を参照)。
  • ユーザーが特定のアップデートを要求しない限り、updateLevel はコメントアウトしたままにします。
  • チェックサム行(?checksum=...)は編集しないでください。

ファイルを編集した後、次の点を確認します。

  • 入力ファイルが想定されるパスに存在する。
  • destinationFolder がユーザーの要求したインストールパスと完全に一致している。
  • 要求された各 product.<Name> 行のコメントが解除されている(先頭に # がない)。
  • 要求されていない製品はコメントアウトされたままになっている。
  • caller=agent の行が存在する。

確認に失敗した場合は、処理を停止してダウンロードを一度だけ再試行し、その後、再度編集して確認します。 それでも失敗する場合は、処理を停止してエラーを報告してください。

入力ファイルの形式では、製品とサポートパッケージの両方に product.<Name> エントリを使用します。 リリース入力ファイルで、正確な product.<Name> 識別子を調べてください。 製品識別子では、スペースの代わりにアンダースコアを使用します(例:「Signal Processing Toolbox」→ product.Signal_Processing_Toolbox)。

  • 生成した ps1 スクリプトの完全なパスを必ず表示してください
caller — インストールをエージェントによるものとして記録する(必須)

mpm の最近のバージョンでは、インストールを開始した主体を記録する caller 入力ファイルキーが使用できます。入力ファイルに独立した行として、固定値 agent を必ず追加してください。行は正確に caller=agent とします。

この値をそのまま使用してください。エージェント名、モデル名、その他の識別子に置き換えないでください。この値は、自動化エージェントがインストールを実行したことだけを記録し、エージェントによるインストールと手動によるインストールをテレメトリで区別できるようにします。

caller はコマンドラインではなく、入力ファイル内に設定してください。--inputfile を使用する場合、mpm は他のコマンドラインオプションを受け付けないため、caller の値は入力ファイルに記述する必要があります。mpm はこの値をインストールテレメトリに記録します(大文字に変換されます)。そのため、大文字と小文字は問いません。

Windows(PowerShell)

必須:Write file ツールを使ってこのスクリプトを作成してください。-Command やヒアドキュメントは絶対に使用しないでください。

  1. Write file ツールを使って、次の内容を <working folder>\mpm_prepare_input.ps1 に書き込みます。
param(
  [Parameter(Mandatory = $true)]
  [string]$Release,
  [Parameter(Mandatory = $true)]
  [string]$Destination,
  [Parameter(Mandatory = $true)]
  [string]$WorkingFolder,
  [Parameter(Mandatory = $true)]
  [string]$Products
)

Set-StrictMode -Version Latest
$ErrorActionPreference = "Stop"

# -File mode passes "a,b" as one string; split into an array
$ProductList = $Products -split ',' | ForEach-Object { $_.Trim() }

$releaseLower = $Release.ToLower()
$inputUrl  = "https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/products/mpm/mpm-input-${releaseLower}.txt"
$inputFile = Join-Path $WorkingFolder "mpm_input_${releaseLower}.txt"

Write-Host "Downloading input file from $inputUrl..."
Invoke-WebRequest -Uri $inputUrl -OutFile $inputFile -UseBasicParsing
if (-not (Test-Path -LiteralPath $inputFile)) {
  throw "Input file was not downloaded: $inputFile"
}

$lines = Get-Content -LiteralPath $inputFile

$lines = $lines | ForEach-Object {
  if ($_ -match '^\s*#?\s*destinationFolder=') {
    "destinationFolder=$Destination"
    "noJRE=true"
    "caller=agent"
  }
  else {
    $_
  }
}

foreach ($product in $ProductList) {
  $escaped = [Regex]::Escape($product)
  $lines = $lines | ForEach-Object {
    if ($_ -match "^\s*#\s*$escaped\s*$") {
      $product
    }
    else {
      $_
    }
  }
}

Set-Content -LiteralPath $inputFile -Value $lines -Encoding UTF8

$lines = Get-Content -LiteralPath $inputFile

$destinationLine = $lines | Where-Object { $_ -match '^destinationFolder=' } | Select-Object -First 1
if (-not $destinationLine) { throw "destinationFolder line not found in $inputFile" }
if ($destinationLine -ne "destinationFolder=$Destination") { throw "destinationFolder mismatch: $destinationLine" }

$callerLine = $lines | Where-Object { $_ -match '^caller=' } | Select-Object -First 1
if ($callerLine -ne "caller=agent") { throw "caller line missing or incorrect: $callerLine" }

$uncommentedProducts = $lines | Where-Object { $_ -match '^\s*product\.' }
$unexpectedProducts  = $uncommentedProducts | Where-Object { $ProductList -notcontains $_ }
if ($unexpectedProducts) { throw "Unrequested products enabled: $($unexpectedProducts -join ', ')" }

foreach ($product in $ProductList) {
  if (-not ($lines -contains $product)) { throw "Requested product not enabled: $product" }
}

Write-Host "Input file ready: $inputFile"

注:このスクリプトは入力ファイルを <working folder>\mpm_input_<releaselower>.txt に書き込むため、作業フォルダーをクリーンアップすると自動的に削除されます。スクリプトの完了時に入力ファイルのパスが報告されます。

  1. 実行します(実際の作業フォルダー、リリース、インストール先、製品識別子に置き換えてください)。
powershell.exe -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "<working folder>\mpm_prepare_input.ps1" -Release "R2025b" -Destination "C:\MATLAB\R2025b" -WorkingFolder "<working folder>" -Products "product.MATLAB,product.Simulink"
Linux/macOS

完全なシェルスクリプトについては、reference/linux-macos-steps.md を参照してください。概要:curl でリリース入力ファイルをダウンロードし、sed で destinationFolder を設定して、noJRE=true と caller=agent の行を追加し、要求された製品のコメントを解除した後、すべての編集内容を確認します。

  • まだ生成ファイルを削除しないでください。クリーンアップは Step 3 の後に行います。
Step 3 - インストールコマンドを実行して完了を確認する

重要:

  • --inputfile を使用する場合、他の mpm オプションを渡さないでください。caller の値はコマンドラインではなく、Step 2 の入力ファイル内に設定します(caller=agent)。mpm は --inputfile と他のオプションを組み合わせて指定すると受け付けません。
  • Windows では昇格が必要です。昇格した状態で実行するには Start-Process -Verb RunAs を使用してください。
  • 実行する前に、展開後の完全なコマンドを必ず表示してください。
  • 以下のスニペット内のリリース、作業フォルダー、インストール先は、実際の値に置き換えてください。
Windows

必須:この手順では、Write file ツールを使用して .ps1 スクリプトを作成してください。-Command や heredoc は絶対に使用しないでください。その後、powershell.exe ... -File <path> で実行します。

Write file ツールを使用して、以下を <working folder>\mpm_install.ps1 に書き込み、-File で実行します。

param(
  [Parameter(Mandatory = $true)]
  [string]$MpmPath,
  [Parameter(Mandatory = $true)]
  [string]$InputFile
)

$installArgs = @(
  "install",
  "--inputfile=$InputFile"
)

$display = '"' + $MpmPath + '" install ' + ('--inputfile="' + $InputFile + '"')
Write-Host "Running: $display"

Start-Process -FilePath $MpmPath -ArgumentList $installArgs -Verb RunAs -Wait

実行します。

powershell.exe -NoLogo -NoProfile -NonInteractive -ExecutionPolicy Bypass -File "<working folder>\mpm_install.ps1" -MpmPath "C:\Users\<username>\Downloads\mpm.exe" -InputFile "<working folder>\mpm_input_<releaselower>.txt"
Linux/macOS

reference/linux-macos-steps.md を参照してください。概要:mpm install --inputfile=<path> を直接実行します(昇格は不要です)。caller=agent の行は、ステップ 2 で入力ファイルにすでに記載されています。

ステップ 4 - 検証

このステップで完了を判定します。必須です。 mpm プロセスが終了するまで待ちます。完了するまで先に進まないでください。 完了を示すファイルが存在しない場合は、停止して失敗を報告します。ステップ 3 を再実行しないでください。

完了を示すファイル(入力ファイルで設定した保存先フォルダーを使用してください):

  • Windows: <DESTINATION>\bin\matlab.exe
  • Linux: <DESTINATION>/bin/matlab
  • macOS: <DESTINATION>/Contents/MacOS/MATLAB

Bash ツールで test -f を使用して存在を確認してください。この確認に powershell.exe -Command は使用しないでください。

test -f "<DESTINATION>/bin/matlab.exe" && echo "VERIFIED" || echo "NOT FOUND"
項目ごとの検証

MATLAB バイナリの存在を確認したら、要求された各項目がインストールされていることを検証します。製品とサポートパッケージは別々の場所に保存され、それぞれ個別の prodcontents.json ファイルがあります。一方に属する項目を、もう一方の場所で確認しないでください。

製品(mpm 識別子に Support_Package が含まれない項目):

  • Read ツールを使用して <DESTINATION>/appdata/prodcontents.json を読み取ります。
  • これは JSON オブジェクトです。キーは、バージョンおよびプラットフォームのトークンを含む製品名です(例:"Simulink 25.1 win64")。
  • 要求された各製品について、製品の表示名で始まるキーが存在することを確認します(product. のプレフィックスを削除し、アンダースコアをスペースに置き換えます)。たとえば、product.Signal_Processing_Toolbox は、Signal Processing Toolbox で始まるキーに一致します。

サポートパッケージ(mpm 識別子に Support_Package が含まれる項目):

  • プラットフォームに基づいて、サポートパッケージのルートを特定します。
    • Windows: C:\ProgramData\MATLAB\SupportPackages\<RELEASE>
    • Linux: /usr/local/MATLAB/SupportPackages/<RELEASE>
    • macOS: ~/Library/Application Support/MathWorks/MATLAB/SupportPackages/<RELEASE>
  • Read ツールを使用して <SUPPORTPKGROOT>/appdata/prodcontents.json を読み取ります。
  • ファイルが存在しない場合、サポートパッケージのインストールは失敗しています。失敗を報告してください。
  • 要求された各サポートパッケージについて、一致するキーが存在することを確認します(製品と同じ名前の対応付けを使用します)。

各項目について、確認済みまたは見つかりませんと報告します。見つからない項目がある場合は、停止して失敗した項目を報告してください。

すべての項目の確認後、Bash ツールを使用して作業フォルダー全体とその内容を削除します。

rm -rf "C:/Users/<username>/AppData/Local/Temp/mpm-YYYYMMDD-HHMMSS"
リリースノートへのリンク

インストールに MATLAB(基本製品)が含まれていた場合に限り、検証とクリーンアップの成功後にリリースノートへのリンクを提示します。

https://www.mathworks.com/help/matlab/release-notes.html?startrelease=<RELEASE>&endrelease=<RELEASE>&rntext=&groupby=release&sortby=descending&searchHighlight=

<RELEASE> をインストールしたリリース(例:R2025b)に置き換えます。見やすいように、リンクは単独の行に表示します。

このリンクから MATLAB R2025b リリースノートをご覧ください。 https://www.mathworks.com/help/matlab/release-notes.html?startrelease=R2025b&endrelease=R2025b&rntext=&groupby=release&sortby=descending&searchHighlight=

ユーザーが MATLAB なしでツールボックスまたはサポートパッケージのみをインストールした場合は、このリンクを表示しないでください。

よくあるエラー

  • ErrorCode::IncompatibleProduct(「選択した製品には互換性がありません」):保存先フォルダーに既存の MATLAB インストールがある可能性が高いです。ユーザーにその旨を伝え、空の保存先フォルダーを選ぶよう依頼してください。

主な関数とパターン

コマンド/パターン目的
mpm install --inputfile=<file>入力ファイルで定義された製品をインストールします
mpm_input_<release>.txtmathworks.com から入手するリリース固有の入力ファイルテンプレート
product.<Name>製品およびサポートパッケージの入力ファイルエントリー形式
destinationFolder=<path>インストール先を設定する入力ファイルのディレクティブ
caller=agentインストールがエージェントによって実行されることを示す入力ファイルのディレクティブ
Start-Process -Verb RunAs -WaitWindows で昇格した権限で実行します(UAC)
Invoke-WebRequest -OutFilePowerShell でファイルをダウンロードします
curl -fL -oLinux/macOS でファイルをダウンロードします

注意事項

  • mpm は必要な依存関係を自動的にインストールします。
  • ライセンスとアクティベーションは別々のワークフローです。インストールの最後に、ライセンスやアクティベーションについてユーザーに尋ねないでください。
  • 必ず次の URL からリリース用の入力ファイルを使用してください: https://www.mathworks.com/products/mpm.html

Copyright 2026 The MathWorks, Inc.


コメント