This is the mail archive of the
mailing list for the Cygwin project.
Re: Can RPM packages be installed into Cygwin?
- From: De-Jian Zhao <dejian dot zhao at gmail dot com>
- To: Linda Walsh <cygwin at tlinx dot org>
- Cc: "cygwin at cygwin dot com" <cygwin at cygwin dot com>
- Date: Wed, 18 Apr 2012 21:13:20 +0800
- Subject: Re: Can RPM packages be installed into Cygwin?
- References: <4F7FEF5B.email@example.com> <4F8D066B.firstname.lastname@example.org>
On 2012-4-17 13:58, Linda Walsh wrote:
De-Jian Zhao wrote:
I noticed that there is a command - rpm - under Cygwin 1.7. Does that
mean RPM packages can be installed into Cygwin?
I tried to install ncbi-blast-2.2.26+-3.i686.rpm (see:
ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ ) into
Cygwin 1.7.13 with the command "install -i
ncbi-blast-2.2.26+-3.i686.rpm". However, error message appeared as
below. libc.so.6, libdl.so.2, libm.so.6, libnsl.so.1, and
libz.so.1. Where can I get these libs? Thanks!
$ rpm -i ncbi-blast-2.2.26+-3.i686.rpm
error: Failed dependencies:
/usr/bin/perl is needed by ncbi-blast-2.2.26+-3
libbz2.so.1 is needed by ncbi-blast-2.2.26+-3
libc.so.6 is needed by ncbi-blast-2.2.26+-3
libc.so.6(GLIBC_2.1.3) is needed by ncbi-blast-2.2.26+-3
libc.so.6(GLIBC_2.2) is needed by ncbi-blast-2.2.26+-3
libc.so.6(GLIBC_2.3) is needed by ncbi-blast-2.2.26+-3
On Tue, Apr 10, 2012 at 02:03:29PM +0800, De-Jian Zhao wrote:
> It seems that the compilation under Cygwin is more complicated than
This has nothing to do with cygwin.
It is 'rpm' looking for installed dependencies in the rpm database.
Since everything was installed with 'setup.exe' which keeps it's own
'database', rpm thinks nothing is installed.
You need to make sure the versions required by the rpm are installed
then you can build from a ncbi-blast-2.2.26+-3.src.rpm
The i686.rpm package is prebuilt for "some" platform (you would have
which from the download -- i.e. one built for suse won't necessarily
run on redhat, or ubuntu... or other combinations. Ones that do
will be statically
built and will be usable on some range of OS-versions of some
Since rpm is a linux thing, it would be built for the linux OS... so
double-screw. Wrong OS, wrong executable format...etc... look for a
corresponding .src. rpm, OR as someone else already suggested, look
'tar' that the is included in the ".src". -- in fact, if you have the
usually the .tar. file they build from is packed into it (then patches
specific stuff is applied), so you can often just take the tar from
and move it to cygwin, and run it directly if it has a "configure"
it might also have something like "bootstrap.sh" (or bootstrap
something) that will produce a configure script -- that will usually
allow you to build an executable that will work on your platform (in
this case cygwin) -- but you
will still have to have _needed_ dependencies installed (like
development packages from cygwin for some of the above).
All of those packages may not be needed -- dependencies are often based
on what options you select in configure (configure --help tells you
all it's options). Sometimes you don't need all the options the
'default' rpm builds
with making life simpler.
Compilation, period, other than on the system the package was designed
never completely trivial, but configure makes it nearly so if it is
most packages these days have such a script -- rpm packages just have
some pre-configured image for distribution -- may not be optimal for
nor is it likely to be optimized for your machine.
Hope this was of some help.
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.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple