Estable, flexible y muy simple en uso del sistema operativo, que no te restringe
Profundidad requiere GNU Make, GCC y NASM para construir. Y Qemu para correr.
Para construir el núcleo, ejecute make build .
Para construir paquetes, primero debe instalar XBSTRAP.
Luego debe crear un directorio de compilación ( $PKGS_BUILDDIR ) y cd en él. Luego ejecute xbstrap init ../pkgs .
Ahora puede ejecutar xbstrap compile-tool <tool> (por ejemplo, GCC) o xbstrap build <package> (por ejemplo, libpng) para crear herramientas/paquetes.
Después de haber construido el paquete / herramienta, puede instalarlo llamando a xbstrap install / xbstrap install-tool . Si es un paquete, se instalará en $PKGS_BUILDDIR/system-root . Si se trata de una herramienta, se instalará en $PKGS_BUILDDIR/tools/path/to/tool (por ejemplo $BUILDDIR/tools/cross-gcc/bin/i686-depthos-gcc ).
Para instalar el paquete en la imagen, tendría que configurar la variable SYSROOT en $PKGS_BUILDDIR/system-root al ejecutar el script tools/sync.sh .
Kernel y Userland requieren una cadena de herramientas personalizada compilada para la plataforma. Para usarlo, establezca variables de entorno CC y LD cuando se ejecute make .
Nota
Puede usar herramientas cross-gcc y cross-binutils de la sección anterior para construir el núcleo también. Así: CC=$PKGS_BUILDDIR/tools/cross-gcc/bin/i686-depthos-gcc LD=$PKGS_BUILDDIR/tools/cross-binutils/bin/i686-depthos-ld make ...
Profundos requiere una imagen del disco duro para ejecutar, contiene todos los datos y programas necesarios. Para generarlo, puede usar el script tools/sync.sh . Copiará todo desde la carpeta disk-fs (que se crea automáticamente cuando crea aplicaciones). Si se establece la variable de entorno SYSROOT , también copiará todos los archivos desde allí.
La imagen resultante se encuentra en el archivo _disk_image.raw .
Antes de ejecutar profundidad, también necesitará construir un ISO. Puede hacerlo utilizando el script tools/iso.sh .
Para ejecutar profundidad, puede usar el script tools/qemu.sh , proporciona todos los parámetros de núcleo necesarios. Aunque actualmente también necesitará pasar -audiodev pa,id=pa -device sb16,audiodev=pa . Esto se solucionará pronto.