Compiling inkscape : status to do
For the sake of testing inkscape 0.46 (svn version) that may import correctly visio 2003 documents (either vdx format which is an approximate xml format or SVG made by Visio 2003).- http://www.inkscape.org/
- https://sourceforge.net/project/showfiles.php?group_id=93438&package_id=99112 packages
- http://wiki.inkscape.org/wiki/index.php/MicrosoftVisio
- https://bugs.launchpad.net/inkscape/+bug/180322 ah I've got this one too, bad SVG generated by Visio :/ (appears black)
- http://blog.developpez.com/index.php?blog=14&title=un_visio_free_sous_linux&more=1&c=1&tb=1&pb=1 [fr] good synthesis of problems with visio: candidates are kivio, dia, OOo and inkscape
- http://wiki.inkscape.org/wiki/index.php/CompilingInkscape
- getting source code from subversion repository & trying to compile:
./autogen.sh shows:
checking for autoconf >= 2.52 ... yes (version 2.61)
checking for automake >= 1.10 ... yes (version 1.10)
checking for glib-gettextize >= 2.0.0 ... yes (version 2.14.1)
checking for intltool >= 0.17 ... yes (version 0.36.2)
./configure # in spec file I've got --disable-static --with-python --enable-inkboard --disable-mmx --with-gnome-print
Use Xft font database: yes Use gnome-vfs: yes Use openoffice files: yes Use MMX optimizations: no Use relocation support: no Internal Python: skipped # yes Internal Perl: skipped Enable LittleCms: yes Enable Inkboard: no # yes Enable SSL in Inkboard: no # yes Enable Poppler-Cairo: yes # yes ImageMagick Magick++: no Libwpg: no
make
seltrans.h:153: erreur: ‘SigC’ has not been declared
- http://www.linuxgraphic.org/forums/viewtopic.php?p=22722 [fr] known error
- just apply existing patch in src.rpm for it...
- 17274.
dependancies
see the .spec file below for exhaustive list of dependancies, or simply run rpmbuild -ba inkscape.specerreur: Dépendances de construction manquantes: libgc-devel >= 6.4 est nécessaire pour inkscape-0.45.1-4mdv2008.0.src gtkmm2.4-devel est nécessaire pour inkscape-0.45.1-4mdv2008.0.src libgnomeprintui-devel est nécessaire pour inkscape-0.45.1-4mdv2008.0.src gtkspell-devel est nécessaire pour inkscape-0.45.1-4mdv2008.0.src gnome-vfs2-devel est nécessaire pour inkscape-0.45.1-4mdv2008.0.src loudmouth-devel est nécessaire pour inkscape-0.45.1-4mdv2008.0.src intltool est nécessaire pour inkscape-0.45.1-4mdv2008.0.src
urpmi [all_listed_rpm_needed]
spec file for mandriva
take ftp://distrib-coffee.ipsl.jussieu.fr/pub/linux/MandrivaLinux/official/2008.0/SRPMS/main/release/inkscape-0.45.1-4mdv2008.0.src.rpm- rpm -ivh inkscape*src.rpm to have source & patches
- copy rpm/SOURCES/inkscape-0.45* as 0.46
- add svn[revision] in the version in the spec file
%define name inkscape
%define version 0.46-0.svn17274
%define rel 1
%define release %mkrel %{rel}
Name: inkscape
Summary: A vector-based drawing program using SVG
Version: %{version}
Release: %{release}
License: GPL
Group: Graphics
URL: http://inkscape.sourceforge.net/
Source: http://prdownloads.sourceforge.net/%{name}/%{name}-%{version}.tar.gz
Source1: %{name}-icons.tar.bz2
Patch0: inkscape-0.46-python_gcc412.patch
Patch1: inkscape-0.46.1-autotools.patch
Patch2: inkscape-0.46.1-sigc.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires: png-devel
BuildRequires: libxml2-devel >= 2.6.0
BuildRequires: libgc-devel >= 6.4
BuildRequires: gtkmm2.4-devel
BuildRequires: libxslt-devel >= 1.0.15
BuildRequires: libgnomeprintui-devel
BuildRequires: perl-XML-Parser
BuildRequires: gtkspell-devel
BuildRequires: gnome-vfs2-devel
BuildRequires: python-devel
BuildRequires: perl
BuildRequires: perl-devel
BuildRequires: loudmouth-devel
BuildRequires: expat-devel
BuildRequires: desktop-file-utils
BuildRequires: lcms-devel
BuildRequires: dbus-glib-devel
BuildRequires: autoconf2.5 automake
BuildRequires: intltool
Requires: python-pyxml
Requires(post): desktop-file-utils
Requires(postun): desktop-file-utils
%description
Inkscape is a SVG based generic vector-drawing program.
Inkscape uses W3C SVG as its native file format. It is therefore a very useful
tool for web designers and as an interchange format for desktop publishing.
%prep
%setup -q -a1
%patch0 -p1
%patch1 -p1 -b .autotools
%patch2 -p0 -b .sigc
sed -i 's/gc_libs=""/gc_libs="-lpthread -ldl"/' configure
%build
intltoolize --force
aclocal
automake
autoconf
%configure2_5x \
--disable-static \
--with-python \
--enable-inkboard \
--disable-mmx \
--with-gnome-print
#(peroyvind) for some weird reason -lpopt will be converted to /usr/lib/libpopt.so
# during build, hardcode real path in stead
perl -pi -e "s#-lpopt#%{_libdir}/libpopt.so#g" src/Makefile
%make
%install
rm -rf %{buildroot}
%makeinstall_std
# Menu support
install -d %{buildroot}%{_menudir}/
cat > %{buildroot}%{_menudir}/%{name} << EOF
?package(%{name}): needs=x11 \
icon="%{name}.png" \
section="Multimedia/Graphics" \
title=Inkscape longtitle="Vector graphics editor" \
command="%{name}" \
xdg="true"
EOF
sed -i -e s/inkscape.png/inkscape/ $RPM_BUILD_ROOT%{_datadir}/applications/*
desktop-file-install --vendor="" \
--remove-category="Application" \
--add-category="X-Mandriva-Multimedia-Graphics" \
--add-category="X-MandrivaLinux-CrossDesktop" \
--dir $RPM_BUILD_ROOT%{_datadir}/applications $RPM_BUILD_ROOT%{_datadir}/applications/*
# icons
install -D -m 644 %{name}-48.png %{buildroot}/%_liconsdir/%{name}.png
install -D -m 644 %{name}-32.png %{buildroot}/%_iconsdir/%{name}.png
install -D -m 644 %{name}-16.png %{buildroot}/%_miconsdir/%{name}.png
# remove .la files
rm -f %{buildroot}/%{_libdir}/inkscape/plugins/*.la
%find_lang %{name}
%post
%update_menus
%update_desktop_database
%postun
%clean_menus
%clean_desktop_database
%clean
rm -rf %{buildroot}
%files -f %{name}.lang
%defattr(-, root, root)
%doc AUTHORS ChangeLog NEWS README
%{_bindir}/*
%{_datadir}/applications/*.desktop
%{_datadir}/pixmaps/*
%{_datadir}/inkscape/
#%{_libdir}/inkscape
%{_mandir}/man1/*
%{_mandir}/*/man1/*
%{_menudir}/%{name}
%{_iconsdir}/*.png
%{_miconsdir}/*.png
%{_liconsdir}/*.png