OpenMandriva: Mageia (Mageia 9) 20/Agosto/2023 - Anuncio, Descargas.
Blogdrake recomienda descargar las imágenes de instalación (iso) vía torrent para evitar corrupción de datos, aprovechar mejor su ancho de banda y mejorar la difusión de las distribuciones.
¿Como empaqueto MySql Workbench 5.2 i386?
Hola!!!
Soy Alfchee y ya me inscribí en el mailing list de empaquetadores, he leido las primeras lecciones de empaquetamiento, pero no he empaquetado nada aún.
Debido a algunos problemas que he tenido para instalar el Workbench, y dado que no me gusta la versión 5.1 que actualmente se instala desde urpmi con los repositorios oficiales e intentado instalar el workbench que se publica en la página oficial de MySql pero no existe un paquete para mandriva, y tampoco tienen src.rpm para mandriva, solo tienen fedora, ubuntu y redhat....
traté de generar un rpm con base en el src.rpm de Redhat, usando a: rpmbuild --rebuild
Pero esto me hizo que instalara varios paquetes para compilarlo, es aún y me sigue pidiendo algunos otros paquetes que tienen nombre diferente a los utilizados por mandriva, asi que procedí a abrir el src.rpm (esto ya lo habia consultado en el foro de Soporte), y observo en el spec que los paquetes que pide son para compilación desde centos, también incluye linias diciendo vendor == suse, jeje
Los datos del software son los siguientes:
Name: mysql-workbench
version 5.2.29
URL: http://wb.mysql.com
Vendor: Oracle Corporation
License: GPL
Hasta el momento me pide los siguientes paquetes para compilarlo:
BuildRequires: pcre-devel >= 3.9
BuildRequires: libglade2-devel >= 2.0.0
BuildRequires: lua-devel >= 5.1
BuildRequires: libgnome-devel >= 2
BuildRequires: automake autoconf libtool
BuildRequires: lua-devel
BuildRequires: libzip-devel libxml2-devel
BuildRequires: libglade2-devel
BuildRequires: readline-devel
BuildRequires: python-devel >= 2.4
BuildRequires: gnome-keyring-devel
BuildRequires: boost-devel
y los paquetes problemáticos son:
%if %_vendor == suse
BuildRequires: libmysqlclient-devel
BuildRequires: Mesa
%else
BuildRequires: mysql-devel >= 5.1
%if !%{defined centos}
BuildRequires: uuid-devel
%endif
BuildRequires: gtkmm24-devel
BuildRequires: mesa-libGL-devel
%endif
%if %_vendor == suse
Requires: python-paramiko python-pexpect
%else
Requires: python-paramiko pexpect
%endif
Los dejo con todo y los if-else, para ver de donde piensa tomar esos paquetes, la pregunta es con qué paquetes de mandriva puedo sustituir estas dependencias para poder compilar el software...
veo otra opción y es un src.rpm q dice ser para mandriva, el vínculo es
pero también me pide unas paquetes que al buscarlos me dice que no existen el los repositorios.... tengo los repositorios oficiales, plf, free y non-free, los mib y los drake
bueno, pido su opinión y ayuda
A su disposición también, Alfchee
BOFH
# 109596 No lo puedes hacer
No lo puedes hacer así
rpmbuild --rebuild
Tienes que escribir el fichero spec adaptado a mandriva.
Y ejecutar rpmbuild sobre el fichero spec, no sobre ese src.rpm porque no está hecho para mandriva.
rpmbuild -ba mispec.spec
Saludos
Muy Suyo
Her DoctorBOFH
# 109599 Pon las dependencias que te den problemas
Así podremos ayudarte mejor
¿lo usas?, ¿la lees?, ¿las conoces?,Herramienta útil
Usuario
# 109655 ya traté de compilarlo, aqui los errores
bueno, después de revisar las dependencias en los spec, porque comparé el src.rpm que había encontrado para mandriva, pero este es un paquete x86_64, así que supongo los sources no funcionarán bien si trabajamos en i586, asi que modifiqué el spec que contiene el paquete src.rpm de redhat, he llenado todas las dependencias y tengo estos errores:
collect2: ld returned 1 exit status
make[4]: *** [libctemplate_wb.la] Error 1
make[4]: se sale del directorio `/home/alfchee/rpmbuild/BUILD/mysql-workbench-gpl-5.2.29-src/ext/ctemplate/ctemplate-src'
make[3]: *** [all] Error 2
make[3]: se sale del directorio `/home/alfchee/rpmbuild/BUILD/mysql-workbench-gpl-5.2.29-src/ext/ctemplate'
make[2]: *** [all-recursive] Error 1
make[2]: se sale del directorio `/home/alfchee/rpmbuild/BUILD/mysql-workbench-gpl-5.2.29-src/ext'
make[1]: *** [all-recursive] Error 1
make[1]: se sale del directorio `/home/alfchee/rpmbuild/BUILD/mysql-workbench-gpl-5.2.29-src'
make: *** [all] Error 2
error: Estado de salida erróneo de /var/tmp/rpm-tmp.52Vj7L (%build)
Errores de construcción RPM:
Estado de salida erróneo de /var/tmp/rpm-tmp.52Vj7L (%build)
------------------------------------------------------------------------------
el spec construido es el siguiente, el único paquete que no encuentro en mandriva es el libzip1-devel, por lo que pongo de requerimiento el libzip-devel y el libzip1, pueda ser eso un error.... estoy usando la instalación tal y como estaba en el spec original del archivo de redhat
%if !%{defined version}
%define version 5.2.29
%endif
%define release 1
%define edition gpl
Summary: A MySQL visual database modeling, administration and querying tool.
Name: mysql-workbench-%{edition}
Version: %{version}
Release: %{release}%{targos}
Group: Applications/Databases
Vendor: Mandriva Linux
License: GPL
URL: http://wb.mysql.com
Source: %{name}-%{version}-src.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-root
BuildRequires: libpcre-devel >= 3.9
BuildRequires: libglade2.0_0-devel >= 2.0.0
BuildRequires: liblua-devel >= 5.1
BuildRequires: libgnome2-devel >= 2
BuildRequires: automake autoconf libtool
BuildRequires: libzip-devel libzip1
BuildRequires: libxml2-devel
BuildRequires: libreadline-devel
BuildRequires: libpython2.6-devel >= 2.6
BuildRequires: libgnome-keyring-devel
BuildRequires: libboost-devel
BuildRequires: libuuid-devel
BuildRequires: libgtkmm2.4-devel
BuildRequires: libgtkmm2.4_1
BuildRequires: mesa
BuildRequires: libmesagl1-devel
BuildRequires: libmesaglu1-devel
BuildRequires: libgnome2-devel
BuildRequires: libgnome-keyring-devel
BuildRequires: libpython2.6-devel
BuildRequires: python-paramiko
BuildRequires: python-pexpect
BuildRequires: python-sqlite2
BuildRequires: mysql
BuildRequires: mysql-client
BuildRequires: libmysql-devel
BuildRequires: gcc-c++
# our old package name
Obsoletes: mysql-workbench-oss
Conflicts: mysql-workbench-oss
%description
MySQL Workbench is a modeling tool that allows you to design
and generate MySQL databases graphically. It also has administration
and query development modules where you can manage MySQL server instances
and execute SQL queries.
%prep
%setup -q -n %{name}-%{version}-src
%build
NOCONFIGURE=yes ./autogen.sh
%configure --disable-debug
make
%install
make install DESTDIR=%{buildroot}
find %{buildroot}%{_libdir}/mysql-workbench -name \*.a -exec rm {} \; -print
find %{buildroot}%{_libdir}/mysql-workbench -name \*.la -exec rm {} \; -print
for l in libpixman-1.so.0 libcairo.so.2 libatkmm-1.6.so.1 libcairomm-1.0.so.1 libgdkmm-2.4.so.1 libglibmm-2.4.so.1 libgtkmm-2.4.so.1 libpangomm-1.4.so.1 libzip.so.1 libsigc-2.0.so.0; do
cp %{_libdir}/$l %{buildroot}/%{_libdir}/mysql-workbench
/usr/sbin/prelink -u %{buildroot}/%{_libdir}/mysql-workbench/$l || true
done
%clean
rm -rf %{buildroot}
rm -rf %{_builddir}/%{name}-%{version}-src
%files
%defattr(0644, root, root, 0755)
%doc COPYING
%attr(0755,root,root) %{_bindir}/mysql-workbench
%attr(0755,root,root) %{_bindir}/mysql-workbench-bin
%dir %{_libdir}/mysql-workbench
%{_libdir}/mysql-workbench/*
%{_datadir}/applications/*.desktop
%dir %{_datadir}/mysql-workbench
%{_datadir}/mysql-workbench/*
%changelog
BOFH
# 109663 Este error es mas
Este error es mas complicado
collect2: ld returned 1 exit status
Tendría que compilarlo para darte una solución.
El error lo da en el make, y lo que abría que modificar está en estas lineas
NOCONFIGURE=yes ./autogen.sh
%configure --disable-debug
make
Hay que mirar si el autogen en necesario, revisar las opciones del configure y finalmente montar en make en funcion a todo esto.
Abre un hilo en la lista de packagers, con este ultimo error.Explica porque quieres compilar este programa y lo miro.
Saludos
Muy Suyo
Her DoctorBOFH