{"id":15604,"library":"esbuild-linux-ppc64le","title":"esbuild Linux PowerPC 64-bit Little Endian Binary","description":"esbuild is an extremely fast, next-generation JavaScript and CSS bundler and minifier, written in Go. Its primary goal is to achieve significantly faster build times compared to other bundlers by leveraging parallel parsing, printing, and source map generation. The project maintains an active development pace with frequent releases, often including multiple minor or patch versions within weeks. As of its latest stable release, `esbuild` is at version 0.28.0. Key differentiators include its exceptional speed without requiring a cache, built-in support for JavaScript, CSS, TypeScript, and JSX, a straightforward API for CLI, JavaScript, and Go, and comprehensive features like ESM/CommonJS module bundling, tree shaking, minification, and source map generation. This specific package, `esbuild-linux-ppc64le`, provides the pre-compiled native binary for the Linux PowerPC 64-bit Little Endian architecture, which is an optional dependency automatically selected and installed by the main `esbuild` package based on the host system's platform and architecture.","status":"active","version":"0.15.18","language":"javascript","source_language":"en","source_url":"https://github.com/evanw/esbuild","tags":["javascript"],"install":[{"cmd":"npm install esbuild-linux-ppc64le","lang":"bash","label":"npm"},{"cmd":"yarn add esbuild-linux-ppc64le","lang":"bash","label":"yarn"},{"cmd":"pnpm add esbuild-linux-ppc64le","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"This package is an architecture-specific binary dependency for the main `esbuild` package, which orchestrates its use.","package":"esbuild","optional":true}],"imports":[{"note":"The `build` API is asynchronous and recommended for most bundling tasks. `esbuild` is primarily ESM-first, though CommonJS `require` still works.","wrong":"const { build } = require('esbuild')","symbol":"build","correct":"import { build } from 'esbuild'"},{"note":"The `transform` API processes a single string of code without file system access, suitable for in-memory transpilation.","wrong":"const { transform } = require('esbuild')","symbol":"transform","correct":"import { transform } from 'esbuild'"},{"note":"Since v0.17, `context` provides an incremental build API for faster rebuilds in development, supporting watch and serve modes. This should be explicitly imported.","wrong":"import esbuild from 'esbuild'; esbuild.context","symbol":"context","correct":"import { context } from 'esbuild'"}],"quickstart":{"code":"import { build } from 'esbuild';\n\nconst entryPoint = 'src/app.ts';\nconst outFile = 'dist/bundle.js';\n\nasync function bundleApp() {\n  try {\n    await build({\n      entryPoints: [entryPoint],\n      bundle: true,\n      minify: true,\n      sourcemap: true,\n      outfile: outFile,\n      platform: 'node',\n      target: 'es2022',\n      // Define environment variables, e.g., for API keys\n      define: {\n        'process.env.API_KEY': JSON.stringify(process.env.API_KEY ?? 'your-default-api-key'),\n      },\n      logLevel: 'info',\n      // Optional: watch mode for development\n      // watch: {\n      //   onRebuild(error, result) {\n      //     if (error) console.error('watch build failed:', error);\n      //     else console.log('watch build succeeded:', result);\n      //   },\n      // },\n    });\n    console.log(`Successfully bundled ${entryPoint} to ${outFile}`);\n  } catch (e) {\n    console.error(`Bundling failed: ${e.message}`);\n    process.exit(1);\n  }\n}\n\nbundleApp();","lang":"typescript","description":"This quickstart demonstrates how to use esbuild's `build` API to bundle a TypeScript application, including minification, source maps, and environment variable definition."},"warnings":[{"fix":"Review release notes for v0.27.0 and subsequent versions before upgrading. Pin `esbuild` to an exact version in `package.json` (e.g., `\"esbuild\": \"0.28.0\"`) or use a tilde `~` prefix for patch-level updates (`\"esbuild\": \"~0.28.0\"`).","message":"esbuild v0.27.0 introduced deliberate backwards-incompatible changes. Users are advised to pin exact versions or use patch-only version ranges (e.g., `^0.26.0` or `~0.26.0`) to avoid unexpected breakage from major or minor releases.","severity":"breaking","affected_versions":">=0.27.0"},{"fix":"Avoid using `--no-optional` when installing esbuild. Ensure npm can install optional dependencies. If issues persist, update npm to a recent version, as older npm versions might have had issues with `optionalDependencies`.","message":"Using `--no-optional` flag with `npm install` can prevent esbuild from installing its platform-specific native binary, leading to errors when esbuild tries to execute. The native binaries are crucial for performance.","severity":"gotcha","affected_versions":">=0.6.0"},{"fix":"Always prefer installing the main `esbuild` package unless there's a specific need for the WebAssembly version (e.g., browser-based execution). The `esbuild` package will automatically select and install the correct native binary for your platform.","message":"The `esbuild-wasm` package provides a cross-platform WebAssembly version of esbuild, but it is significantly slower (often 10x slower) than the native executables provided by the `esbuild` package and its platform-specific binary dependencies (like `esbuild-linux-ppc64le`).","severity":"gotcha","affected_versions":">=0.8.0"},{"fix":"Transition from CLI usage to the JavaScript API (`esbuild.build()` or `esbuild.context()`) for projects requiring reliable and consistent build configurations across different environments.","message":"Esbuild's CLI arguments can be subject to shell-specific behavior (e.g., glob expansion). For robust and predictable builds, especially when dealing with complex paths or patterns, using the JavaScript API is recommended.","severity":"gotcha","affected_versions":">=0.1.0"}],"env_vars":null,"last_verified":"2026-04-21T00:00:00.000Z","next_check":"2026-07-20T00:00:00.000Z","problems":[{"fix":"Remove `node_modules` and `package-lock.json`, then reinstall without `--no-optional`. Ensure your system's OS and architecture are supported by a native esbuild binary. Update npm if it's an older version.","cause":"This usually indicates that esbuild's optional platform-specific binary dependency could not be installed due to incompatible platform, architecture, or `--no-optional` flag during npm install.","error":"Error: The package \"esbuild-...\" could not be found, and is needed by esbuild"},{"fix":"This is typically a warning and not an error if the correct binary for the *current* platform is successfully installed. If it prevents esbuild from running, ensure `esbuild` is installed without `--no-optional` and that your `package-lock.json` doesn't exclusively lock to a non-matching platform. Delete `node_modules` and `package-lock.json` and reinstall to allow npm to choose the correct binary for the current system.","cause":"This warning occurs when npm attempts to install an architecture-specific esbuild binary that does not match the current operating system or CPU architecture. It often appears when running `npm install` on a different platform than where the lockfile was generated.","error":"npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for esbuild-linux-ppc64le@X.Y.Z: wanted {\"os\":\"linux\",\"arch\":\"ppc64\"} (current: {\"os\":\"darwin\",\"arch\":\"x64\"})"},{"fix":"Check that the esbuild native binary is present in `node_modules/esbuild/bin/`. Verify its executable permissions. Try deleting `node_modules` and `package-lock.json` and running `npm install` again to ensure a clean installation. If using a custom install script, ensure it correctly handles esbuild's installation.","cause":"This error means the esbuild executable could not be found or executed, often due to a missing binary, incorrect permissions, or an issue during installation.","error":"Error: Command failed: /path/to/node_modules/esbuild/bin/esbuild --version"}],"ecosystem":"npm"}