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]

prob with 1.5.10-3 prevents MySQL connect. 1.5.9-1 is OK.


Hello,

With self- built Apache, MySQL, OpenSLL and Mod_SSL I have found an  
obscure "bug" in cygwin 1.5.10-3 that is not present in 1.5.9-1.

I am installing clean onto XP Pro (without the default inclusion of 
Apache).  I am then building OpenSSL, mod_SSL, and Apache from their 
sources.  I am installing the latest perl DBI and DBD::mysql module.

Everything is building and installing with successful "make test" 
runs using the script below.

With Cygwin Core 1.5.9-1 I can successfully connect to a remote mysql 
server from a perl script in both the shell and also from a perl 
script called from a web page.  Great!

With Cygwin Core 1.5.10-3  I can *NOT* connect to the remote mysql 
server from a web page called script.  Apache generates the error

DBI->connect(database=test;host=<my hostname>) failed: Can't create 
TCP/IP socket (1)

The same script called from a command line perl CAN conenct to the db 
without problem (after all the "make test" for DBD::mysql passed 
100%)

I found one other reference to a similar error from an older version 
without any resolution....
http://www.cygwin.com/ml/cygwin/2001-03/msg01748.html

To be clear...

everything compiles, tests, and installs without error using both 
Cygwin Core 1.5.9-1 and Cygwin Core 1.5.10-3  however with 1.5.10-3 I 
can not access any remote mysql databases from a web-called perl 
script where a command line called script is fine...go figure.

There are no errors in building this kit with either version of the 
Cygwin dll - just that the old version workls for me when the current 
version does not.

If anyone wants me to test something to resolve why this happens I'm 
happy to help...but otherwise I hope this helps the developers.  Let 
me know If I can help further then with this report!

Details on the scripts follow.  If for nothing else this report will 
be archived to help someone else with the install <g>

Cheers,
Shane

The perl test case script is:
###########################################
#!/usr/local/bin/perl
use DBI; 
$database = "test";
$host = "host.somewhere.com";
$username = "user";
$password = "pass"; 
$dbh = DBI->connect("DBI:mysql:$database:$host", $username, 
$password);
if (not $dbh) {
  print "Content-type: text/html \n\n you cannot connect to the 
database";
}
else { print "Content-type: text/html \n\n successful connect"; }
exit;
#################################

The script I use to clean build apache with mod_ssl, mod_auth_dbm and 
mod_rewrite is...

#################################
#script to clean install to Cygwin
#  openssl 0.9.7d
#  mod_ssl 2.8.19-1.3.31
#  apache 1.3.31 with staticaly linked modules
# could not get successful apache DSO install to work at all :(

#!/bin/sh

cd /usr/src/
# delete folders and re-extract clean from tarballs
rm -rf mod_ssl-2.8.19-1.3.31
rm -rf apache_1.3.31
rm -rf openssl-0.9.7d
tar -xzf mod_ssl-2.8.19-1.3.31.tar.gz
tar -xzf apache_1.3.31.tar.gz
tar -xff openssl-0.9.7d.tar.gz
# install.sh has minor tweak for cygwin to correctly add ".exe" 
# find-dbm-lib has minor tweak for cygwin to find gdbm_compat for 
mod_rewrite
cp /usr/src/find-dbm-lib /usr/src/apache_1.3.31/src/helpers/find-dbm-
lib
cp /usr/src/install.sh /usr/src/apache_1.3.31/src/helpers/install.sh

cd /usr/src/openssl-0.9.7d
./config
make
cd /usr/src/mod_ssl-2.8.19-1.3.31
./configure --with-apache=/usr/src/apache_1.3.31 --with-
ssl=/usr/src/openssl-0.9.7d --prefix=/usr/local/bin/apache --enable-
module=rewrite --enable-module=auth_dbm
cd /usr/src/apache_1.3.31
make
make install
(certificate install done separately)
#copy in my apache conf file
cp /usr/src/httpd.conf /usr/local/bin/apache/conf/httpd.conf
#################################

minor tweak to /apache_1.3.31/src/helpers/install.sh

change

if [ -f "$src.exe" ]; then
  if [ -f "$src" ]; then
    : # Cygwin [ test ] is too stupid to do [ -f "$src.exe" ] && [ ! -
f "$src" ]
  else
    ext=".exe"
  fi
fi

to

if [ -f "$src.exe" ]; then
 ext=".exe"
fi

for some reason the original screwed up adding .exe in my early 
installs.

#################################
minor tweak to /apache_1.3.31/src/helpers/find-dbm-lib so gdbm is 
found for mod_rewrite which for some reason could not find gdbm.

if ./helpers/TestCompile lib gdbm dbm_open; then
        DBM_LIB="-lgdbm"

becomes

if ./helpers/TestCompile lib gdbm_compat dbm_open; then
       DBM_LIB="-lgdbm_compat -lgdbm"

#################################


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


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