Portando Pigz a Windows: Un viaje sorprendentemente fluido entre plataformas

2025-06-23
Portando Pigz a Windows: Un viaje sorprendentemente fluido entre plataformas

Pigz, una herramienta de compresión estilo Unix, resultó sorprendentemente fácil de portar a Windows. El artículo detalla los desafíos encontrados, como las diferencias en la biblioteca de subprocesos pthreads y las funciones dirent, y pequeñas variaciones en los nombres de las funciones de la biblioteca C. El autor utilizó inteligentemente parches de compatibilidad existentes y el sistema de construcción Premake para superar estos obstáculos. Premake simplificó la creación y el mantenimiento de los archivos de proyecto de Visual Studio, lo que resultó en una implementación exitosa de Pigz en Windows.

Leer más
Desarrollo

El desarrollador de SumatraPDF abandona std::function después de 16 años, crea su propia solución

2025-06-15
El desarrollador de SumatraPDF abandona std::function después de 16 años, crea su propia solución

Después de 16 años de desarrollo en C++ de SumatraPDF, el autor abandonó `std::function` y las lambdas debido a dificultades de depuración. Los informes de fallos eran difíciles de descifrar debido a los nombres autogenerados de las funciones lambda generadas por el compilador. Creó funciones de devolución de llamada personalizadas más simples, `Func0` y `Func1`. Aunque menos completas que `std::function`, ofrecen ventajas significativas en cuanto a la memoria y la velocidad de compilación, y son más fáciles de depurar. Esta publicación detalla el diseño e implementación de `Func0` y `Func1`, y explica por qué este enfoque se adapta mejor a las necesidades de SumatraPDF.

Leer más
Desarrollo