First try

Wow! That’s great!

I am now trying to package a computer algebra system Open Reduce.

So far there is little progress. While I am close to make it finish the building process, I am not sure what the result should I expect given that I disabled half of the spec file due to errors in the course of building.

This is original SPEC file: ALT Linux Sisyphus - ����� reduce

This is my SPEC file: https://api.opensuse.org/public/source/home:Ansus/reduce/reduce.spec

And this is the build log: https://build.opensuse.org/package/rawlog?arch=x86_64&package=reduce&project=home%3AAnsus&repository=openSUSE_11.2

The OBS (such as rpm) expects a tarball with the sources and a .spec file that describes how to build it.

Hi
Your probably better off unpacking this src rpm and inspecting and
modifying for openSUSE;
http://www.damtp.cam.ac.uk/linux/sl/damtp/5x/SRPMS/openreduce-20091021-1.csl.sl5x.src.rpm


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 7 days 19:19, 4 users, load average: 1.38, 1.34, 1.00
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

BTW what about the UPP package? Will you submit it to main or to Packman?

Hi
I have no interest in doing that :wink: grab the files from my repo and
build on your own build service repository and I will drop from mine. I
only built as an example for you…


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 8 days 11:30, 4 users, load average: 0.17, 0.08, 0.08
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

I did but you packaged quickly and with highest quality. I never will be able to do so… Any my requests were rejected by Packman team so I had only one choice - try to do myself (without any success).

Hi
That’s why we have the openSUSE forum :slight_smile: We might be volunteers but we
aim to please. If you want me to maintain it I will, all I ask is for
you to keep an eye out for a new release and advise me so I can update.
Look in the changelog for my contact email :wink: There are a few other
users whom I do this for…


Cheers Malcolm °¿° (Linux Counter #276890)
openSUSE 11.3 Milestone 3 (i586) Kernel 2.6.33-5-desktop
up 1 day 12:49, 2 users, load average: 0.37, 0.14, 0.03
ASUS eeePC 1000HE ATOM N280 1.66GHz | GPU Mobile 945GM/GMS/GME

Of course :slight_smile: The main problem is packaging, not maintaining, so I can try to maintain packages myself. It won’t be bad if the package to be moved to the main or edu repo with me assigned as maintainer.

I have made an approximate list of packages I want to see in SUSE here: List of good software missing in OBS and Packman repository - openSUSE-Community and now is following this list. There are applications which are relatively easy to package and others which are very difficult. Some apps are pure Java archives.

By the way I have tried to make Openreduce as you advised but this is what I get during install phase (build phase is ok):

make: *** No rule to make target `/usr/src/packages/BUILD/reduce-algebra-20091021/cslbuild/x86_64-unknown-linux-gnu/lib/libFOX-1.6.a', needed by `csl'.  Stop.

Also:

g++ -DPACKAGE_NAME=\"fox\" -DPACKAGE_TARNAME=\"fox\" -DPACKAGE_VERSION=\"1.6.21\" -DPACKAGE_STRING=\"fox\ 1.6.21\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"fox\" -DVERSION=\"1.6.21\" -DX_DISPLAY_MISSING=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_SYS_WAIT_H=1 -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDLIB_H=1 -DHAVE_UNISTD_H=1 -DHAVE_GETPAGESIZE=1 -DHAVE_MMAP=1 -DHAVE_UNISTD_H=1 -DHAVE_SYS_PARAM_H=1 -DHAVE_SYS_SELECT_H=1 -DHAVE_LIBDL=1 -DHAVE_LIBRT=1 -DHAVE_TERMIOS_H=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_CFMAKERAW=1 -DHAVE_VSSCANF=1 -DHAVE_VSNPRINTF=1 -DHAVE_STRTOLL=1 -DHAVE_STRTOULL=1 -DHAVE_LIBDL=1 -I. -I/usr/src/packages/BUILD/reduce-algebra-20091021/csl/fox/utils   -I/usr/X11R6/include  -I/usr/X11R6/include  -I/usr/include/freetype2 -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables  -DHAVE_XFT_H=1   -DFOX_THREAD_SAFE=1 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_GNU_SOURCE -O2  -DNDEBUG  -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables  -DHAVE_XFT_H=1   -DFOX_THREAD_SAFE=1 -D_POSIX_PTHREAD_SEMANTICS -D_REENTRANT -D_GNU_SOURCE -O2  -DNDEBUG -c -o reswrap.o /usr/src/packages/BUILD/reduce-algebra-20091021/csl/fox/utils/reswrap.cpp
/usr/src/packages/BUILD/reduce-algebra-20091021/csl/fox/depcomp: line 571: exec: g++: not found
gmake[3]: *** [reswrap.o] Error 127
gmake[2]: *** [install-recursive] Error 1
gmake[1]: *** [include/fox-1.6/fxver.h] Error 2

Seems cannot find g++?

Ansus wrote:
> I have made an approximate list of packages I want to see in SUSE here:
> ‘List of good software missing in OBS and Packman repository -
> openSUSE-Community’ (http://tinyurl.com/ycbxo4n)

i am impressed…good work!!


palladium

Hi
You need to add gcc-c++ to the BuildRequires. Thats an impressive list
of applications. You need to pick on some of the easier ones, also
ensure you check the license requirements…


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 11:30, 3 users, load average: 1.02, 0.81, 0.62
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

You need to add gcc-c++ to the BuildRequires.

Yes, I have already resolved this, but do not know what top do with the other message.

Hi
You need to build the fox16 package, now OBS make this easy because you
can create a link to an already built package (the ‘src’ rpm!) on the
OBS, it will then build automatically in your repository.

If you search on the obs, for libfox;
Search?

You will see there is no src rpm, so drop the lib and search on fox and
you will see a src rpm called fox16 residing in X11:FOX these are
the two things you need.

Now back to your OBS project and you will see an item at the the bottom
of the Packages+ list saying [Link Package from other Project], follow
that link;

Name of original project: X11:FOX
Name of package in original project: fox16

Press the create link and what for it to build :slight_smile:

Since you need the “<name>.a” file you need to add a BuildRequires to
fox16-devel-static which will have the library file it’s after.


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 14:35, 3 users, load average: 0.30, 0.60, 0.71
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

I tried to include fox16 and fox16-devel in the buildreq but this does not help. Probably reduce should be changed so it does not try to build FOX itself, but rely on already existing one.

Fox16 already included in any OpenSUSE version in OBS. Why should I compile it inside my own project?..

Hi
So was the error the same?

Not sure what you mean here, does reduce have it’s own fox version, or
do you mean why you need to link to another fox version and build in
your own repository?


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 1 day 9:42, 3 users, load average: 0.16, 0.21, 0.10
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

So was the error the same?

Yes.

This is the spec which specifies fox and fox-devel as buildreq:
https://build.opensuse.org/package/view_file?file=openreduce.spec&package=reduce&project=home%3AAnsus

And here is the build log with the error:
https://build.opensuse.org/package/live_build_log?arch=x86_64&package=reduce&project=home%3AAnsus&repository=openSUSE_11.2

Hi
You need to specify the options in your configure command, from the
build log;


configure: /bin/sh /usr/src/packages/BUILD/reduce-algebra-20091021/csl/cslbase/configure
'--host=x86_64-unknown-linux-gnu' '--build=x86_64-unknown-linux-gnu'
'--target=x86_64-suse-linux' '--program-prefix=' '--prefix=/usr'
'--exec-prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin'
'--sysconfdir=/etc' '--datadir=/usr/share' '--includedir=/usr/include'
'--libdir=/usr/lib64' '--libexecdir=/usr/lib' '--localstatedir=/var'
'--sharedstatedir=/usr/com' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--prefix=/usr/reduce-20091021-csl'
'--with-csl' 'build_alias=x86_64-unknown-linux-gnu'
'host_alias=x86_64-unknown-linux-gnu' 'target_alias=x86_64-suse-linux'
'--with-build=x86_64-unknown-linux-gnu'
--with-fox=/usr/src/packages/BUILD/reduce-algebra-20091021/cslbuild/x86_64-unknown-linux-gnu
--with-fox-pending=yes --with-build=x86_64-unknown-linux-gnu

On you local machine, unpack the source and in the directory of the
unpacked source, run the command ./configure --help to see what manual
commands need to be added to your spec file to build. (Not sure, but I
always use %{_prefix} etc for /usr and such).

You would then specify -with-fox=%{_includedir}/<fox16>? or where ever
the ‘a’ file is, you can open the rpm with file-roller on Gnome and
browse the archive to see the location.


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 1 day 12:26, 3 users, load average: 0.10, 0.19, 0.13
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

Hi
I’ve built the wings 3D one and you should find it here;
http://software.opensuse.org/search?baseproject=ALL&p=1&q=wings


Cheers Malcolm °¿° (Linux Counter #276890)
SUSE Linux Enterprise Desktop 11 (x86_64) Kernel 2.6.27.45-0.1-default
up 6 days 13:38, 4 users, load average: 0.30, 0.39, 0.39
GPU GeForce 8600 GTS Silent - CUDA Driver Version: 190.53

Thank you very much! :slight_smile:

I just filled a request they to add upp in OpenSUSE Edu https://bugzilla.novell.com/show_bug.cgi?id=590045 . Don’t know if this is the proper procedure.

BTW, what would you advise about packaging Java applications?