OpenCASCADE .deb package: call for testing!

Greetings,

Debian, Ubuntu, Linspire, Mint etc. users, please download and try out my .deb packages for OpenCASCADE at http://lyre.mit.edu/~powell/opencascade/ .

The package should be complete and usable, but is not ready for upload yet. The primary TO-DO item is to add the samples, then split it up properly; see the debian-science mailing list archives for details. Please test it hard, we want to know what works and what doesn't, what could be improved, etc.

The .dsc and .changes files are signed with my key in the Debian keyring. If you have the inclination, please build the orig.tar.gz using the build instructions in the package, and unpack it and compare with the unpacked upstream sources. I want to make sure the description is thorough and accurate, so people can verify the packaging.

I am using it now to a build a new Salomé package, which is almost ready, but has runtime issues; see the Salomé forum for details.

Sylvestre Ledru has applied for an alioth site and SVN repository, so this package will be team-maintained in the future.

Cheers,
Adam

Adam Powell's picture

Found one problem: OCC tries to load files Lexi_Expr.dat and Units.dat in $CASROOT/src/UnitsAPI/ . With these files added (by hand), Salomé seems to run fine with my OCC package.

Those files are not part of the package yet. I'll add them to -7. Are there any other such data files which OCC needs to load at runtime?

It seems these should be added to the "install" make target, along with the header files!

Dmitry Sidorov's picture

I want to make OpenCASCADE package for gentoo.
First problem is direct OpenCASCADE installer to install to temporary directory. I do not know options to make this.
To make deb some ought to do same thing. How your make auto installation to temporary directory?
Regards,
Dmitry Sidorov

Adam Powell's picture

Hello Dmitry,

The .deb package changelog first entry gives my procedure:
* Extract upstream OpenCASCADE_Linux.tgz
* Make a dir opencascade-6.2.0
* Run "java -cp [path]/Linux/setup.jar run" in that dir
* Removing the 3rdparty subdir and log.txt
* Use "tar czf"
I'll have to remove a lot more non-free stuff (documentation, triangle, etc.) to get it into Debian. It's going to take a long time to find it all. Hopefully it will get into lenny...

Meanwhile, free to use my .tar.gz file.

Arthur Magill's picture

Hi Dmitry,

There is already a Gentoo ebuild well under way. See

http://bugs.gentoo.org/show_bug.cgi?id=118656

for details. I'm sure Daniel, Alvaro and company would love some help if you have time.

Arthur

Adam Powell's picture

Wow, this is excellent! I would love to be able to share a tarball with this project (since upstream doesn't provide one), have they made one? Then we can talk sharing patches...

And have they done a thorough license audit? This will be required for a Debian upload.

-Adam

Arthur Magill's picture

Hi Adam,

Sorry, no real licence audit has been done (it's not an official Gentoo package yet) - we were waiting for you Deb guys to come onboard for that ;-)

The OCC sources were repackaged into tarballs by Thomas Thierry for FreeBSD, see this thread for details:

http://www.opencascade.org/org/forum/thread_9940/

I'm more of a user than a packager, the hard work is being done by Daniel Tourde and Alvaro Castro - they both read this forum. But yes, the Deb and Gentoo projects should certainly work together, let us know what we can do to help.

Adam Powell's picture

Hello Arthur,

I've just tiptoed into the license auditing process, and have scanned five of the 536 directories in ros/src to determine all of the copyrights, dates, etc. I'm putting everything in http://www.opennovation.org/audits/opencascade-6.2.0.txt

I'm anticipating that there will be a bunch of different copyrights, and it's going to be very time-consuming to sort them all out! As you probably know, Debian is very thorough about making sure licenses are completely documented in the package copyright file; I'm sure Gentoo is the same way. If you could enlist some help with this, e.g. from Thomas, Daniel or Alvaro, it would be very helpful.

In particular, if there are items which should be in this audit which are not in the above file, I'd appreciate hearing from you soon to avoid having to re-do any work to add, say, contributor information.

And if you know of any other sources of this information, that would be really helpful!

Thanks,
Adam

Adam Powell's picture

Hello again,

I've been able to piggyback on an earlier audit by Aurélien Jarno and Denis Barbier, along with a simple "grep" test, to put together a comprehensive copyright file for OpenCASCADE. That copyright file is at: http://www.opennovation.org/audits/opencascade-6.2-copyright.txt As a result, the work is just about ready to upload to Debian.

I'm uploading package version 6.2-2 to http://lyre.mit.edu/~powell/opencascade/ . Note I had to convert the .tar.bz2 to .tar.gz, because Debian isn't accepting bz2-based packages yet (source format 3.0), because the dpkg in stable can't unpack them. Consider this a "beta test", I'll upload -3 to Debian proper later this week.

My final to-do before -3 is to add "-release" flags to the libs so their sonames will end in 6.2, which will clarify the versioning of the libraries. This also should remove the last lintian warnings except missing man pages for /usr/bin* . [Breaking up the package more sanely using Jason Kraftcheck's scripts will come later.]

Feel free to use any and every aspect of this packaging in other projects (Gentoo, *BSD, etc.).

Adam Powell's picture

Uploaded 6.2-3 to Debian on Thursday, so they should consider it and send a response within the next week or so. I'm expecting they'll either accept it, or make me remove triangle and then accept the rest.

Apologies to those who have tried to download from lyre recently. It's been down about four of the past five days, but is back up now, with just a few minutes of planned downtime this coming Wednesday.

Adam Powell's picture

After more than three weeks in the NEW queue, the Debian ftp masters approved the addition of my OpenCASCADE .deb to unstable. This means that if no major bugs remain unresolved by the freeze (likely end of June), OpenCASCADE will be part of the Debian lenny release. It will also likely be picked up by Ubuntu 8.10 a.k.a. Intrepid Ibex.

Thanks very much to all who made this possible -- and to OpenCASCADE for providing such a terrific piece of open source engineering software!

Adam Powell's picture

I've posted new 6.2-4 .debs at http://lyre.mit.edu/~powell/opencascade/ . Among other things, DRAWEXE now works, and 64-bitness is detected properly and _OCC64 set in Standard_Macro.hxx (see other thread on this topic).

Please test thoroughly! The packages should work on Debian lenny and Ubuntu hardy. I'm building -5 without debug messages and hope to upload later today.

apol's picture

Hi Adam,
I'm glad to see there is such packages, they will be very useful here.

I was just wondering... any plans for making a 6.3 package? :)

Thanks,
Aleix

Denis Barbier's picture

Aleix, Adam uploaded new packages for OpenCASCADE 6.3.0 into
http://lyre.mit.edu/~powell/opencascade/
They have to be processed manually before entering Debian proper,
so this may take few weeks.

apol's picture

Hi!
I'm starting to use your packages :) it is great.

The problem I'm finding now is that I can't find the config.h file and it is needed for any include. :P

thanks!
Aleix

Denis Barbier's picture

This is a bug in OpenCascade header files, they should not include config.h
since applications may provide a config.h file for their own purpose.
Ideally such includes should have been dropped in the Debian package, but it
looks like we missed some of them.
Anyway, all includes of config.h are protected by #ifdef HAVE_CONFIG_H, so I
wonder how you can have this build failure. This problem is specific to
Debian, maybe you could file a bugreport so that we can discuss it on the
Debian bug tracking system?