Re: From Cygwin to ActiveState
by randyk (Parson) on Sep 30, 2005 at 01:46 UTC
|
If you want to keep the two installations completely
separate, we have Win32 ppm packages for some Crypt-*
packages in our repository. | [reply] |
|
|
That's where I took the Rijndael and Twofish modules. The doc says a C compiler is required though...
| [reply] |
|
|
You will need a C compiler if you're building the
distributions from the sources. However,
as with all such repositories, the
uwinnipeg repository has
Win32 ppd packages containing pre-compiled binaries, so
you don't have to compile them yourself.
See, in particular,
A guide to installing modules for Win32
for how to use ppm, including how to add a repository
to the list of repositories ppm will use to install
packages.
| [reply] |
Re: From Cygwin to ActiveState
by philcrow (Priest) on Sep 29, 2005 at 20:43 UTC
|
You should be able to see your module from the AS perl if you use lib 'C:\path\not\cygwin\path\to\module\lib';
If it's a script, change the shebang line from a cygwin path to a regular one.
Phil | [reply] |
|
|
Well, I do not like Frankenstein setups. I'd prefer to keep the Cygwin and AS Perl setups mutually exclusive.
I've copied the .pm files in the AS site/lib subdir and the .dll, .dll.a and .bs files in the site/lib/auto subdir.
When I execute my script in AS, I get an error message about a missing cygwin1.dll in my PATH.
I'm so close I can almost taste it...
| [reply] |
|
|
Putting a copy of the cygwin dll into your AS perl bin directory would probably work.
Or if you don't wish to have 2 copies of the dll floating around, place the one copy somewhere it will be visible from both environments. Say, windows\system32 for example.
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
The "good enough" maybe good enough for the now, and perfection maybe unobtainable, but that should not preclude us from striving for perfection, when time, circumstance or desire allow.
| [reply] [d/l] [select] |
Re: From Cygwin to ActiveState
by planetscape (Chancellor) on Sep 30, 2005 at 05:35 UTC
|
| [reply] |
|
|
It is certainly possible to call code in a dll built with one compiler, from code compiled with a different compiler.
For example, calling any of the system modules (which are probably mostly built with one MS C or C++ compiler or other) from programs compiled with Borland's C or Digital Mars C++ works fine. Indeed, so does callng those same system DLLs from programs built with DMD or Haskell or Ocaml or Erlang or Clean or Perl or Ruby.
It depends very much upon how the DLL is built and whether all it's runtime dependancies are added to the DLL (or derived from other DLLs), or not. I agree that it will not always work, and you are much safer sticking with a single compiler.
The biggest danger is that you will get mismatched Perl components. If you attempted to use a module built for Cygwin Perl 5.6.x in conjunction with AS perl 5.8.x, it will almost certainly fail immediately, If both Perl's are the same version, you are less likely to encounter problems.
I wouldn't use such cross-built DLLs for any critical purpose, but as a stop gap measure to trying something out, I might consider it.
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco. -- Rule 1 has a caveat! -- Who broke the cabal?
"Science is about questioning the status quo. Questioning authority".
The "good enough" maybe good enough for the now, and perfection maybe unobtainable, but that should not preclude us from striving for perfection, when time, circumstance or desire allow.
| [reply] |
|
|
| [reply] |