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: mysql.so: Permission denied (Ruby under Cygwin)


Ronald Fischer wrote:

> There is none. I was told by Ruby-Talk people that I should use the
> Windows
> gem - it would work fine.

Ugh.

> This is funny: Although ls shows that mysql.so exists in $PWD, I get
> 
> /usr/lib/ruby/gems/1.8/gems/mysql-2.7.3-mswin32/ext $ cygcheck mysql.so
> Error: could not find mysql.so

cygcheck is designed to check things on the PATH just as you would if
you were invoking a command, so unless you have . in PATH it isn't
expected to find anything in the PWD.

> But at least it works when I supply a path:
> 
> /usr/lib/ruby/gems/1.8/gems/mysql-2.7.3-mswin32/ext $ cygcheck
> ./mysql.so
> .\mysql.so
>   c:\ruby185\bin\msvcrt-ruby18.dll
>     C:\WINDOWS\system32\USER32.dll
>       C:\WINDOWS\system32\GDI32.dll
>         C:\WINDOWS\system32\KERNEL32.dll
>           C:\WINDOWS\system32\ntdll.dll
>     C:\WINDOWS\system32\ADVAPI32.dll
>       C:\WINDOWS\system32\RPCRT4.dll
>     C:\WINDOWS\system32\WS2_32.dll
>       C:\WINDOWS\system32\msvcrt.dll
>       C:\WINDOWS\system32\WS2HELP.dll
>   c:\Programme\MySQL\MySQL Server 5.0\bin\LIBMYSQL.dll
>     C:\WINDOWS\system32\WSOCK32.dll
> 
> So this seems to look well, doesn't it?

Well that at least answers the question of unresolved library
dependencies, but no it doesn't look well at all.

You're mixing native win32 stuff with Cygwin stuff.  You're trying to
load the module into a running copy of a Cygwin ruby but this module
imports symbols from the other copy of ruby in in C:\ruby185\.  This
means it probably expects data structures of the native build, and most
likely will crash or act with very unpredictable behavior when used
elsewhere.  In general this kind of cross-polination is never a good
idea.

The *right* way to do it is to either stick to the win32 build (only) or
to build all the components that you want to use as Cygwin modules.

Brian

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