Instalar (Compilar) Inkscape 1.1 desde código fuente en MX Linux 19

Actualización 9 Septiembre 2021.- Ya está disponible la Beta 2 de MX Linux 21 (en Testing) (basado en Debian 11 Bullseye) la cual ahora mismo estoy usando y allí está disponible para instalar Inkscape 1.1 (pronto estará lista la versión estable y en la página de MX Linux la publicarán)

Nota: También antiX 21(a esta fecha 20210909 en Beta 2) pero no se si allí se pueda instalar Inkscape 1.1


El siguiente tutorial es para instalar Inkscape 1.1 en MX Linux 19 de 32 bits que está basado en Debian 10 Buster, porque no hay una AppImage de la versión 1.1 para 32 bits

Nota: Para los usuarios de 64 bits que quieran usar la versión 1.1 sólo deben descargar la AppImage desde https://inkscape.org/es/release/all/gnulinux/appimage/)


ESTAS INSTRUCCIONES DE COMPILACIÓN PODRÍAN FUNCIONAR EN OTROS LINUX

Como estoy haciendo este tutorial en MX Linux 19 de 32 bits que está basado en Debian 10 Buster, en otros sistemas operativos basados en éste podría funcionar, como son: Deepin, KaliSparkyParrotTailsQ4OSPureOSVoyager LiveVolumioRaspbianWhonixSlaxSteamOSAV Linux,  SolydXK,  PardusProxmoxAcademic GNU/LinuxUnivention Corporate ServerDebian Edu/Skolelinux, antiX 19, etc

INSTRUCCIONES

Si tenía instalado Inkscape desinstalarlo, ponga en una terminal:

sudo apt remove inkscape



DEPENDENCIAS PARA GCC 9.3.0 INKSCAPE 1.1

Copie las siguientes 18 líneas a una terminal y ejecútelas con ENTER:

sudo apt-get install build-essential cmake intltool pkg-config libtool ccache \
doxygen git clang-format clang-tidy jq clang-tools libpotrace-dev libcdr-dev \
liblcms2-dev libwpg-dev libvisio-dev cython libgtest-dev wget python3-dev \
libart-2.0-dev libaspell-dev libblas3 liblapack3 libcdr-dev libdouble-conversion-dev \
libgc-dev libgdl-3-dev libglib2.0-dev libgtk-3-dev libgtkmm-3.0-dev libgspell-1-dev \
libgtkspell3-3-dev libhunspell-dev libjemalloc-dev liblcms2-dev libmagick++-dev \
libpango1.0-dev libpng-dev libpotrace-dev libreadline-dev librevenge-dev \
libsigc++-2.0-dev libsoup2.4-dev libvisio-dev libwpg-dev libxslt1-dev python-lxml \
zlib1g-dev google-mock fonts-dejavu jq python-yaml clang-tools software-properties-common \
libart-2.0-dev libaspell-dev libblas3 liblapack3 libboost-dev libboost-filesystem-dev \
libboost-python-dev libcdr-dev libdouble-conversion-dev libgdl-3-dev libglib2.0-dev \
libgsl-dev libgtk-3-dev libgtkmm-3.0-dev libgtkspell3-3-dev libhunspell-dev \
libjemalloc-dev liblcms2-dev libmagick++-dev libpango1.0-dev libpng-dev libpoppler-glib-dev \
libpoppler-private-dev libpotrace-dev libreadline-dev librevenge-dev libsigc++-2.0-dev \
libsoup2.4-dev libvisio-dev libwpg-dev libxml-parser-perl libxml2-dev libxslt1-dev \
zlib1g-dev google-mock fonts-dejavu aspell imagemagick libwmf-bin perlmagick \
python3-pip python3-numpy python3-pil python3-lxml python3-serial python3-scour \
adwaita-icon-theme




INSTALAR GCC 9.3.0


1.) Es necesario para compilar Inkscape 1.1, descargar el código fuente desde:

http://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-9.3.0/

Nota: Este 9.3.0 está en el mirror en github https://github.com/gcc-mirror/gcc/releases/tag/releases%2Fgcc-9.3.0

2.) PREREQUISITOS
luego descomprimir el archivo y entrar en el directorio en una terminal y poner:

./contrib/download_prerequisites



3.) COMPILAR
y después que se descarguen todos los prerequisitos poner:

./configure --disable-multilib --prefix=/usr
make -j 4
make install


Explicación.- Hay algo importante de explicar aquí acerca de por qué he configurado la instalación a /usr, eso es porque si no se pone esa línea "--prefix=/usr" la instalación se haría en /usr/local y allí el ejecutable se instalaría en /usr/local/bin y como en el sistema operativo tenemos por defecto instalado un gcc y este tiene su ejecutable en /usr/bin pues no funcionará el gcc 0.9.3 sino el que viene instalado en su sistema operativo, esa es la razón (eso porque no podemos desinstalar nunca el gcc que viene instalado). Al hacer la instalación así como la he configurado será reemplazado el ejecutable de gcc por el que estamos compilando.


Nota:
Esta compilación puede demorar 4,5,6,7,8,9 horas o más, depende del procesador de su ordenador. Les aconsejo que dejen toda la noche haciendo esto mejor para que al día siguiente ya esté compilado. También les comento que al poner el prefix en usr esta instalación borrará los archivos del gcc que viene instalado por defecto en el Sistema Operativo

4.) VER SI SE INSTALÓ
y para ver esta versión que desde ahora se debe estar usando en el sistema:

gcc --version


5.) EXPLICACIÓN DEL ENLACE SIMBÓLICO A LIBSTDC++.SO.6
 gcc 9.3.0 (específicamente esta versión) instala una librería que después de compilado e instalado necesita Inkscape 1.1 para poder ser lanzado, la instala en:

/usr/lib/libstdc++.so.6.0.28

En MX Linux 19 de 32 bits está instalada por defecto el enlace de librería:

/usr/lib/i386-linux-gnu/libstdc++.so.6

que lleva a:

/usr/lib/i386-linux-gnu/libstdc++.so.6.0.25

Esto pues en el Sistema Operativo MX Linux 19 basado en Debian 10 Buster de 32 bits el archivo: libstdc++.so.6 en realidad es un enlace que lleva a libstdc++.so.6.0.25


6.) SOLUCION A ENLACE SIMBÓLICO CORRECTO A LIBSTDC++.SO.6
Para resolver esto y que pueda funcionar Inkscape debemos desabilitar el enlace /usr/lib/i386-linux-gnu/libstdc++.so.6 creando un backup

sudo mv /usr/lib/i386-linux-gnu/libstdc++.so.6 /usr/lib/i386-linux-gnu/libstdc++.so.6.back


y luego enlazando la librería de gcc 9.3.0 libstdc++.so.6.0.28 al nombre que necesitamos de librería: libstdc++.so.6

poner en la terminal únicamente para gcc 9.3.0 lo siguiente:

sudo ln -s /usr/lib/libstdc++.so.6.0.28 /usr/lib/i386-linux-gnu/libstdc++.so.6


Nota para 64 bits: Si alguien quiere compilar esto en 64 bits allí la ruta es /usr/lib/x86_64-linux-gnu/ y para /usr/lib/ puede que deba usar /usr/lib64 eso debe testearlo,pues yo no lo he hecho.

Nota por un caso en el futuro: Si algún día enviaran una actualización para gcc y si al momento de actualizar su sistema operativo ésta se instalara, ella borrará la que hemos hecho nosotros, así que para solucionar eso hay que entrar desde una terminal donde está la carpeta build que creamos dentro del código fuente de gcc 0.9.3 y allí poner:
sudo make install
luego usar los pasos de la "6.) SOLUCION A ENLACE SIMBÓLICO CORRECTO A LIBSTDC++.SO.6"
e igual por un caso en algún momento no funcione Inkscape, arranquenlon desde la terminal con:
inkscape
y luego si no arranca pongan:
gcc -version
para ver qué versión está instalada y si no es la que instalamos la 0.9.3 repitan: "6.) SOLUCION A ENLACE SIMBÓLICO CORRECTO A LIBSTDC++.SO.6"


Desisnstalar gcc 0.3.9

Según leí en el archivo de ayuda que viene dentro del código fuente:

/gcc/gcc-9.3.0/INSTALL/index.html

"Please note that GCC does not support ‘make uninstall’ and probably won’t do so in the near future as this would open a can of worms. Instead, we suggest that you install GCC into a directory of its own and simply remove that directory when you do not need that specific version of GCC any longer, and, if shared libraries are installed there as well, no more binaries exist that use them. "

no tiene comando de desinstalación.


COMPILANDO INKSCAPE

Descargar el código fuente de Inkscape 1.1 desde:

https://inkscape.org/es/release/all/source/archive/xz/

el nombre del archivo es:

inkscape-1.1.tar.xz

descomprimirlo y queda:

inkscape-1.1_2021-05-24_c4e8f9ed74

Nota: Si desean pueden renombrar ese nombre pues es muy largo.

y desde una terminal entrar en esa carpeta y poner una por una las siguientes cinco líneas:

mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ..
make -j 4
sudo make install


Tiempo de compilado aproximado dos horas más o menos, depende del procesador

Desinstalación

Se puede desinstalar poniendo:

sudo make uninstall

esto desde el directorio build que creamos dentro de la carpeta del código fuente de Inkscape.

APLICACIÓN FUNCIONANDO

Luego de instalado lo podemos buscar entre las aplicaciones o lanzar desde una terminal poniendo

inkscape

En la siguiente imagen está abierto:



y la siguiente imagen es de la versión:



ACERCA DEL INSTALADOR DEB

Traté de crear el deb de gcc 0.9.3 y de Inkscape 1.1 siguiendo estos pasos:

https://facilitarelsoftwarelibre.blogspot.com/2020/12/compilar-inkscape-1.0-deb-32-y-64-bits-mxlinux.html

pero no pude porque me pide un archivo rules que no se cómo crearlo, si alguno de ustedes sabe cómo hacerlo me avisan, o si hacen alguna publicación de cómo hacerlo


***********************************

CONSULTAS:


Solución: Error: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20′ not found
https://omarcerecedo.wordpress.com/2018/10/12/solucion-error-lib64-libstdc-so-6-version-glibcxx_3-4-20-not-found/

Solve the problem of version GLIBCXX_3.4.26 not found when CentOS uses gmake
https://www.programmersought.com/article/94854139306/

libstdc++.so.6: version `GLIBCXX_3.4.20' not found
https://stackoverflow.com/questions/44773296/libstdc-so-6-version-glibcxx-3-4-20-not-found/45161307

Issue with libstdc++.so.6
https://www.mathworks.com/matlabcentral/answers/329796-issue-with-libstdc-so-6

GLIBCXX_3.4.26 not found running cross-complied program on BeagleBone
https://stackoverflow.com/questions/63190229/glibcxx-3-4-26-not-found-running-cross-complied-program-on-beaglebone
Solución para el mensaje de error al lanzar Inkscape desde la terminal:
/lib/i386-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by /home/wachin/Developer/source/inkscape-1.1/build/lib/libinkscape_base.so)

No package 'bdw-gc' found
./configure: bdw-gc not found when building Inkscape from source - Super User
https://superuser.com/a/1063074/989620

Install dependencies Inkscape script
https://gitlab.com/inkscape/inkscape-ci-docker/-/raw/master/install_dependencies.sh

No package 'lcms2' found
package lcms2 was not found in the pkg-config search path
https://www.gimp-forum.net/Thread-package-lcms2-was-not-found-in-the-pkg-config-search-path?pid=15598#pid15598

Could NOT find DoubleConversion (missing: DoubleConversion_LIBRARY
cmake fails to find DoubleConversion when building on ChromeOS (#645) · Issues · Inkscape / inkscape · GitLab
https://gitlab.com/inkscape/inkscape/-/issues/645#note_267766355

Compiling Inkscape on Windows with MSYS2 - Inkscape Wiki
https://wiki.inkscape.org/wiki/Compiling_Inkscape_on_Windows_with_MSYS2

No hay comentarios.:

Publicar un comentario

Sobre mi


 Hola, soy Washington Indacochea Delgado (Wachín), la siguiente es la historia de cómo empecé a usar Ubuntu. Todo empezó hace muchos años atrás en el año 2007 cuando estaba haciendo un deber y eran como las once de la noche y estaba en la computadora en Windows XP que se había puesto muy lento, demasiado, y había estado lidiando tratando de hacer el deber desde las ocho de la noche y el deber era para el siguiente día y yo ya quería dormir, y seguí tratando de usar la computadora para terminar el deber pero no pude, y ya era pasado de las doce casi la una (luego supe que tenía un virus) y tuve que irme a dormir y yo quedé muy frustrado por lo sucedido, ¡tanto tiempo allí con esa maquina lentísima y sin poder avanzar en la tarea! ¡fue algo horrible! todo funcionaba en camara lenta, era desesperante y sin poder hacer nada y con el apuro de terminar un deber importante para la mañana siguiente (no lo pude entregar).
  Al siguiente día en la noche en la iglesia había el culto de oración, yo fui y allí le pedí a Dios que me ayudará para nunca más volver a pasar por algo así por los virus. Luego pasó medía semana y mi hermano (estudiante de informática, muy inteligente) me dió un CD con el Sistema Operativo Ubuntu 7.10 (Gutsy Gibbon liberado en Octubre del 2007), y el me dijo que a éste no le afectaban los virus, y el me enseñó a instalarlo y me explicó como usarlo. Y desde allí empecé a practicar en este sistema operativo Ubuntu y poco a poco avanzando y leyendo en los foros en español y en inglés (allí hay más información). Pero usaba en ese tiempo más Windows que Ubuntu y ya para el año 2012 cuando hice mi tesis de Ingeniería en Alimentos usaba más Ubuntu (estaba probando los sabores https://kubuntu.org, https://ubuntustudio.org, y me había quedo usando Ubuntu Studio), sin embargo en ese año para hacer mi tesis utilicé Windows porque decía entre mi: "No sea que luego no me acepten mi tesis presentándola en formato odt del LibreOffice o algo me reclamen, o tenga luego yo que pasar de odt a doc, habiendo mucha posibilidad que se mueva algo del formato y tenga que corregirlo lo cual sería horas y horas", pero desde que terminé mi tesis estaba usando casi en su totalidad Ubuntu Studio (soy una persona musical y este UbuntuStudio es también para eso, usa un Kernel de baja latencia). Bien, a la fecha puedo decir que estoy libre de los virus, pero eso si frecuentemente actualizo el Sistema Operativo pues como ya sabrán los que usan Linux esa es la manera de protegerse de posibles ataques. Y también añado que desde el año 2020 estoy usando MX Linux porque Ubuntu dejó de dar soporte a 32 bits y con ello también UbuntuStudio. A continuación les dejo con varios vídeos sobre el tema de porqué Linux es más seguro:


[Aalto Talk with Linus Torvalds (Subtitulado)] min 31:52 sobre el Kernel.

Nota: Estas ultimas dos de Red Hat las puede ver con subtítulos en español si les da clic en la Tuerca y allí lo selecciona entre los varios idiomas que tiene.
Si usted quiere saber las vulnerabilidades que van encontrando en Ubuntu puede revisar esta página:

Ubuntu security notices (usn)

está sobre entendido que una vez que las encuentren las arreglarán y el parche se lo enviarán en las actualizaciones.
Puede leer también:

SecurityTeam - Ubuntu Wiki


 A mediados del 2018 estoy usando Xubuntu 18.04 de 32 bits por la razón de que Ubuntu Studio ha dejado de dar soporte a 32 bits, no obstante para hacer música estoy usando Jack Audio Connection Kit pues he aprendido a configurarlo.

También lea sobre la Historia de esta página

Proyecto Facilitar el Software Libre en el Ecuador: Historia
https://facilitarelsoftwarelibre.blogspot.com/2019/08/historia-de-esta-pagina.html

Que Dios les bendiga