- Obtener los archivos necesarios para compilar un programa cliente de la biblioteca con MinGW. Esto incluye cabeceras, objetos y dlls. Lograr compilar y ejecutar un ejemplo con estos archivos. Más...
- Armar una carpeta con lo mínimo necesario y modificar la configuración del proyecto para que busque esa carpeta en un ruta relativa a la instalación de ZinjaI. Más...
- Generar el índice de autocompletado, configurarlo en el proyecto, agregar un botón para acceder fácilmente a la referencia, y guardar todo eso como template de proyecto. Más...
Lo primero es crear en algún lado una carpeta para poner junto todo lo que necesita el complemento. En esa carpeta vamos a reproducir la estructura de directorios de una instalación de ZinjaI. Siguiendo con el ejemplo de OpenCV, sería:
- Crear una carpeta "OpenCV" en algún lado, por ejemplo el escritorio.
- Copiar los archivos de la biblioteca que vayamos a necesitar (binarios, cabeceras, documentación, etc). Para esto, creamos una subcarpeta "MinGW", y allí copiamos la subcarpeta OpenCV que habíamos creado antes en el MinGW de ZinjaI (probablemente esté en "C:\archivos de programa (x86)\zinjai\MinGW\OpenCV").
- Copiar el índice de autompletado. Para esto creamos una carpeta "autocomp" y copiamos allí el archivo del índice. El índice que generamos antes estará en una carpeta llamada "zinjai" (o ".zinjai" en MacOS y GNU/Linux) que se crea en el home del usuario. Por ejemplo, si estamos en Windows 7 y el usuario se llama Zaskar, estará probablemente en "C:\users\zaskar\zinjai". Allí, entre archivos de configuración y temporales habrá una subcarpeta "autocomp" con los índices que hallamos generado.
- Copiar el template de proyecto. Para eso creamos una subcarpeta "templates". Las plantillas de proyecto están en la misma carpeta "zinjai" que los índices de autocompletado, pero en una subcarpeta llamada (cómo no) "templates". Si son plantillas de proyecto serán una carpeta cada una, si son plantillas de programa simple serán solo un archivo de extensión .tpl (sería buen detalle si se animan crear también el template de programa simple).
Ahora vamos a la carpeta donde instalamos ZinjaI y buscamos un programa llamado "complement.exe". Al abrirlo, veremos una ventana que nos pide algunos pocos campos:
- Directory with files to be included: El directorio que acabamos de crear y que tiene todo lo necesario.
- Complement's description: hay dos campos para descripciones, una en español y una en inglés. Esta es la descripción que aparece cuando desde ZinjaI iniciamos la instalación del complemento.
- Required ZinjaI version: qué versión mínima de ZinjaI debe tener el usuario para poder utilizar el complemento. Pueden abrir los archivos de proyecto con algún editor de texto y buscar el número donde diga "version_required=....". Ése número va allí. No podrán instalar el complemento quienes tengan versiones anteriores de ZinjaI. En este caso, por ejemplo, la mínima versión será al menos 20131122, ya que las versiones anteriores no soportaban el campo de variables de entorno en las opciones de ejecución del proyecto.
- Requires closing ZinjaI for correct instalation: si se necesita cerrar ZinjaI durante la instalación. Generalmente no, solo será necesario si reemplazamos archivos de ZinjaI, pero estos complementos usualmente agregan, no reemplazan. Ese campo estaba pensado para distribuir como complementos las versiones de prueba de ZinjaI y/o actualizaciones.
- Requires restarting Zinjai after installation: Si se activa, le avisará al usuario que deberá reiniciar ZinjaI luego de la instalación. En general es buena idea, ya que puede que ZinjaI no reconozca la nueva plantilla hasta que no se reinicie.
- Ouput file: el nombre del archivo de complemento que generará. Mi nomenclatura suele ser: "zinjai-add-XXX-YYY-ZZZ.zcp", donde XXXX será el nombre de la biblioteca en minúsculas, YYY será la abreviación de tres letras del sistema operativo para el cual está pensado, y ZZZ será la versión del mismo. Por ejemplo, en este caso podría ser "zinjai-add-opencv2-w32-20131123.zcp".
Este post es continuación de Creación de complementos. Paso 2: extras.
No hay comentarios:
Publicar un comentario