En primer lugar, quiero señalar que amo C ++ y soy una de esas personas que piensa que es más fácil codificar en C ++ que Java. Excepto por una pequeña cosa: bibliotecas.
En Java, simplemente puede agregar un poco de jar a la ruta de compilación y listo.
En C ++, generalmente tiene que establecer varias rutas para los archivos de encabezado y la biblioteca misma. En algunos casos, incluso tiene que usar banderas especiales de compilación. Principalmente he usado Visual Studio, Code Blocks y ningún IDE. Las 3 opciones no difieren mucho cuando se habla de usar bibliotecas externas.
Me pregunto por qué no se hizo una alternativa más simple para esto. Como tener un archivo .zip especial que tiene todo lo que necesita en un solo lugar para que el IDE pueda hacer todo el trabajo por usted configurando los indicadores de compilación. ¿Hay alguna barrera técnica para esto?
No es una barrera técnica. En Linux, su "archivo zip especial" es un paquete de desarrollo de biblioteca que instala con un administrador de paquetes, y configurar las marcas de inclusión y enlace es tan simple como agregar un par de líneas a su archivo
configure.ac
que usa pkg-config para configurar las cosas.Pkg-config también está disponible para Windows, pero las barreras culturales han impedido su adopción generalizada. Unix tiene una sólida historia de permitir la portabilidad mediante la distribución de código fuente, por lo que incluyen las herramientas de desarrollo de forma gratuita. Windows tiene una sólida historia de alentar solo la distribución binaria y cobrar a los desarrolladores por herramientas. Cuando gana dinero vendiendo bibliotecas, no tiene sentido facilitar que terceros las proporcionen.
fuente