Error al iniciar Ninja IDE en Debian al cargar módulo QtWebKit

En esta entrada veremos como obtener el paquete Ninja IDE que no está incluido aún en el actual debian stable (Debian 9) y acto seguido parchear un error con QrWebKit que falla al intentar cargar este módulo.

Por supuesto esta guía conlleva ciertos riesgos (no te asustes, no tiene por que ocurrir nada) de manera que es conveniente tener claro lo que estás haciendo. Sobre todo tener claro el proceso por si en el futuro fuese necesario revertirlo, lo cual no sería más que remover 2 paquetes y eliminar un archivo concreto (el módulo que copiaremos durante la guía dentro de PyQt4).

Con todo esto lo que quiero decir que tengais un poco de precaución y consultad las dudas antes de tomar una decisión de la que no esteis seguros.

Por otro lado como es evidente nos quitamos responsabilidades ya que esto nos ha funcionado y nos funciona sin problema pero no tenemos forma ni capacidad para dar garantías absolutas (repito que es poco probable que vuestro sistema sufra con este proceso).

Solución al error de ninja-ide en Debian 9

Solución al error de ninja-ide en Debian 9

Descripción del problema para Ninja IDE

Debian 9 no incluye en estos momentos en sus repositorios el editor Ninja IDE o mejor nombrado como IDE para trabajar exclusivamente con el lenguaje de programación interpretado python.

En cuanto me puse a buscar empeñado en hacer funcionar este software me encontré que aún no estaba disponible como paquete snap ni tampoco como paquete flatpak lo cual me hizo buscarlo para compilar.

Al descargarlo de la web fallaba al iniciar, si lo tomaba de otra distribución también fallaba al iniciar.

Investigando llegué a descubrir que no existía el módulo QtWebKit (no se por que no está) que se encuentra dentro del paquete PyQt4

Obtener Ninja Ide

Tenemos unas cuantas opciones para obtener Ninja IDE:

Si me pedís a mi opinión, con descargarlo desde los repositorios oficiales para Debian Jessie es lo más seguro para mi y sería en todo caso mi primera opción.

Para ir directos a la descarga de Ninja Ide en los repositorios oficiales para Debian Jessie y pulsa sobre el mirror más cercano para descargar el paquete.

Instalar el paquete Ninja Ide descargado

Una vez descargado instalaremos el paquete.

Si teneis gdebi instalado bastará con dar 2 clicks sobre el mismo y aparecerá el instalador listo para pulsar sobre instalar.

En el caso de que no lo tengáis podéis instalarlo directamente desde un terminal cambiando vuestra ruta hacia el paquete descargado (el nombre tal vez también podrá variar) como en el siguiente ejemplo:

sudo dpkg -i ninja-ide_2.3-2_all.deb

Ahora comprobaremos que se han instalado todas las dependencias para que funcione con la siguiente orden en el terminal:

sudo apt install -f

Si quedase alguna dependencia la orden anterior nos la satisfaría.

Reparar Módulo no encontrado QtWebKit al iniciar Ninja Ide

Hasta este punto tenemos perfectamente instalado Ninja IDE incluso con su lanzador para poder accionar y comenzar la ejecución, pero comprobaremos que esto fallará.

Si queremos ver detalles describiendo el fallo que se ha generado podemos iniciarlo desde terminal y veremos el proceso de carga de módulos donde se detallará el error que existe.

Al ejecutar desde un terminal el programa con el comando:

ninja-ide

Veremos una salida similar a la siguiente:
Error al cargar QtWebKit
Para reparar esto tendremos que seguir los siguientes pasos.

Obtener el paquete PyQT4 desde Debian Jessie

Antes que nada, debemos asegurarnos de tener una dependencia no exigida. Esta se instala desde los repositorios oficiales para debian stable. Es el paquete libqtwebkit4 que se instala fácil con la siguiente orden:

sudo apt install libqtwebkit4

Ahora para terminar de resolver la dependencia de una librería vamos a ir al sitio web de paquetes para Debian Jessie de Nuevo y descargaremos un paquete, del cual solo sacaremos una librería para colocar en su sitio.

Nos dirigimos al sitio Oficial de debian, podemos llegar directamente desde aquí.

Pulsar sobre cualquier mirror (cuanto más cercano más rápido descargará) y una vez descargado es importante lo siguiente:

NO SE INSTALA ESTE PAQUETE AL COMPLETO

Pulsamos sobre botón derecho y abrimos el paquete comprimido, es decir, pulsamos con el botón derecho sobre python-qt4_4.11.2+dfsg-1_amd64.deb y lo abrimos con ark o cualquier otro programa que pueda abrir archivos comprimidos.

Una vez abierto buscamos el módulo QtWebKit.so

Añadir módulo QtWebKit dentro de PyQT4

El último paso es añadir este módulo a su lugar copiando el archivo dentro de la ruta /usr/lib/python2.7/dist-packages/PyQt4
quedando como en la siguiente imagen:
Añadir módulo QtWebKit.so

Iniciar el programa

Después de haber realizado todos los pasos anteriores podremos utilizar el programa normalmente (esperemos que sin fallos, durante el tiempo que anduve testeándolo no ocurrió ningún cuelgue ni otro comportamiento extraño)

Ejecutamos el programa y veremos que ahora si inicia en Debian 9, tal como podemos ver en la siguiente imagen:
Ninja IDE en Debian 9
A continuación os muestro un vídeotutorial donde podemos ver todo este proceso de una forma más interactiva y visual, aunque descrito aquí pueda llegar a parecer algo complejo si véis el vídeo lo entenderéis de forma más sencilla y perderá tal complejidad infundada.

Solución a Errores en Linux

Raúl Caro Pastorino

Informático, técnico en sistemas, redes, baja tensión (electricidad) y desarrollador de aplicaciones WEB. Soy un apasionado por GNU/LINUX y el software libre en general desde prácticamente el año 2001-2003 que comencé. Intento usar y trabajar siempre con código libre o abierto de forma profesional. Me apasiona la programación, la micro-electrónica, el diseño gráfico y edición multimedia. Fan de Raspberry y arduino. Programo en bash, python, php y javascript principalmente. Repositorios de código con git: https://gitlab.com/fryntiz https://github.com/fryntiz

4 comentarios:

  1. no sirve para Debian Buster, lo hice y me indica “violacion de segmento” porque ese modulo no esta en Stretch ni en Buster.

    queria aprender con Ninja-IDE pero por lo visto me tocara ser ahora un macho alfa lomo plateado, barba de leñador, o sea me tocara aprender a consola pura por medio de VIM+SPF13

    • Para debian testing no comprobamos estas cosas ya que está en constante evolución y se supone que la utilizan usuarios con más experiencia, desarrolladores o testers que son capaz de resolver esta situación de forma sencilla con cualquier editor.

      En debian estable funciona correctamente, uso bastante este programa precisamente y si existen los paquetes.

  2. Muchas gracias amigo esto me ha salvado de formatear y tener que buscar otra distribución. Me encanta debian y ninja-ide es la herramienta con la que he aprendido no quisiera dejarla.

    Funciona perfectamente sigue haciendo entradas como estas, te has ganado un suscriptor!!

  3. Muy buena macho, me acabas de salvar la vida que estaba ya para instalar otro sistema solo por este ide y esque cuando uno se hace a un programa tan bueno cuesta dejarlo ehh!!

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.