delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2012/04/18/12:59:38

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,KHOP_THREADED,TW_KR,T_RP_MATCHES_RCVD
X-Spam-Check-By: sourceware.org
Message-ID: <4F8EF2AA.9050305@tlinx.org>
Date: Wed, 18 Apr 2012 09:58:18 -0700
From: Linda Walsh <cygwin AT tlinx DOT org>
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.8.1.24) Gecko/20100228 Lightning/0.9 Thunderbird/2.0.0.24 Mnenhy/0.7.6.666
MIME-Version: 1.0
To: De-Jian Zhao <dejian DOT zhao AT gmail DOT com>
CC: "cygwin AT cygwin DOT com" <cygwin AT cygwin DOT com>
Subject: Re: Can RPM packages be installed into Cygwin?
References: <4F7FEF5B DOT 5060206 AT gmail DOT com> <4F8D066B DOT 2060900 AT tlinx DOT org> <4F8EBDF0 DOT 4080407 AT gmail DOT com>
In-Reply-To: <4F8EBDF0.4080407@gmail.com>
X-IsSubscribed: yes
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

De-Jian Zhao wrote:

> 
> Thank you, Linda. When I saw the error message after installing some 
> packages to satisfy the dependencies, I was wondering why the rpm 
> package still complained about the already installed packages. I was not 
> aware that cygwin and rpm were not sharing the 'database'. Thank you for 
> making it clear to me.I will try the src.rpm when I am free.

---
	Note:
	The src.rpm will likely look in the rpm database for it's
pre-reqs as well.
	you will need to look inside it (install the src.rpm, and look
in the /usr/src/packages/specs dir for <package>.spec>) -- and you will see 
lines like: (example from suse samba package):

BuildRequires:  cups-devel e2fsprogs-devel fam-devel libacl-devel pam-devel 
popt-devel python-devel readline-devel
%if 0%{?suse_version}
BuildRequires:  cracklib-devel openldap2-devel
%endif
%if 0%{?suse_version} > 1030
BuildRequires:  gdbm-devel pwdutils
%endif
%if 0%{?suse_version} > 930
BuildRequires:  krb5-devel libiniparser-devel libnscd-devel
%endif
....
(there's a bunch more .. the BuildRequires lines -- will refer to
DISTRO-specific package names (if that was built for Redhat, will refer
to redhat's package names).

The "if" statements are all about configure the same "spec" file for different
conditions... if you wanted to make things complex (I wouldn't), you could
build all the packages it needs and put in an if statement that would be true
for cygwin (would be alot of work!)

Or. look at the minimum set of packages you will need and make sure they
are installed from cygwin,
and comment out all those build-require lines and -- try it.. cross fingers.

But it will then likely be built for whatever DISTRO's specific file layout
which may not match cygwin's.

Safest -- after you install src.rpm, look in /usr/src/packages/SOURCES/ for
<name of your package>.tar.[bz2,gz] -- that will be the original tar package
-- prior to any DISTRO specific changes, that you will want.

Unpack that to a dir and hope it is setup with the configure route -- or figure
out what it needs to build (make...blah).

I have taken suse src rpms and direct ported them to cygwin -- but I had
to disable all the pre-requisite checking at build and install time, due to
the missing rpm database -- but the program was a *simple one*, and it worked.
So it is possible.   The more complex the program, the more likely it will
take more work to port...but sometimes you get lucky and the developer did
a good job setting up a configure script that will work with cygwin...

It is a pain -- you will be porting the source to cygwin -- but it it is worth 
it to you, you can get it done.  (But you really have to want it!) ;-)




--
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019