Jump to content

Building rpms from source


spiedra
 Share

Recommended Posts

I've decided I am now ready to convert sources to rpms and what better project then kde sources. I followed the How To Here, but it is not working. I've created my required folders and 2 config files, downloaded kdeaccessibility-3.3.0.tar.bz2 to the SOURCES folder. Did rpmbuild -ta kdeaccessibility-3.3.0.tar.bz2, but I getr this error:

error: Name field must be present in package: (main package)

error: Version field must be present in package: (main package)

error: Release field must be present in package: (main package)

error: Summary field must be present in package: (main package)

error: Group field must be present in package: (main package)

error: License field must be present in package: (main package)

After doing some reading, I think it has something to do with modifying the spec file. My question is, where is the spec file? Do I downloaded it? Do I extract the source and grab it from there? I know I can wait for someone to build the rpms and upgrade kde that way, but I want to get down and dirty.

Thanks for any help you guys can give me :thumbs:

Edited by spiedra
Link to comment
Share on other sites

You have to create the specfile yourself. Qchem go a hold of spec files from Mandrake somehow at one point. You could probably find the spec files for KDE and maybe modify them a bit.

 

I'll try to bug Qchem and get him in here...

Link to comment
Share on other sites

I've decided I am now ready to convert sources to rpms and what better project then kde sources. I followed the How To Here, but it is not working.

:lol:

what better project?....you mean what harder project?....of course it's not working ;)

 

have fun!

 

spec files are put in /usr/src/ :unsure: /BUILD/SPEC....or something like that....it's been a while.

 

of course, you could have run slocate and found it already ;)

Edited by bvc
Link to comment
Share on other sites

OK.

In /usr/src/RPM/SPECS/ I have to files:

fluxbox.spec and kmag.mdk.spec

Spec file for kde is obviously kmag.mdk.spec???

If I look inside that file it's empty. Do I then follow the format in the example of a spec file in the How TO and rewrite it?

Thanks guys. I'm up for a challange, but didn't know I would be choosing a hard one!!! :wall:

Maybe banging my head will help me think.

Edited by spiedra
Link to comment
Share on other sites

OK, i've figured this out. I need to google for the spec file for each of the packages, then modify them and build them. Wow, this will be tough, lol. It took me forever to build one rpm!!! Thanks!!!

Link to comment
Share on other sites

Well, what's the worst that can happen? Totally hose kde right?

If I do it succcessfully, i'll be happy to make it available to everyone.

Maybe I should install a test rpm to make sure I got it right.

Link to comment
Share on other sites

Well, after successfully building an rpm for kdeaccessibilty, I am having problems building the rpm for kdeadmin. At the end of building I get this error:

In file included from ksysv.all_cpp.cpp:11:

TopWidget.cpp: In member function `void KSVTopLevel::initActions()':

TopWidget.cpp:273: error: `setCheckedState' undeclared (first use this function)

TopWidget.cpp:273: error: (Each undeclared identifier is reported only once for each function it appears in.)

In file included from ksysv.all_cpp.cpp:20:

PreferencesDialog.cpp:31:1: warning: "MIN_SIZE" redefined

In file included from ksysv.all_cpp.cpp:10:

ServiceDlg.cpp:30:1: warning: this is the location of the previous definition

make[3]: *** [ksysv.all_cpp.o] Error 1

make[3]: Leaving directory `/home/spiedra/rpm/BUILD/kdeadmin-3.3.0/ksysv'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory `/home/spiedra/rpm/BUILD/kdeadmin-3.3.0/ksysv'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/home/spiedra/rpm/BUILD/kdeadmin-3.3.0'

make: *** [all] Error 2

error: Bad exit status from /home/spiedra/rpm/tmp/rpm-tmp.99021 (%build)

 

 

RPM build errors:

    Bad exit status from /home/spiedra/rpm/tmp/rpm-tmp.99021 (%build)

setCheckedState appears to be in relation to windows so I am not able to figure out how to perform this function as it seems to be causing the problem. Any ideas?

Link to comment
Share on other sites

Welcome to the wonderfull world of rpm building!!!

 

I think the problem there is purely due to a build from source error (for want of a better expression), have you tried building the same source code manually, eg with configure / make etc.

 

Check the Mandrake Linux wiki for some help/tips on rpm building.

Link to comment
Share on other sites

  • 3 weeks later...

Not going anywhere yet. I've decided to build the rpms for the maintanance release of kde 3.3. Reason being is because there have been many grave bugs found which has caused some people to revert back to kde 3.2. So might as well do it for a better release.

Link to comment
Share on other sites

Well Now I've started to do this (again)

And this time I actually got paste KDELIBS! WOOOO!

 

I'll post my progress here and if anyone wants rpms or to help feel free.

BTW afaik there aren't any graves bugs in KDE 3.3 itself. People just aren't upgrading properly :-D

 

Oh, and just so you guys know. I'm not adding _any_ mandrake patches to my rpms (makes it much simpler and much stabler). Which means no mandrake menu.

 

If you'd like KDE w/ mdk aptches go to grab a spec file from

http://cvs.mandrakesoft.com/cgi-bin/cvsweb.cgi/SPECS/ , a corressponding src.rpm (for 3.2) and happy hacking :-D

 

If you decide you just wanna rebuild your rpms i can help yah.

 

So far I have kdelibs, kdebase, and arts done. right now I'm working on kdemultimedia.

Edited by illogic-al
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...