fudaming 发表于 2004-3-30 11:59:22

高手们,帮帮忙。编译kdepim有问题。

我想自己打上knode的补丁,又不想一行一行的改,看到src.rpm解开以后本来就有几个补丁文件,于是我就想能不能rpmbuild的时候,自动进行。
我spec文件中看到这么几行

Source: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/%{name}-%{version}.tar.bz2
Source1: korganizerrc

Patch1: kde-libtool.patch
Patch2: kdepim-3.1.95-misc.patch
Patch3: knode-3.2.0-ChineseGroup.patch##我加上的。

Obsoletes: korganizer
Obsoletes: kpilot

于是我就加上一行。

但是rpmbuild -ba的时候却只出来这样的信息。

+ /bin/chmod -Rf a+rX,g-w,o-w .
+ echo 'Patch #1 (kde-libtool.patch):'
Patch #1 (kde-libtool.patch):
+ patch -p1 -b --suffix .libtool -s
+ '[' -x '/usr/bin/autoconf-2.5?' ']'
+ '[' -x '/usr/bin/autoheader-2.5?' ']'
+ '[' -x /usr/bin/aclocal-1.5 ']'
+ ln -s /usr/bin/aclocal-1.5 aclocal
+ '[' -x /usr/bin/automake-1.5 ']'
+ ln -s /usr/bin/automake-1.5 automake
++ pwd
+ export PATH=/usr/src/redhat/BUILD/kdepim-3.2.1:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
+ PATH=/usr/src/redhat/BUILD/kdepim-3.2.1:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin
+ make -f admin/Makefile.common cvs
*** Creating acinclude.m4
*** Creating list of subdirectories
*** Creating Makefile.am


补丁似乎没打上。

fudaming 发表于 2004-4-10 23:38:11

挖哈哈,终于找到方法了,最后打上了补丁,knode也可以用了。感谢magic小组的无私奉献。

问题的关键在于补丁,我拆开了formagic1.2pre6的kdepim3.2.1.0.1,找到了正确的补丁,在spec文件里加进去,就可以正常编译了。

fudaming 发表于 2004-4-10 23:43:34

补丁如下,spec文件照下面修改

%define debug 0

%define final 0
%define rpm_clean 1

%define qt_version 3.3.1
%define arts_version 1.2.1

%define libtool 1

Version: 3.2.1
Release: 0.1
Name: kdepim
Summary: PIM (Personal Information Manager) for KDE
Prefix: /usr
Epoch: 6
Group: Applications/Productivity
License: GPL
Icon: kde-icon.xpm
BuildRoot: %{_tmppath}/%{name}-buildroot
URL: http://www.kde.org

Source: ftp://ftp.kde.org/pub/kde/stable/%{version}/src/%{name}-%{version}.tar.bz2
Source1: korganizerrc

Patch1: knode-chinese-support.patch
Patch2: kde-libtool.patch
Patch3: kdepim-3.1.95-misc.patch

Obsoletes: korganizer
Obsoletes: kpilot
Obsoletes: %{name}-pilot
Obsoletes: %{name}-cellphone
Obsoletes: karm
Obsoletes: knotes

Provides: %{name}-pilot
Provides: %{name}-cellphone
Provides: karm
Provides: knotes

Prereq: /sbin/ldconfig

Requires: kdebase >= 6:%{version}

BuildRequires: kdebase-devel >= 6:%{version}
BuildRequires: kdelibs-devel >= %{version}
BuildRequires: arts-devel >= %{arts_version}
BuildRequires: qt-devel >= %{qt_version}
BuildRequires: zlib-devel

%ifarch %{ix86} alpha ppc x86_64
BuildRequires: pilot-link-devel >= 0.11
%endif

%description
A PIM (Personal Information Manager) for KDE.

%package pilot
Summary: KDE support for synchronizing data with a Palm(tm) or compatible PDA
Group: Applications/Productivity
Requires: %{name} = %{epoch}:%{version}-%{release}

%description pilot
KDE support for synchronizing data with a Palm(tm) or compatible PDA.

%package cellphone
Summary: KDE support for synchronizing data with cellphones
Group: Applications/Productivity
Requires: %{name} = %{epoch}:%{version}-%{release}

%description cellphone
KDE support for synchronizing data with cellphones.
Install %{name}-cellphone if you want to use %{name} and have a cellphone.

%package -n karm
Summary: Time tracking tool
Group: Applications/Productivity

%description -n karm
KArm - Punjambi language for "work" - tracks time spent on various tasks.
It is useful for tracking hours to be billed to different clients.

%package -n knotes
Summary: Post-It notes on the desktop
Group: Applications/Productivity

%description -n knotes
KNotes allows you to place Post-It notes on your desktop.
In addition to serving as a reminder, KNotes can mail and print your notes,
and accept drag and drop even from remote sites.

%package devel
Summary: Development files for kdepim
Group: Development/Libraries
Requires: %{name} = %{epoch}:%{version}-%{release}
Requires: kdelibs-devel >= 6:%{version}

%description devel
Development files for %{name}.
Install %{name}-devel if you want to write or compile %{name} plugins.

%prep
%setup -q

%patch1 -p1 -b .libtool

%ifarch ia64 s390 s390x
rm -rf kpilot doc/kpilot
%endif

# Workaround for legacy auto* tools
%if %{libtool}
[ -x /usr/bin/autoconf-2.5? ] && ln -s /usr/bin/autoconf-2.5? autoconf
[ -x /usr/bin/autoheader-2.5? ] && ln -s /usr/bin/autoheader-2.5? autoheader
[ -x /usr/bin/aclocal-1.5 ] && ln -s /usr/bin/aclocal-1.5 aclocal
[ -x /usr/bin/automake-1.5 ] && ln -s /usr/bin/automake-1.5 automake
export PATH=`pwd`:$PATH
make -f admin/Makefile.common cvs
%endif

%build
unset QTDIR || : ; . /etc/profile.d/qt.sh
FLAGS="$RPM_OPT_FLAGS -D_GNU_SOURCE -DNDEBUG -UDEBUG"
export KDEDIR=%{prefix}
export CFLAGS="$FLAGS "
export CXXFLAGS="$FLAGS -DQT_THREAD_SUPPORT -fno-use-cxa-atexit"

%configure \
   --disable-rpath \
%if %{final}
   --enable-final \
%endif
   --with-qt-libraries=$QTDIR/lib \
   --includedir=%{prefix}/include/kde

make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT

make DESTDIR=$RPM_BUILD_ROOT install

# Make symlinks relative
mkdir -p $RPM_BUILD_ROOT%{prefix}/share/doc/HTML/en/common
pushd $RPM_BUILD_ROOT%{prefix}/share/doc/HTML/en
for i in *; do
   [ -d $i -a -L $i/common ] && (cd $i && ln -nfs ../common . && cd ..)
done
popd

cp %{SOURCE1} $RPM_BUILD_ROOT%{prefix}/share/config/

%post -p /sbin/ldconfig

%postun -p /sbin/ldconfig

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%config %{_datadir}/config/*
%doc %{_docdir}/HTML/en/*
%{_bindir}/*
%{_libdir}/*.so.??*
%{_libdir}/*.la
%{_libdir}/*.so
%{_libdir}/kde3/*
%{_datadir}/apps/*
%{_datadir}/autostart/*
%{_datadir}/icons/*/*/*/*
%{_datadir}/services/*
%{_datadir}/servicetypes/*
%{_datadir}/applications/kde/*
%{_datadir}/applnk/Applications
%{_datadir}/applnk/Utilities
%{_datadir}/applnk/.hidden/*
%{_datadir}/config.kcfg/*
%{_datadir}/mimelnk/application/*

%files devel
%defattr(-,root,root)
%{_includedir}/kde/*
%{_libdir}/*.so.?

%changelog
* Sat Mar 06 2004 Than Ngo <[email protected]> 6:3.2.1-0.1
- 3.2.1 release

* Mon Feb 02 2004 Than Ngo <[email protected]> 6:3.2.0-0.1
- 3.2.0 release

* Wed Jan 21 2004 Than Ngo <[email protected]> 6:3.1.95-0.1
- KDE 3.2 RC1

* Thu Dec 11 2003 Than Ngo <[email protected]> 6:3.1.94-0.2
- fixed file list

* Mon Dec 01 2003 Than Ngo <[email protected]> 6:3.1.94-0.1
- KDE 3.2 Beta2

* Thu Nov 27 2003 Than Ngo <[email protected]> 6:3.1.93-0.2
- get rid of rpath

* Thu Nov 13 2003 Than Ngo <[email protected]> 6:3.1.93-0.1
- KDE 3.2 Beta1
- cleanup

* Tue Sep 30 2003 Than Ngo <[email protected]> 6:3.1.4-1
- 3.1.4

* Wed Aug 13 2003 Than Ngo <[email protected]> 6:3.1.3-3
- fix build problem with gcc 3.3

* Mon Aug 11 2003 Than Ngo <[email protected]> 6:3.1.3-2
- rebuilt

* Sat Aug 09 2003 Than Ngo <[email protected]> 6:3.1.3-1
- 3.1.3

* Wed Jun 25 2003 Than Ngo <[email protected]> 3.1.2-5
- rebuilt

* Sun Jun8 2003 Tim Powers <[email protected]> 6:3.1.2-4.1
- added epoch to versioned requires where needed
- built for RHEL

* Wed Jun 04 2003 Elliot Lee <[email protected]>
- rebuilt

* Tue May 20 2003 Than Ngo <[email protected]> 3.1.2-3
- dependencies issue

* Wed May 14 2003 Than Ngo <[email protected]> 3.1.2-1
- 3.1.2

* Wed Apr 23 2003 Than Ngo <[email protected]> 3.1.1-2
- enable libtool

* Thu Mar 20 2003 Than Ngo <[email protected]> 3.1.1-1
- 3.1.1

* Mon Feb 24 2003 Elliot Lee <[email protected]>
- debuginfo rebuild

* Fri Feb 21 2003 Than Ngo <[email protected]> 3.1-4
- get rid of gcc path from dependency_libs

* Tue Feb 11 2003 Than Ngo <[email protected]> 3.1-3
- add missing build dependency, #84027

* Sat Feb1 2003 Than Ngo <[email protected]> 3.1-2
- fix segfault #83194

* Tue Jan 28 2003 Than Ngo <[email protected]> 3.1-1
- 3.1 release
- cleanup specfile

* Thu Jan 23 2003 Tim Powers <[email protected]> 6:3.1-0.3
- rebuild

* Tue Jan 14 2003 Thomas Woerner <[email protected]> 3.1-0.2
- rc6
- removed size_t check
- exclude ia64

* Fri Nov 29 2002 Than Ngo <[email protected]> 3.1-0.1
- get rid of sub packages

* Mon Nov 25 2002 Than Ngo <[email protected]> 3.1-0.0
- update to 3.1 rc4
- remove a patch file, which is now in new upstream

* Sat Nov9 2002 Than Ngo <[email protected]> 3.0.5-1
- update to 3.0.5

* Wed Nov6 2002 Than Ngo <[email protected]> 3.0.4-2
- fix some build problems

* Tue Oct 15 2002 Than Ngo <[email protected]> 3.0.4-1
- 3.0.4

* Sun Oct6 2002 Than Ngo <[email protected]> 3.0.3-4
- Fixed holiday plugin (bug #64750, #63438)
- Added more buildrequires/equires (bug #56282,#73996)

* Mon Sep2 2002 Than Ngo <[email protected]> 3.0.3-3
- Added missing icons

* Thu Aug 22 2002 Than Ngo <[email protected]> 3.0.3-2
- rebuild against new pilot-link

* Mon Aug 12 2002 Than Ngo <[email protected]> 3.0.3-1
- 3.0.3
- Fixed a bug in clock applet

* Tue Aug6 2002 Than Ngo <[email protected]> 3.0.2-4
- build against pilot-link-0.11.2
- desktop files issue

* Tue Jul 23 2002 Than Ngo <[email protected]> 3.0.2-3
- Added fix to build against qt 3.0.5
- build using gcc-3.2-0.1

* Sat Jul 20 2002 Than Ngo <[email protected]> 3.0.2-2
- fix desktop files issue
- rebuild against new pilot-link

* Tue Jun 25 2002 Than Ngo <[email protected]> 3.0.1-1
- 3.0.1
- fixed bug #67303

* Fri Jun 21 2002 Tim Powers <[email protected]>
- automated rebuild

* Thu May 23 2002 Tim Powers <[email protected]>
- automated rebuild

* Tue Apr 16 2002 Bernhard Rosenkraenzer <[email protected]> 3.0.0-3
- Rename libraries

* Wed Apr 10 2002 Bernhard Rosenkraenzer <[email protected]> 3.0.0-2
- Fix #61901

* Fri Mar 29 2002 Than Ngo <[email protected]> 3.0.0-1
- final

* Tue Jan 22 2002 Bernhard Rosenkraenzer <[email protected]> 3.0.0-0.cvs20020122.1
- Update
- Fix build on ia64

* Thu Jul 26 2001 Bernhard Rosenkraenzer <[email protected]> 2.2-0.cvs20010726.1
- Update, fixes korganizer (#50006)

* Sun May 13 2001 Bernhard Rosenkraenzer <[email protected]>
- Update to get rid of abbrowser (moved to kdebase)

* Thu Feb 22 2001 Than Ngo <[email protected]>
- add missing ldconfig in %post anf %postun again
- clean up specfile

* Wed Feb 21 2001 Than Ngo <[email protected]>
- 2.1-respin
- fix dangling symlink
- remove excludearch ia64, some hacks to build on ia64

* Tue Feb 20 2001 Bernhard Rosenkraenzer <[email protected]>
- 2.1

* Mon Feb5 2001 Bernhard Rosenkraenzer <[email protected]>
- Update

* Tue Jan 22 2001 Bernhard Rosenkraenzer <[email protected]>
- Update

* Wed Dec 20 2000 Bernhard Rosenkraenzer <[email protected]>
- Update to CVS
- Enable building kpilot
- Obsolete kpilot
- Don't exclude ia64, use -O0 on ia64
- Disable building kpilot on ia64 (compiler breakage)

* Mon Oct 23 2000 Bernhard Rosenkraenzer <[email protected]>
- 2.0 final

* Wed Oct4 2000 Bernhard Rosenkraenzer <[email protected]>
- 2.0

* Sun Oct1 2000 Bernhard Rosenkraenzer <[email protected]>
- new CVS
- fix installation of fonts

* Sat Sep 23 2000 Bernhard Rosenkraenzer <[email protected]>
- new CVS snapshot
- fix up spec file

* Wed Aug 23 2000 Bernhard Rosenkraenzer <[email protected]>
- get rid of the 3d-screensavers package - now that qt-GL is part of qt,
there's no need to keep them separate to avoid the dependency.

* Mon Aug 21 2000 Than Ngo <[email protected]>
- fix gnome-session so that KDE2 can be started from gdm
- pam/kde2 instead pam/kde to avoid problem with KDE1
- don't requires qt-GL, It's now in qt

* Sun Aug 20 2000 Than Ngo <[email protected]>
- fix dependency problem with KDE1 so that KDE1 and KDE2 can be installed
at the same time
- add missing ldconfig in %post anf %postun
- fix for reading config files in /etc/X11/xdm, add Xsession to requires

* Tue Aug8 2000 Bernhard Rosenkraenzer <[email protected]>
- Fix keytable in konsole (Bug #15682)

* Sun Aug6 2000 Bernhard Rosenkraenzer <[email protected]>
- rebuild, now that kdelibs2 works on alpha
- use the same ugly hack to get kdebase to compile
- remove ksysguard on alpha (even more compiler problems)

* Fri Aug4 2000 Bernhard Rosenkraenzer <[email protected]>
- new snapshot (fixed libGL detection in CVS)

* Wed Aug2 2000 Bernhard Rosenkraenzer <[email protected]>
- move to /usr/lib/kde2
- new snapshot

* Sun Jul 23 2000 Nalin Dahyabhai <[email protected]>
- fix the --xdmdir arg to be correct (oops)

* Fri Jul 21 2000 Nalin Dahyabhai <[email protected]>
- move kdm config files from /usr/config to /etc/X11 by forcing xdmdir

* Fri Jul 21 2000 Bernhard Rosenkraenzer <[email protected]>
- new snapshot
- some fixes to spec file

* Tue Jul 18 2000 Than Ngo <[email protected]>
- rebuilt against glibc-2.1.92-14, gcc-2.96-40

* Sun Jul 16 2000 Than Ngo <[email protected]>
- use new snapshot
- disable Motif

* Tue Jul 11 2000 Bernhard Rosenkraenzer <[email protected]>
- use gcc 2.96
- new snapshot

* Sun Jul2 2000 Bernhard Rosenkraenzer <[email protected]>
- Epoch 3
- Update to current
- Use egcs++

* Fri Jun 30 2000 Bernhard Rosenkraenzer <[email protected]>
- Update (I put the fixes directly to CVS rather than collecting them
in the spec)

* Fri Jun 23 2000 Bernhard Rosenkraenzer <[email protected]>
- remove man2html; we get that from man
- new snapshot

* Tue Jun 20 2000 Bernhard Rosenkraenzer <[email protected]>
- new snapshot
- ExcludeArch ia64 for now
- remove gnome .desktop file, we get it from gnome-core now.

* Wed Apr5 2000 Bernhard Rosenkraenzer <[email protected]>
- remove dependency on xpm (now in XFree86)

* Sat Mar 18 2000 Bernhard Rosenkraenzer <[email protected]>
- new snapshot
- move it to /usr, where it belongs

* Sat Dec 25 1999 Bernhard Rosenkraenzer <[email protected]>
- Build the OpenGL screensavers, and move them to a separate package
- Improve the spec file (BuildPrereqs etc.)

* Thu Dec 16 1999 Bernhard Rosenkraenzer <[email protected]>
- remove patch #3 (obsoleted by kwin)

* Sun Oct 24 1999 Bernhard Rosenkraenzer <[email protected]>
- 2.0 CVS snapshot
- fix compilation

* Thu Sep 23 1999 Preston Brown <[email protected]>
- clean up files in /tmp from startkde
- mark doc files as such

* Tue Sep 21 1999 Preston Brown <[email protected]>
- start autorun if present in startkde
- check for configured soundcard before running sound services

* Mon Sep 20 1999 Preston Brown <[email protected]>
- made kdelnks display Name property if they are of type Link

* Thu Sep 16 1999 Preston Brown <[email protected]>
- moved png handling here (from kdelibs)
- changed low color icon directory name to locolor

* Tue Sep 14 1999 Preston Brown <[email protected]>
- added optional session management to logout dialog
- include GNOME menus

* Mon Sep 13 1999 Preston Brown <[email protected]>
- added link to /etc/X11/applnk, .directory file
- included lowcolor icon sub-package
- enable .desktop file access

* Fri Sep 10 1999 Preston Brown <[email protected]>
- customized startkde script to set up user environment if not present.
- mention kthememgr in description.

* Wed Sep 08 1999 Preston Brown <[email protected]>
- upgraded to 1.1.2 release
- kvt is back
- kde icon included
- linux console fonts included

* Thu Jul 15 1999 Preston Brown <[email protected]>
- PAM console logout problem solved.

* Mon Jul 12 1999 Preston Brown <[email protected]>
- now includes screensaver password security fix

* Fri Jun 11 1999 Preston Brown <[email protected]>
- snapshot, includes kde 1.1.1 + fixes
- kvt removed for security reasons.It is a steaming pile of...

* Mon Apr 19 1999 Preston Brown <[email protected]>
- last snapshot before release

* Fri Apr 16 1999 Preston Brown <[email protected]>
- today's snapshot makes kfm a bit nicer and some other fixes
- moved default rc files to kdesupport

* Thu Apr 15 1999 Preston Brown <[email protected]>
- SUID bit removed from konsole_grantpty -- not needed w/glibc 2.1

* Wed Apr 14 1999 Preston Brown <[email protected]>
- built with today's snapshot -- had to rebuild to fix pam problems.

* Tue Apr 13 1999 Preston Brown <[email protected]>
- new snapshot fixes mimetype video/x-flic problem

* Mon Apr 12 1999 Preston Brown <[email protected]>
- latest stable snapshot

* Fri Apr 09 1999 Preston Brown <[email protected]>
- removed bell.xpm (used to be in fvwm2-icons, don't want installer to see
- this previous connection and autoselect kdebase for upgrade).

* Tue Mar 23 1999 Preston Brown <[email protected]>
- moved gdm patch

* Mon Mar 22 1999 Preston Brown <[email protected]>
- added gdm session control file

* Fri Mar 19 1999 Preston Brown <[email protected]>
- added pam-console stuff to kde pam file

* Wed Feb 24 1999 Preston Brown <[email protected]>
- Injected new description and group.

* Mon Feb 07 1999 Preston Brown <[email protected]>
- upgraded to KDE 1.1 final.

* Tue Jan 19 1999 Preston Brown <[email protected]>
- updated macros for RPM 3.0, removed red hat logo.

* Tue Jan 05 1999 Preston Brown <[email protected]>
- re-merged from Duncan Haldane's stuff
页: [1]
查看完整版本: 高手们,帮帮忙。编译kdepim有问题。