deploy: 41fb29eba46f2ff275a6564d2ddb81f18c038993

This commit is contained in:
crazywhalecc 2025-10-21 11:05:39 +00:00
parent d9b18d1437
commit ca11cfbf68
74 changed files with 150 additions and 110 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,7 @@ import{_ as i,c as a,o as e,ah as t}from"./chunks/framework.Bhsyh9kO.js";const E
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p>The most important field here is <code>type</code>. Currently, the types it supports are:</p><ul><li><code>url</code>: Directly use URL to download, for example: <code>https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz</code>.</li><li><code>ghrel</code>: Use the GitHub Release API to download, download the artifacts uploaded from the latest version released by maintainers.</li><li><code>ghtar</code>: Use the GitHub Release API to download. Different from <code>ghrel</code>, <code>ghtar</code> is downloaded from the <code>source code (tar.gz)</code> in the latest Release of the project.</li><li><code>ghtagtar</code>: Use GitHub Release API to download. Compared with <code>ghtar</code>, <code>ghtagtar</code> can find the latest one from the <code>tags</code> list and download the source code in <code>tar.gz</code> format (because some projects only use <code>tag</code> release version).</li><li><code>bitbuckettag</code>: Download using BitBucket API, basically the same as <code>ghtagtar</code>, except this one applies to BitBucket.</li><li><code>git</code>: Clone the project directly from a Git address to download sources, applicable to any public Git repository.</li><li><code>filelist</code>: Use a crawler to crawl the Web download site that provides file index, and get the latest version of the file name and download it.</li><li><code>custom</code>: If none of the above download methods are satisfactory, you can write <code>custom</code>, create a new class under <code>src/SPC/store/source/</code>, extends <code>CustomSourceBase</code>, and write the download script yourself.</li></ul><h2 id="source-json-common-parameters" tabindex="-1">source.json Common parameters <a class="header-anchor" href="#source-json-common-parameters" aria-label="Permalink to source.json Common parameters"></a></h2><p>Each source file in source.json has the following params:</p><ul><li><code>license</code>: the open source license of the source code, see <strong>Open Source License</strong> section below</li><li><code>type</code>: must be one of the types mentioned above</li><li><code>path</code> (optional): release the source code to the specified directory instead of <code>source/{name}</code></li><li><code>provide-pre-built</code> (optional): whether to provide precompiled binary files. If <code>true</code>, it will automatically try to download precompiled binary files when running <code>bin/spc download</code></li></ul><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>The <code>path</code> parameter in <code>source.json</code> can specify a relative or absolute path. When specified as a relative path, the path is based on <code>source/</code>.</p></div><h2 id="download-type-url" tabindex="-1">Download type - url <a class="header-anchor" href="#download-type-url" aria-label="Permalink to Download type - url"></a></h2><p>URL type sources refer to downloading files directly from the URL.</p><p>The parameters included are:</p><ul><li><code>url</code>: The download address of the file, such as <code>https://example.com/file.tgz</code></li><li><code>filename</code> (optional): The file name saved to the local area. If not specified, the file name of the url will be used.</li></ul><p>Example (download the imagick extension and extract it to the extension storage path of the php source code):</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p>The most important field here is <code>type</code>. Currently, the types it supports are:</p><ul><li><code>url</code>: Directly use URL to download, for example: <code>https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz</code>.</li><li><code>pie</code>: Download PHP extensions from Packagist using the PIE (PHP Installer for Extensions) standard.</li><li><code>ghrel</code>: Use the GitHub Release API to download, download the artifacts uploaded from the latest version released by maintainers.</li><li><code>ghtar</code>: Use the GitHub Release API to download. Different from <code>ghrel</code>, <code>ghtar</code> is downloaded from the <code>source code (tar.gz)</code> in the latest Release of the project.</li><li><code>ghtagtar</code>: Use GitHub Release API to download. Compared with <code>ghtar</code>, <code>ghtagtar</code> can find the latest one from the <code>tags</code> list and download the source code in <code>tar.gz</code> format (because some projects only use <code>tag</code> release version).</li><li><code>bitbuckettag</code>: Download using BitBucket API, basically the same as <code>ghtagtar</code>, except this one applies to BitBucket.</li><li><code>git</code>: Clone the project directly from a Git address to download sources, applicable to any public Git repository.</li><li><code>filelist</code>: Use a crawler to crawl the Web download site that provides file index, and get the latest version of the file name and download it.</li><li><code>custom</code>: If none of the above download methods are satisfactory, you can write <code>custom</code>, create a new class under <code>src/SPC/store/source/</code>, extends <code>CustomSourceBase</code>, and write the download script yourself.</li></ul><h2 id="source-json-common-parameters" tabindex="-1">source.json Common parameters <a class="header-anchor" href="#source-json-common-parameters" aria-label="Permalink to source.json Common parameters"></a></h2><p>Each source file in source.json has the following params:</p><ul><li><code>license</code>: the open source license of the source code, see <strong>Open Source License</strong> section below</li><li><code>type</code>: must be one of the types mentioned above</li><li><code>path</code> (optional): release the source code to the specified directory instead of <code>source/{name}</code></li><li><code>provide-pre-built</code> (optional): whether to provide precompiled binary files. If <code>true</code>, it will automatically try to download precompiled binary files when running <code>bin/spc download</code></li></ul><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>The <code>path</code> parameter in <code>source.json</code> can specify a relative or absolute path. When specified as a relative path, the path is based on <code>source/</code>.</p></div><h2 id="download-type-url" tabindex="-1">Download type - url <a class="header-anchor" href="#download-type-url" aria-label="Permalink to Download type - url"></a></h2><p>URL type sources refer to downloading files directly from the URL.</p><p>The parameters included are:</p><ul><li><code>url</code>: The download address of the file, such as <code>https://example.com/file.tgz</code></li><li><code>filename</code> (optional): The file name saved to the local area. If not specified, the file name of the url will be used.</li></ul><p>Example (download the imagick extension and extract it to the extension storage path of the php source code):</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;ext-imagick&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;url&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;url&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;https://pecl.php.net/get/imagick&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
@ -20,7 +20,17 @@ import{_ as i,c as a,o as e,ah as t}from"./chunks/framework.Bhsyh9kO.js";const E
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><h2 id="download-type-ghrel" tabindex="-1">Download type - ghrel <a class="header-anchor" href="#download-type-ghrel" aria-label="Permalink to Download type - ghrel"></a></h2><p>ghrel will download files from Assets uploaded in GitHub Release. First use the GitHub Release API to get the latest version, and then download the corresponding files according to the regular matching method.</p><p>The parameters included are:</p><ul><li><code>repo</code>: GitHub repository name</li><li><code>match</code>: regular expression matching Assets files</li><li><code>prefer-stable</code>: Whether to download stable versions first (default is <code>false</code>)</li></ul><p>Example (download the libsodium library, matching the libsodium-x.y.tar.gz file in Release):</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><h2 id="download-type-pie" tabindex="-1">Download type - pie <a class="header-anchor" href="#download-type-pie" aria-label="Permalink to Download type - pie"></a></h2><p>PIE (PHP Installer for Extensions) type sources refer to downloading PHP extensions from Packagist that follow the PIE standard. This method automatically fetches extension information from the Packagist repository and downloads the appropriate distribution file.</p><p>The parameters included are:</p><ul><li><code>repo</code>: The Packagist vendor/package name, such as <code>vendor/package-name</code></li></ul><p>Example (download a PHP extension from Packagist using PIE):</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;ext-example&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;pie&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;repo&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;vendor/example-extension&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;php-src/ext/example&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;license&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;file&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>The PIE download type will automatically detect the extension information from Packagist metadata, including the download URL, version, and distribution type. The extension must be marked as <code>type: php-ext</code> or contain <code>php-ext</code> metadata in its Packagist package definition.</p></div><h2 id="download-type-ghrel" tabindex="-1">Download type - ghrel <a class="header-anchor" href="#download-type-ghrel" aria-label="Permalink to Download type - ghrel"></a></h2><p>ghrel will download files from Assets uploaded in GitHub Release. First use the GitHub Release API to get the latest version, and then download the corresponding files according to the regular matching method.</p><p>The parameters included are:</p><ul><li><code>repo</code>: GitHub repository name</li><li><code>match</code>: regular expression matching Assets files</li><li><code>prefer-stable</code>: Whether to download stable versions first (default is <code>false</code>)</li></ul><p>Example (download the libsodium library, matching the libsodium-x.y.tar.gz file in Release):</p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;libsodium&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;ghrel&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;repo&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;jedisct1/libsodium&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
@ -117,4 +127,4 @@ import{_ as i,c as a,o as e,ah as t}from"./chunks/framework.Bhsyh9kO.js";const E
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ]</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div>`,75)])])}const c=i(n,[["render",l]]);export{E as __pageData,c as default};
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div>`,82)])])}const c=i(n,[["render",l]]);export{E as __pageData,c as default};

View File

@ -1 +1 @@
import{_ as i,c as a,o as e,ah as t}from"./chunks/framework.Bhsyh9kO.js";const E=JSON.parse('{"title":"Source module","description":"","frontmatter":{},"headers":[],"relativePath":"en/develop/source-module.md","filePath":"en/develop/source-module.md"}'),n={name:"en/develop/source-module.md"};function l(h,s,p,o,k,d){return e(),a("div",null,[...s[0]||(s[0]=[t("",75)])])}const c=i(n,[["render",l]]);export{E as __pageData,c as default};
import{_ as i,c as a,o as e,ah as t}from"./chunks/framework.Bhsyh9kO.js";const E=JSON.parse('{"title":"Source module","description":"","frontmatter":{},"headers":[],"relativePath":"en/develop/source-module.md","filePath":"en/develop/source-module.md"}'),n={name:"en/develop/source-module.md"};function l(h,s,p,o,k,d){return e(),a("div",null,[...s[0]||(s[0]=[t("",82)])])}const c=i(n,[["render",l]]);export{E as __pageData,c as default};

View File

@ -1 +1 @@
import{C as t}from"./chunks/CliGenerator.DzWv53Ya.js";import{d as a,c as o,o as n,ah as r,J as i}from"./chunks/framework.Bhsyh9kO.js";const p=JSON.parse('{"title":"CLI Build Command Generator","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"en/guide/cli-generator.md","filePath":"en/guide/cli-generator.md"}'),s={name:"en/guide/cli-generator.md"},_=a({...s,setup(l){return(c,e)=>(n(),o("div",null,[e[0]||(e[0]=r('<h1 id="cli-build-command-generator" tabindex="-1">CLI Build Command Generator <a class="header-anchor" href="#cli-build-command-generator" aria-label="Permalink to “CLI Build Command Generator”"></a></h1><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>The extensions selected below may contain extensions that are not supported by the selected operating system, which may cause compilation to fail. Please check <a href="./extensions.html">Supported Extensions</a> first.</p></div>',2)),i(t,{lang:"en"})]))}});export{p as __pageData,_ as default};
import{C as t}from"./chunks/CliGenerator.CiBuU_lp.js";import{d as a,c as o,o as n,ah as r,J as i}from"./chunks/framework.Bhsyh9kO.js";const p=JSON.parse('{"title":"CLI Build Command Generator","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"en/guide/cli-generator.md","filePath":"en/guide/cli-generator.md"}'),s={name:"en/guide/cli-generator.md"},_=a({...s,setup(l){return(c,e)=>(n(),o("div",null,[e[0]||(e[0]=r('<h1 id="cli-build-command-generator" tabindex="-1">CLI Build Command Generator <a class="header-anchor" href="#cli-build-command-generator" aria-label="Permalink to “CLI Build Command Generator”"></a></h1><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>The extensions selected below may contain extensions that are not supported by the selected operating system, which may cause compilation to fail. Please check <a href="./extensions.html">Supported Extensions</a> first.</p></div>',2)),i(t,{lang:"en"})]))}});export{p as __pageData,_ as default};

View File

@ -1 +1 @@
import{C as t}from"./chunks/CliGenerator.DzWv53Ya.js";import{d as a,c as o,o as n,ah as r,J as i}from"./chunks/framework.Bhsyh9kO.js";const p=JSON.parse('{"title":"CLI Build Command Generator","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"en/guide/cli-generator.md","filePath":"en/guide/cli-generator.md"}'),s={name:"en/guide/cli-generator.md"},_=a({...s,setup(l){return(c,e)=>(n(),o("div",null,[e[0]||(e[0]=r("",2)),i(t,{lang:"en"})]))}});export{p as __pageData,_ as default};
import{C as t}from"./chunks/CliGenerator.CiBuU_lp.js";import{d as a,c as o,o as n,ah as r,J as i}from"./chunks/framework.Bhsyh9kO.js";const p=JSON.parse('{"title":"CLI Build Command Generator","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"en/guide/cli-generator.md","filePath":"en/guide/cli-generator.md"}'),s={name:"en/guide/cli-generator.md"},_=a({...s,setup(l){return(c,e)=>(n(),o("div",null,[e[0]||(e[0]=r("",2)),i(t,{lang:"en"})]))}});export{p as __pageData,_ as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as o}from"./chunks/SearchTable.CtWumc3C.js";import{c as i,o as s,ah as t,J as a}from"./chunks/framework.Bhsyh9kO.js";const d=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"en/guide/extensions.md","filePath":"en/guide/extensions.md"}'),n={name:"en/guide/extensions.md"},u=Object.assign(n,{setup(l){return(r,e)=>(s(),i("div",null,[e[0]||(e[0]=t('<h1 id="extensions" tabindex="-1">Extensions <a class="header-anchor" href="#extensions" aria-label="Permalink to “Extensions”"></a></h1><blockquote><ul><li><code>yes</code>: supported</li><li><em>blank</em>: not supported yet, or WIP</li><li><code>no</code> with issue link: confirmed to be unavailable due to issue</li><li><code>partial</code> with issue link: supported but not perfect due to issue</li></ul></blockquote>',2)),a(o),e[1]||(e[1]=t('<div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>If an extension you need is missing, you can create a <a href="https://github.com/crazywhalecc/static-php-cli/issues" target="_blank" rel="noreferrer">Feature Request</a>.</p><p>Some extensions or libraries that the extension depends on will have some optional features. For example, the gd library optionally supports libwebp, freetype, etc. If you only use <code>bin/spc build gd --build-cli</code> they will not be included (static-php-cli defaults to the minimum dependency principle).</p><p>For more information about optional libraries, see <a href="./deps-map.html">Extensions, Library Dependency Map</a>. For optional libraries, you can also select an extension from the <a href="./cli-generator.html">Command Generator</a> and then select optional libraries.</p></div>',1))]))}});export{d as __pageData,u as default};
import{_ as o}from"./chunks/SearchTable.DC7Tsu3d.js";import{c as i,o as s,ah as t,J as a}from"./chunks/framework.Bhsyh9kO.js";const d=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"en/guide/extensions.md","filePath":"en/guide/extensions.md"}'),n={name:"en/guide/extensions.md"},u=Object.assign(n,{setup(l){return(r,e)=>(s(),i("div",null,[e[0]||(e[0]=t('<h1 id="extensions" tabindex="-1">Extensions <a class="header-anchor" href="#extensions" aria-label="Permalink to “Extensions”"></a></h1><blockquote><ul><li><code>yes</code>: supported</li><li><em>blank</em>: not supported yet, or WIP</li><li><code>no</code> with issue link: confirmed to be unavailable due to issue</li><li><code>partial</code> with issue link: supported but not perfect due to issue</li></ul></blockquote>',2)),a(o),e[1]||(e[1]=t('<div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>If an extension you need is missing, you can create a <a href="https://github.com/crazywhalecc/static-php-cli/issues" target="_blank" rel="noreferrer">Feature Request</a>.</p><p>Some extensions or libraries that the extension depends on will have some optional features. For example, the gd library optionally supports libwebp, freetype, etc. If you only use <code>bin/spc build gd --build-cli</code> they will not be included (static-php-cli defaults to the minimum dependency principle).</p><p>For more information about optional libraries, see <a href="./deps-map.html">Extensions, Library Dependency Map</a>. For optional libraries, you can also select an extension from the <a href="./cli-generator.html">Command Generator</a> and then select optional libraries.</p></div>',1))]))}});export{d as __pageData,u as default};

View File

@ -1 +1 @@
import{_ as o}from"./chunks/SearchTable.CtWumc3C.js";import{c as i,o as s,ah as t,J as a}from"./chunks/framework.Bhsyh9kO.js";const d=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"en/guide/extensions.md","filePath":"en/guide/extensions.md"}'),n={name:"en/guide/extensions.md"},u=Object.assign(n,{setup(l){return(r,e)=>(s(),i("div",null,[e[0]||(e[0]=t("",2)),a(o),e[1]||(e[1]=t("",1))]))}});export{d as __pageData,u as default};
import{_ as o}from"./chunks/SearchTable.DC7Tsu3d.js";import{c as i,o as s,ah as t,J as a}from"./chunks/framework.Bhsyh9kO.js";const d=JSON.parse('{"title":"Extensions","description":"","frontmatter":{},"headers":[],"relativePath":"en/guide/extensions.md","filePath":"en/guide/extensions.md"}'),n={name:"en/guide/extensions.md"},u=Object.assign(n,{setup(l){return(r,e)=>(s(),i("div",null,[e[0]||(e[0]=t("",2)),a(o),e[1]||(e[1]=t("",1))]))}});export{d as __pageData,u as default};

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,7 @@ import{_ as i,c as a,o as t,ah as n}from"./chunks/framework.Bhsyh9kO.js";const r
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p> <code>type</code></p><ul><li><code>url</code>: 使 URL <code>https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz</code></li><li><code>ghrel</code>: 使 GitHub Release API GitHub </li><li><code>ghtar</code>: 使 GitHub Release API <code>ghrel</code> <code>ghtar</code> Release <code>source code (tar.gz)</code> </li><li><code>ghtagtar</code>: 使 GitHub Release API <code>ghtar</code> <code>ghtagtar</code> <code>tags</code> <code>tar.gz</code> 使 <code>tag</code> </li><li><code>bitbuckettag</code>: 使 BitBucket API <code>ghtagtar</code> BitBucket</li><li><code>git</code>: Git Git </li><li><code>filelist</code>: 使 Web </li><li><code>custom</code>: <code>custom</code> <code>src/SPC/store/source/</code> <code>CustomSourceBase</code></li></ul><h2 id="source-json-" tabindex="-1">source.json <a class="header-anchor" href="#source-json-" aria-label="Permalink to source.json "></a></h2><p>source.json </p><ul><li><code>license</code>: <strong></strong> </li><li><code>type</code>: </li><li><code>path</code>: <code>source/{name}</code></li><li><code>provide-pre-built</code>: <code>true</code> <code>bin/spc download</code> </li></ul><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p><code>source.json</code> <code>path</code> <code>source/</code></p></div><h2 id="-url" tabindex="-1"> - url <a class="header-anchor" href="#-url" aria-label="Permalink to - url"></a></h2><p>url URL </p><p></p><ul><li><code>url</code>: <code>https://example.com/file.tgz</code></li><li><code>filename</code>: 使 url </li></ul><p> imagick php </p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><p> <code>type</code></p><ul><li><code>url</code>: 使 URL <code>https://download.libsodium.org/libsodium/releases/libsodium-1.0.18.tar.gz</code></li><li><code>pie</code>: 使 PIEPHP Installer for Extensions Packagist PHP </li><li><code>ghrel</code>: 使 GitHub Release API GitHub </li><li><code>ghtar</code>: 使 GitHub Release API <code>ghrel</code> <code>ghtar</code> Release <code>source code (tar.gz)</code> </li><li><code>ghtagtar</code>: 使 GitHub Release API <code>ghtar</code> <code>ghtagtar</code> <code>tags</code> <code>tar.gz</code> 使 <code>tag</code> </li><li><code>bitbuckettag</code>: 使 BitBucket API <code>ghtagtar</code> BitBucket</li><li><code>git</code>: Git Git </li><li><code>filelist</code>: 使 Web </li><li><code>custom</code>: <code>custom</code> <code>src/SPC/store/source/</code> <code>CustomSourceBase</code></li></ul><h2 id="source-json-" tabindex="-1">source.json <a class="header-anchor" href="#source-json-" aria-label="Permalink to source.json "></a></h2><p>source.json </p><ul><li><code>license</code>: <strong></strong> </li><li><code>type</code>: </li><li><code>path</code>: <code>source/{name}</code></li><li><code>provide-pre-built</code>: <code>true</code> <code>bin/spc download</code> </li></ul><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p><code>source.json</code> <code>path</code> <code>source/</code></p></div><h2 id="-url" tabindex="-1"> - url <a class="header-anchor" href="#-url" aria-label="Permalink to - url"></a></h2><p>url URL </p><p></p><ul><li><code>url</code>: <code>https://example.com/file.tgz</code></li><li><code>filename</code>: 使 url </li></ul><p> imagick php </p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;ext-imagick&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;url&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;url&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;https://pecl.php.net/get/imagick&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
@ -20,7 +20,17 @@ import{_ as i,c as a,o as t,ah as n}from"./chunks/framework.Bhsyh9kO.js";const r
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><h2 id="-ghrel" tabindex="-1"> - ghrel <a class="header-anchor" href="#-ghrel" aria-label="Permalink to - ghrel"></a></h2><p>ghrel GitHub Release Assets 使 GitHub Release API </p><p></p><ul><li><code>repo</code>: GitHub </li><li><code>match</code>: Assets </li><li><code>prefer-stable</code>: <code>false</code></li></ul><p> libsodium Release libsodium-x.y.tar.gz </p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><h2 id="-pie" tabindex="-1"> - pie <a class="header-anchor" href="#-pie" aria-label="Permalink to - pie"></a></h2><p>PIEPHP Installer for Extensions Packagist PIE PHP Packagist </p><p></p><ul><li><code>repo</code>: Packagist vendor/package <code>vendor/package-name</code></li></ul><p>使 PIE Packagist PHP </p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;ext-example&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;pie&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;repo&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;vendor/example-extension&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;php-src/ext/example&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;license&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;file&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;path&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;LICENSE&quot;</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>PIE Packagist URL Packagist <code>type: php-ext</code> <code>php-ext</code> </p></div><h2 id="-ghrel" tabindex="-1"> - ghrel <a class="header-anchor" href="#-ghrel" aria-label="Permalink to - ghrel"></a></h2><p>ghrel GitHub Release Assets 使 GitHub Release API </p><p></p><ul><li><code>repo</code>: GitHub </li><li><code>match</code>: Assets </li><li><code>prefer-stable</code>: <code>false</code></li></ul><p> libsodium Release libsodium-x.y.tar.gz </p><div class="language-json"><button title="Copy Code" class="copy"></button><span class="lang">json</span><pre class="shiki shiki-themes github-light github-dark" style="--shiki-light:#24292e;--shiki-dark:#e1e4e8;--shiki-light-bg:#fff;--shiki-dark-bg:#24292e;" tabindex="0" dir="ltr"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">{</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;libsodium&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: {</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;type&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;ghrel&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
<span class="line"><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> &quot;repo&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">: </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">&quot;jedisct1/libsodium&quot;</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">,</span></span>
@ -117,4 +127,4 @@ import{_ as i,c as a,o as t,ah as n}from"./chunks/framework.Bhsyh9kO.js";const r
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> ]</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;"> }</span></span>
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div>`,75)])])}const c=i(l,[["render",h]]);export{r as __pageData,c as default};
<span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">}</span></span></code></pre></div>`,82)])])}const c=i(l,[["render",h]]);export{r as __pageData,c as default};

View File

@ -1 +1 @@
import{_ as i,c as a,o as t,ah as n}from"./chunks/framework.Bhsyh9kO.js";const r=JSON.parse('{"title":"资源模块","description":"","frontmatter":{},"headers":[],"relativePath":"zh/develop/source-module.md","filePath":"zh/develop/source-module.md"}'),l={name:"zh/develop/source-module.md"};function h(e,s,p,k,E,o){return t(),a("div",null,[...s[0]||(s[0]=[n("",75)])])}const c=i(l,[["render",h]]);export{r as __pageData,c as default};
import{_ as i,c as a,o as t,ah as n}from"./chunks/framework.Bhsyh9kO.js";const r=JSON.parse('{"title":"资源模块","description":"","frontmatter":{},"headers":[],"relativePath":"zh/develop/source-module.md","filePath":"zh/develop/source-module.md"}'),l={name:"zh/develop/source-module.md"};function h(e,s,p,k,E,o){return t(),a("div",null,[...s[0]||(s[0]=[n("",82)])])}const c=i(l,[["render",h]]);export{r as __pageData,c as default};

View File

@ -1 +1 @@
import{C as a}from"./chunks/CliGenerator.DzWv53Ya.js";import{d as t,c as r,o,ah as i,J as l}from"./chunks/framework.Bhsyh9kO.js";const m=JSON.parse('{"title":"CLI 编译命令生成器","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"zh/guide/cli-generator.md","filePath":"zh/guide/cli-generator.md"}'),s={name:"zh/guide/cli-generator.md"},p=t({...s,setup(c){return(n,e)=>(o(),r("div",null,[e[0]||(e[0]=i('<h1 id="cli-编译命令生成器" tabindex="-1">CLI 编译命令生成器 <a class="header-anchor" href="#cli-编译命令生成器" aria-label="Permalink to “CLI 编译命令生成器”"></a></h1><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>下面选择扩展可能包含所选操作系统不支持的扩展,这可能导致编译失败。请先查阅 <a href="./extensions.html">支持的扩展</a>。</p></div>',2)),l(a,{lang:"zh"})]))}});export{m as __pageData,p as default};
import{C as a}from"./chunks/CliGenerator.CiBuU_lp.js";import{d as t,c as r,o,ah as i,J as l}from"./chunks/framework.Bhsyh9kO.js";const m=JSON.parse('{"title":"CLI 编译命令生成器","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"zh/guide/cli-generator.md","filePath":"zh/guide/cli-generator.md"}'),s={name:"zh/guide/cli-generator.md"},p=t({...s,setup(c){return(n,e)=>(o(),r("div",null,[e[0]||(e[0]=i('<h1 id="cli-编译命令生成器" tabindex="-1">CLI 编译命令生成器 <a class="header-anchor" href="#cli-编译命令生成器" aria-label="Permalink to “CLI 编译命令生成器”"></a></h1><div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>下面选择扩展可能包含所选操作系统不支持的扩展,这可能导致编译失败。请先查阅 <a href="./extensions.html">支持的扩展</a>。</p></div>',2)),l(a,{lang:"zh"})]))}});export{m as __pageData,p as default};

View File

@ -1 +1 @@
import{C as a}from"./chunks/CliGenerator.DzWv53Ya.js";import{d as t,c as r,o,ah as i,J as l}from"./chunks/framework.Bhsyh9kO.js";const m=JSON.parse('{"title":"CLI 编译命令生成器","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"zh/guide/cli-generator.md","filePath":"zh/guide/cli-generator.md"}'),s={name:"zh/guide/cli-generator.md"},p=t({...s,setup(c){return(n,e)=>(o(),r("div",null,[e[0]||(e[0]=i("",2)),l(a,{lang:"zh"})]))}});export{m as __pageData,p as default};
import{C as a}from"./chunks/CliGenerator.CiBuU_lp.js";import{d as t,c as r,o,ah as i,J as l}from"./chunks/framework.Bhsyh9kO.js";const m=JSON.parse('{"title":"CLI 编译命令生成器","description":"","frontmatter":{"aside":false},"headers":[],"relativePath":"zh/guide/cli-generator.md","filePath":"zh/guide/cli-generator.md"}'),s={name:"zh/guide/cli-generator.md"},p=t({...s,setup(c){return(n,e)=>(o(),r("div",null,[e[0]||(e[0]=i("",2)),l(a,{lang:"zh"})]))}});export{m as __pageData,p as default};

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
import{_ as i}from"./chunks/SearchTable.CtWumc3C.js";import{c as a,o as l,ah as t,J as s}from"./chunks/framework.Bhsyh9kO.js";const n=JSON.parse('{"title":"扩展列表","description":"","frontmatter":{},"headers":[],"relativePath":"zh/guide/extensions.md","filePath":"zh/guide/extensions.md"}'),o={name:"zh/guide/extensions.md"},p=Object.assign(o,{setup(c){return(r,e)=>(l(),a("div",null,[e[0]||(e[0]=t('<h1 id="扩展列表" tabindex="-1">扩展列表 <a class="header-anchor" href="#扩展列表" aria-label="Permalink to “扩展列表”"></a></h1><blockquote><ul><li><code>yes</code>: 已支持</li><li>空白: 目前还不支持,或正在支持中</li><li><code>no</code> with issue link: 确定不支持或无法支持</li><li><code>partial</code> with issue link: 已支持,但是无法完美工作</li></ul></blockquote>',2)),s(i),e[1]||(e[1]=t('<div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>如果缺少您需要的扩展,您可以创建 <a href="https://github.com/crazywhalecc/static-php-cli/issues" target="_blank" rel="noreferrer">功能请求</a>。</p><p>有些扩展或扩展依赖的库会有一些可选的特性,例如 gd 库可选支持 libwebp、freetype 等。 如果你只使用 <code>bin/spc build gd --build-cli</code> 是不会包含它们static-php-cli 默认为最小依赖原则)。</p><p>有关编译可选库,请参考 <a href="./deps-map.html">扩展、库的依赖关系图表</a>。对于可选的库,你也可以从 <a href="./cli-generator.html">编译命令生成器</a> 中选择扩展后展开选择可选库。</p></div>',1))]))}});export{n as __pageData,p as default};
import{_ as i}from"./chunks/SearchTable.DC7Tsu3d.js";import{c as a,o as l,ah as t,J as s}from"./chunks/framework.Bhsyh9kO.js";const n=JSON.parse('{"title":"扩展列表","description":"","frontmatter":{},"headers":[],"relativePath":"zh/guide/extensions.md","filePath":"zh/guide/extensions.md"}'),o={name:"zh/guide/extensions.md"},p=Object.assign(o,{setup(c){return(r,e)=>(l(),a("div",null,[e[0]||(e[0]=t('<h1 id="扩展列表" tabindex="-1">扩展列表 <a class="header-anchor" href="#扩展列表" aria-label="Permalink to “扩展列表”"></a></h1><blockquote><ul><li><code>yes</code>: 已支持</li><li>空白: 目前还不支持,或正在支持中</li><li><code>no</code> with issue link: 确定不支持或无法支持</li><li><code>partial</code> with issue link: 已支持,但是无法完美工作</li></ul></blockquote>',2)),s(i),e[1]||(e[1]=t('<div class="tip custom-block"><p class="custom-block-title custom-block-title-default">TIP</p><p>如果缺少您需要的扩展,您可以创建 <a href="https://github.com/crazywhalecc/static-php-cli/issues" target="_blank" rel="noreferrer">功能请求</a>。</p><p>有些扩展或扩展依赖的库会有一些可选的特性,例如 gd 库可选支持 libwebp、freetype 等。 如果你只使用 <code>bin/spc build gd --build-cli</code> 是不会包含它们static-php-cli 默认为最小依赖原则)。</p><p>有关编译可选库,请参考 <a href="./deps-map.html">扩展、库的依赖关系图表</a>。对于可选的库,你也可以从 <a href="./cli-generator.html">编译命令生成器</a> 中选择扩展后展开选择可选库。</p></div>',1))]))}});export{n as __pageData,p as default};

View File

@ -1 +1 @@
import{_ as i}from"./chunks/SearchTable.CtWumc3C.js";import{c as a,o as l,ah as t,J as s}from"./chunks/framework.Bhsyh9kO.js";const n=JSON.parse('{"title":"扩展列表","description":"","frontmatter":{},"headers":[],"relativePath":"zh/guide/extensions.md","filePath":"zh/guide/extensions.md"}'),o={name:"zh/guide/extensions.md"},p=Object.assign(o,{setup(c){return(r,e)=>(l(),a("div",null,[e[0]||(e[0]=t("",2)),s(i),e[1]||(e[1]=t("",1))]))}});export{n as __pageData,p as default};
import{_ as i}from"./chunks/SearchTable.DC7Tsu3d.js";import{c as a,o as l,ah as t,J as s}from"./chunks/framework.Bhsyh9kO.js";const n=JSON.parse('{"title":"扩展列表","description":"","frontmatter":{},"headers":[],"relativePath":"zh/guide/extensions.md","filePath":"zh/guide/extensions.md"}'),o={name:"zh/guide/extensions.md"},p=Object.assign(o,{setup(c){return(r,e)=>(l(),a("div",null,[e[0]||(e[0]=t("",2)),s(i),e[1]||(e[1]=t("",1))]))}});export{n as __pageData,p as default};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
{"deps-craft-yml.md":"DqNYV3B0","deps-map-ext.md":"Ca6YpX1f","deps-map-lib.md":"CTX6f-lZ","en_contributing_index.md":"fCA6lXnW","en_develop_craft-yml.md":"Ci97ssL7","en_develop_doctor-module.md":"BTDyp-aK","en_develop_index.md":"DUNrUVP9","en_develop_php-src-changes.md":"dN8aSiwg","en_develop_source-module.md":"hhJuiZD0","en_develop_structure.md":"X2JId3N9","en_develop_system-build-tools.md":"BmQhyTle","en_faq_index.md":"B89Sredc","en_guide_action-build.md":"Dnzq6gNC","en_guide_build-on-windows.md":"DiYVSaPG","en_guide_build-with-glibc.md":"CkVR75n5","en_guide_cli-generator.md":"BDiQF4zU","en_guide_deps-map.md":"DVbj4tBK","en_guide_env-vars.md":"51DQ7bvx","en_guide_extension-notes.md":"CHFGRiKx","en_guide_extensions.md":"C2b8b6du","en_guide_index.md":"C0gwKWb1","en_guide_manual-build.md":"DPsGII1D","en_guide_troubleshooting.md":"D19jRB1K","en_index.md":"WiGlW8EH","extension-notes.md":"BB7Xlw1w","extensions.md":"hO1GVZPt","index.md":"AJG02Jxt","zh_contributing_index.md":"fiiKMXnj","zh_develop_craft-yml.md":"CAUu6v38","zh_develop_doctor-module.md":"1NRXIINs","zh_develop_index.md":"CRxnJZDt","zh_develop_php-src-changes.md":"CwVUc0oE","zh_develop_source-module.md":"3iGbQTPs","zh_develop_structure.md":"CEd1RycZ","zh_develop_system-build-tools.md":"CQ4BvPVa","zh_faq_index.md":"BihV7puH","zh_guide_action-build.md":"CQ3Vf3i9","zh_guide_build-on-windows.md":"oogWrPn_","zh_guide_build-with-glibc.md":"CHXyK61r","zh_guide_cli-generator.md":"BTJ9-Rik","zh_guide_deps-map.md":"BdXesr_r","zh_guide_env-vars.md":"CtNlqGk4","zh_guide_extension-notes.md":"BCwDjBZH","zh_guide_extensions.md":"HschgqwT","zh_guide_index.md":"BBGjnhq-","zh_guide_manual-build.md":"C3iksvHw","zh_guide_troubleshooting.md":"BRQLW2WP","zh_index.md":"Dv99zA_s"}
{"deps-craft-yml.md":"DqNYV3B0","deps-map-ext.md":"Og0ARiqk","deps-map-lib.md":"CTX6f-lZ","en_contributing_index.md":"fCA6lXnW","en_develop_craft-yml.md":"Ci97ssL7","en_develop_doctor-module.md":"BTDyp-aK","en_develop_index.md":"DUNrUVP9","en_develop_php-src-changes.md":"dN8aSiwg","en_develop_source-module.md":"CTCLlqsP","en_develop_structure.md":"X2JId3N9","en_develop_system-build-tools.md":"BmQhyTle","en_faq_index.md":"B89Sredc","en_guide_action-build.md":"Dnzq6gNC","en_guide_build-on-windows.md":"DiYVSaPG","en_guide_build-with-glibc.md":"CkVR75n5","en_guide_cli-generator.md":"B6V9E14d","en_guide_deps-map.md":"eQpNvDJQ","en_guide_env-vars.md":"51DQ7bvx","en_guide_extension-notes.md":"CHFGRiKx","en_guide_extensions.md":"D0rIOBRU","en_guide_index.md":"C0gwKWb1","en_guide_manual-build.md":"DPsGII1D","en_guide_troubleshooting.md":"D19jRB1K","en_index.md":"WiGlW8EH","extension-notes.md":"BB7Xlw1w","extensions.md":"C4jkdWSv","index.md":"AJG02Jxt","zh_contributing_index.md":"fiiKMXnj","zh_develop_craft-yml.md":"CAUu6v38","zh_develop_doctor-module.md":"1NRXIINs","zh_develop_index.md":"CRxnJZDt","zh_develop_php-src-changes.md":"CwVUc0oE","zh_develop_source-module.md":"CS1VBo_1","zh_develop_structure.md":"CEd1RycZ","zh_develop_system-build-tools.md":"CQ4BvPVa","zh_faq_index.md":"BihV7puH","zh_guide_action-build.md":"CQ3Vf3i9","zh_guide_build-on-windows.md":"oogWrPn_","zh_guide_build-with-glibc.md":"CHXyK61r","zh_guide_cli-generator.md":"DhNSRgoY","zh_guide_deps-map.md":"Bwdfhis1","zh_guide_env-vars.md":"CtNlqGk4","zh_guide_extension-notes.md":"BCwDjBZH","zh_guide_extensions.md":"C_jEcweg","zh_guide_index.md":"BBGjnhq-","zh_guide_manual-build.md":"C3iksvHw","zh_guide_troubleshooting.md":"BRQLW2WP","zh_index.md":"Dv99zA_s"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long