This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Can RPM packages be installed into Cygwin?


On 4/18/2012 12:21 PM, De-Jian Zhao wrote:
Is there a way to export the package info or lib
info of setup.exe to rpm? If they can share information, the problem
will be easily solved.

Big "if".


I said it before, but a .src.rpm built for one Linux distribution typically will not just recompile as-is on another Linux. Expecting effortless portability to an entirely different platform like Cygwin is a pipe dream.

You seem to be envisioning a world where the RPM spec file says it requires libfoo-1.2.3.so or whatever, and that someone has ported that to Cygwin. Then all you'd need to do is change RPM so it knows how to mung file names to cygfoo-1.2.3.dll or whatever.

That *could* happen.

What actually happens more commonly is:

- The Fedora spec file says it depends on the foo-devel package, which contains the .so file in question.

- The SuSE spec file says it depends on the foo-shared-lib package instead, because that's what the same package is called there.

- The Repoforge spec file depends on the platform spec file, but also on a passel of other infrastructure that has no direct correspondence to anything else, and without it it won't even rebuild on supported platforms.

- The third-party spec file which was built to support the first-party foo package from the upstream vendor (as opposed to the version in the distro) says it depends on the first-party foo-community-shared package.

So, which one should this mythical Cygwin .pkg -> RPM DB tool convert the dependencies to?

The first scenario above also ignores versioning issues.

This mythical automatic package porting tool you imagine cannot be magicked into existence with a "But if you just..." observation. There is no "just". It would probably take more work to build the automatic dependency translation tool than to just manually port everything.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]