Sé que hay DSSS
, BUD
/build, Orbit
por Jacob Carlborg y rdmd
oficial. Y solo Orbit parece estar activo. Entonces, ¿cuál de estos es más útil para construir programas D enormes y complejos con muchas dependencias? No se necesita ningún paquete, solo un ayudante agradable y claro para el proceso de compilación.El sistema de construcción real para D
Respuesta
Son también, una plantilla para su uso makefile aquí: MakefileForD
Por qué usarlo:
- fácil de usar
- el apoyo de todo el compilador
- capaz de construir tanto librería compartida y estático o ejecutable
- // compilación
un producto terminado, pero ....
DMD ya tiene un -deps flag que debe hacer auto-generar archivos make
razonablemente simple.
Definitivamente defiendo rdmd
- es una gran ayuda para envolver su compilador favorito. El uso básico de los documentos son:
rdmd [rdmd args] [compiler args] <source file>[.d] [executable args]
En todos mis proyectos D, he utilizado simplemente los scripts Bash (con Cygwin si en Windows), y ha funcionado maravillosamente. He aquí algunos de mis fragmentos favoritos:
Run
Toda la razón de ser de rdmd
es simplificar el ciclo de compilación de edición y gestión de editar plazo, y hace que bastante simple:
rdmd helloworld.d [args]
rdmd
no ejecutará ningún archivo con una marca de tiempo más reciente que la última compilación, por lo que la próxima vez que ejecute el mismo archivo fuente sin editarlo simplemente pasará al ejecutable compilado previamente.
Seleccionar Compilador
A pesar del nombre, puede utilizar la mayoría de los compiladores con rdmd
como GDC, LDC, y DMD así:
rdmd --compiler=dmd ...
Físico:
Normalmente rdmd
almacena el ejecutable y *.obj
archivos de su fuente en un directorio temporal usando tmpDir()
en rdmd
fuente - esto es básicamente algo de magia para dar rdmd
la sensación de ejecutar archivos *.d
como scripts. Puede, sin embargo, especificar el archivo de salida con la bandera -of
:
rdmd -of"helloworld.exe" helloworld.d
- 1. Solucionador de sistema lineal rápido para D?
- 2. Prueba de sistema operativo en tiempo real para dureza
- 3. ¿Cómo abordaría el uso de D en un entorno incrustado en tiempo real?
- 4. La construcción de un sistema de plugins para un nodejs basa MVC plataforma
- 5. Cómo ensamblar un sistema de construcción de hormigas multiproyecto
- 6. Necesito un marco de serialización para D
- 7. Soporte de Emacs para el lenguaje D
- 8. Soporte D para COM
- 9. ¿Cómo puedo implementar artefactos de una construcción Maven en el sistema de publicación de archivos SourceForge?
- 10. Diseño del sistema de procesamiento analítico en tiempo real
- 11. En java -D ¿qué significa la D?
- 12. Cómo configurar el área de construcción para rpmbuild por invocación
- 13. Python en un sistema de operación en tiempo real (RTOS)
- 14. Ruby Benchmark module: significados de "usuario", "sistema" y "real"?
- 15. ¿Alternativa para atrapar en D?
- 16. biblioteca de álgebra lineal para el lenguaje de programación D
- 17. ¿cómo sabe el sistema operativo el tamaño real de la memoria física?
- 18. D-Bus equivalente para Windows
- 19. ¿Por qué Java usa -D para indicar las propiedades del sistema?
- 20. ¿El rubí tiene multithreading real?
- 21. Razones para fallar una construcción
- 22. ¿Cómo hacer una llamada al sistema y leer el stdout, en D?
- 23. Formato de cadena con el formato "{0: d}". Código de formato desconocido 'd' para el objeto de tipo 'float'
- 24. Biblioteca de procesamiento de imágenes para D?
- 25. Compila el código para la compilación de versión en D
- 26. Construcción adecuada para el cuadro de diálogo Primefaces
- 27. enlaces de lenguaje MySQL para D?
- 28. HAML - si/elsif construcción
- 29. Símbolos indefinidos para arquitectura i386, ¿construcción para iOS?
- 30. recolección de basura de Java tiempo "real" es mucho más grande que el "sistema" "usuario" +
I archivos por lotes acaba de crear primero ejecutan con indicador '' -c' y -obbin/'y luego corren el enlazador en la carpeta bin –
* .bat/*. sh files - sí, está funcionando, pero algo así como una buena GUI de Visual Studio sería mejor. El simple complemento ya existe, y lo estoy usando.Dreams-dreams :) – Raxillan
Estoy bastante seguro de que puedo crear algo para manejar automáticamente todas las dependencias, permitiría tener varios métodos principales compilados en la carpeta bin y ejecutar pruebas de unidad específicas a pedido. pero realmente no tengo tiempo para eso ahora –