Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

make error when run without access to `/proc`

Abierto
#3,059 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
55/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
javascript, linux, node.js

Línea de trabajo

Comienza con lib/build.js en las líneas 176-179 y reproduce el resultado con cero CPU mediante el comando systemd-run proporcionado con ProcSubset=pid. Comprueba los argumentos resultantes de make y verifica que un build ya no pase una cantidad de trabajos igual a cero cuando os.cpus() devuelva un array vacío.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

  • Node Version: node = v20.16.0, npm = 10.8.1
  • Platform: Linux 6.8.0-40-generic x86_64
  • Module: re2
Verbose output (from npm or node-gyp):
npm error gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build', '--jobs', 0 ]
npm error make: the '-j' option requires a positive integer argument

When building a package using the systemd security option ProcSubset=pid, gyp sets the number of jobs to 0, which make does not accept.

I believe the relevant code is here: https://github.com/nodejs/node-gyp/blob/e6f4ede10cca28e9edeaa85d7830914c5d1499c7/lib/build.js#L176-L179

The documentation for Node function os.cpus() says:

Returns an array of objects containing information about each logical CPU core. The array will be empty if no CPU information is available, such as if the /proc file system is unavailable.

This can be shown by getting the number of CPUs in a transient service unit:

$ node -e "console.log(require('node:os').cpus().length)"
16

$ sudo systemd-run -p ProcSubset=pid -t -- \
  node -e "console.log(require('node:os').cpus().length)"
0

In the event of os.cpus() not returning any information, I suggest that gyp should either default to some constant number of parallel jobs or let make run as many jobs as it wants.

Lenguaje dominante
Python
Estrellas
10.7k
Forks
1.9k
Merge medio
1 d 4 h
PR fusionados (30 d)
5

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de nodejs/node-gyp

Todos los issues de nodejs/node-gyp

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.