Overview
Examples
Screenshots
Comparisons
Applications
Download
Documentation
Tutorials
Bazaar
Status & Roadmap
FAQ
Authors & License
Forums
Funding Ultimate++
Search on this site
Search in forums












SourceForge.net Logo
Home » Developing U++ » Releasing U++ » U++ 2008.1 rpm automatic reconstruction for the rpm maintainer
U++ 2008.1 rpm automatic reconstruction for the rpm maintainer [message #17462] Sat, 16 August 2008 00:20 Go to previous message
amrein is currently offline  amrein
Messages: 278
Registered: August 2008
Location: France
Experienced Member
(UPDATED BECAUSE AT LEAST THERE ARE 2 PATCHES NEEDED TO PACK UPP 2008.1 CORRECTLY)

Note : There are binary rpm and easier instructions for rpm build here: http://www.ultimatepp.org/forum/index.php?t=msg&th=3734& amp;start=0&

Hi,

We talked about U++ rpm release. Here is a rpm .spec file. I built U++ on Mandrivalinux (www.mandriva.com).


Here how to use and test it (you run Ubuntu I guess). Install steps:

. Install the kernel devel source + virtualbox in Ubuntu (apt-get install virtualbox I guess).
. Get the Mandriva 2008.1 install CD from their website.
. Start virtualbox and set it to boot on the downloaded CD.
. Install Mandrivalinux.
. As root in Mandrivalinux, install rpm-build (sudo won't work out of the box here for security reason):

# su
# urpmi rpm-build
# urpmi freetype2-devel gtk2-devel pango-devel atk-devel cairo-devel X11-devel xft2-devel expat-devel
# exit


Now, we need to prepare the rpm build environment. You need to do this only once:

# cat > ~/.rpmrc << EOF

buildarchtranslate: i386: i586
buildarchtranslate: i486: i586
buildarchtranslate: i586: i586
buildarchtranslate: i686: i586
EOF

# cat > ~/.rpmmacros << EOF
%_topdir $HOME/rpm
%_tmppath $HOME/rpm/tmp

%_signature gpg
%_gpg_name Mandrivalinux
%_gpg_path $HOME/.gnupg
%distribution Mandrivalinux
%vendor Ultimate++ team
%packager YourName YourLastName <youremail@provider.location>
EOF

# mkdir -p ~/rpm/{BUILD,RPMS/{i586,x86_64,noarch},SOURCES,SRPMS,SPECS,t mp}


Now, we download what we need:

- First the spec file

# scp your-pc-ip:~/where-you-downloaded-the-spec-file/upp.spec ~/rpm/SPEC/

- The U++ tarball:

# scp your-pc-ip:~/where-you-downloaded-upp-src-2008.1.tar.gz/upp- src-2008.1.tar.gz ~/rpm/SOURCE/

- The .desktop patch (because there's a bug in the upp2008.1 package). See next posts to find it.

# scp your-pc-ip:~/where-you-downloaded-the-patch/upp-src-2008.1.f ix_png_name_in_desktop_file ~/rpm/SOURCE/

- The correct theide-48.png icon (because the provided one in the tarball is corrupted). See next posts to find it.

# scp your-pc-ip:~/where-you-downloaded-the-icone/theide-48.png ~/rpm/SOURCE/

So, now, you have rpmbuild ready to do its job. You have the build script (spec file). You have the tarball a patch and a png.. Let's build the rpms and install it:

# rpmbuild -ba ~/rpm/SPEC/upp.spec

To install your new rpm package:

# urpmi ~/rpm/RPMS/i586/upp-2008.1-1.i586.rpm
or
# urpmi ~/rpm/RPMS/x86_64/upp-2008.1-1.x86_64.rpm

You can than run theide from the command line or find it into Menu/Development/


Now you know out to have a rpm build system. You can use cron job to have a daily building system running. You know how to start a script at boot time to automate the build of new daily release and then send result of the build and errors and then shutdown the virtual machine (just shutdown -h now) to let the server use its processors for something else.

If not, well... do you like man page and google? Wink
I'm joking.

Have a look in the spec file. You will understand why I said there are a few disturbing things into the U++ tarball.
If you want more information about rpm build, have a look here:

http://wiki.mandriva.com/en/Development/Howto/RPM
http://wiki.mandriva.com/en/Development/Packaging

Other issue: When you run theide, their is no template available without GCC.bm. The spec file %file section doesn't have more than one icon. theide-48.png is not a valide png. The theide-48.png I added comes from the debian script (they create it manually). The desktop file doesn't need to have theide.png in the "icon=". just theide without the extention. The patch I provide fix it.

Type this to know the standard Makefiles names for paths, CFLAGS, CXXFLAGS in linux:

# rpm --eval %configure

and

# rpm --eval %makeinstall

You can now also change your Makefile accordingly.


Regards and happy coding
Amrein-Marie Christophe
  • Attachment: upp.spec
    (Size: 4.28KB, Downloaded 463 times)

[Updated on: Fri, 22 August 2008 22:50]

Report message to a moderator

 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: 2008.1 debs
Next Topic: Does the provided upp.spec works for you and on which distro?
Goto Forum:
  


Current Time: Wed May 01 14:33:32 CEST 2024

Total time taken to generate the page: 0.03006 seconds