FedoraThis forum is for the discussion of the Fedora Project.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Howdy fellow Fedorites :-)
I recently installed Fedora 13 on my system, and I'm still in the process of setting it up as I like.
As the FCEU and snes9x versions on rpmfusion are old (fceultra 0.98, snes without GUI), I wanted to compile my own RPMs
Everything went OK, but I found myself having to build the packages several times because of missing LDFLAGS.
I got several errors like "symbol X missing, it was found on Y so you may want to add Y to the linker flags", which I fixed by modifying & exporting LDFLAGS.
So, 2 questions:
1.- why are the LDFLAGS missing? How can I avoid having to set them up manually?
2.- There should be a way to avoid re-compiling the source and only run the rpm packaging stuff with the already built things (some option like 'don't build, only package'). how can I do that?
BTW, I can share my (pretty much hacked) .spec files if you are interested
Thanks for your reply, but that's not required. I did build the packages succesfully, I just wanted to know if there is a way to spend less time building my RPMs in the future.
It seems FCEUX is not packaged due to issues in the way the LUA library is used, and snes9x is packaged without a GUI just because the GUI used to be a fork and only in the latest version it is integrated in the official package.
Being a Slackware user I'm used to compile my own packages. Never had an issue like this before, that's why I point (maybe incorrectly) to the RPM creation process instead of the build itself. But I reused the .spec files from the rpmfusion repo (modifying them as required of course) so I also believe maybe I need to set up something else in my environment.
I used to recompile a lot of srpms from Fedora to CentOS and I understand all the problems more then well. I would spend hours recompiling the bunch of dependencies only to find that one of the deep under requires newer system package that would endanger the stability of system it self, then I would lower the version used and tried again.
Every creation of rpm forces the compilation of sources, so if anything is changed it will be in rpm as it should be. What rpm does is watch what "make install" would do and use those file in binary rpm.
Run
Quote:
man rpmbuild
to see what options you want (-ba to -bs) to use. But it is better to use .spec file to set everything up once, and be reused times and times again. Here is excellent site for rpm's: http://www.rpm.org/max-rpm/ . Everything you would do manually better add to chapters (like postinstall or preinstall, etc..).
Every creation of rpm forces the compilation of sources, so if anything is changed it will be in rpm as it should be.
yes and no. Yes, because if something changes in the source, there should be a rebuild.
But mainly no as sometimes you can even change something that does not require all the source files to be rebuilt, so at least some of the already built pieces can be reused. Also, if the compilation is successful and my spec file fails in the packaging step, doing a full rebuild is a waste of time.
Quote:
Originally Posted by DrLove73
What rpm does is watch what "make install" would do and use those file in binary rpm.
I understood that part, src2pkg and the slackbuilds do the same thing in Slackware :-)
Quote:
Originally Posted by DrLove73
Run to see what options you want (-ba to -bs) to use. But it is better to use .spec file to set everything up once, and be reused times and times again. Here is excellent site for rpm's: http://www.rpm.org/max-rpm/ . Everything you would do manually better add to chapters (like postinstall or preinstall, etc..).
Tips are always welcome, and thanks for the link :-) I have read something about --short-circuit but haven't found yet a good description of how to use it, I think that option is (at least partially) what I'm looking for
yes and no. Yes, because if something changes in the source, there should be a rebuild.
But mainly no as sometimes you can even change something that does not require all the source files to be rebuilt, so at least some of the already built pieces can be reused. Also, if the compilation is successful and my spec file fails in the packaging step, doing a full rebuild is a waste of time.
I am not writing about what and how it SHOULD be, but what happens when you run
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.