Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

problems with strawberry perl portable and cpan

44 views
Skip to first unread message

"René Staffen"

unread,
Apr 25, 2012, 10:26:18 AM4/25/12
to win32-...@perl.org
Hi,
I hope this is the right mailing list. it was linked from http://strawberryperl.com/support.html but its name does not sound related for me. Please inform me, it iam wrong.

Beside this doubts here is my Problem:
i use a portable edition of strawberry but i got problems with cpan.
cpan always gives errors if perl is not present at the folder there i first used portable perl.
The errors are of kind 'file not found' because cpan looks in the old directory
eg:
> Das System kann den angegebenen Pfad nicht finden.
> ADAMK/DBD-SQLite-1.35.tar.gz
> E:\Development\Scripte\strawberry-perl-5.12.3.0-portable__\c\bin\dmake.exe -- NOT OK
the current path is c:\strawberry-perl but may change because i also use this installation from USB-Stick

i allready tried to delete the cpan/build folder but with no success.

i allready installed many things so i do not want to start from clean installation

Any hints?


Regards
René Staffen
--
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de

kmx

unread,
Apr 26, 2012, 10:47:27 AM4/26/12
to win32-...@perl.org
On 25.4.2012 16:26, "René Staffen" wrote:
> Hi,
> I hope this is the right mailing list. it was linked from http://strawberryperl.com/support.html but its name does not sound related for me. Please inform me, it iam wrong.
>
> Beside this doubts here is my Problem:
> i use a portable edition of strawberry but i got problems with cpan.
> cpan always gives errors if perl is not present at the folder there i first used portable perl.
> The errors are of kind 'file not found' because cpan looks in the old directory
> eg:
>> Das System kann den angegebenen Pfad nicht finden.
>> ADAMK/DBD-SQLite-1.35.tar.gz
>> E:\Development\Scripte\strawberry-perl-5.12.3.0-portable__\c\bin\dmake.exe -- NOT OK
> the current path is c:\strawberry-perl but may change because i also use this installation from USB-Stick
>
> i allready tried to delete the cpan/build folder but with no success.
>
> i allready installed many things so i do not want to start from clean installation
>
> Any hints?

Please try strawberry perl portable 5.14.2.1 from release page
<http://strawberryperl.com/releases.html> - portable 5.12.3 is buggy.

--
kmx

Chris Marshall

unread,
Apr 26, 2012, 3:32:26 PM4/26/12
to kmx, win32-...@perl.org
Hi kmx,

Thanks for the link, I hadn't realized that the official
release of 5.14 SPP was out. I'll be sure to give it a
go.

BTW, it would be useful if the release notes on the
web site also included the output from 'perl -V' or is
there already somewhere to get that (without having
to install SP first)?

--Chris

kmx

unread,
Apr 27, 2012, 11:12:36 AM4/27/12
to win32-...@perl.org

> BTW, it would be useful if the release notes on the
> web site also included the output from 'perl -V'

OK, I will consider it (FYI: I have already on my TODO list missing
checksums for released ZIPs)


> or is there already somewhere to get that (without having
> to install SP first)?

You can ask me :)

d:\perl32>perl -V
Summary of my perl5 (revision 5 version 14 subversion 2) configuration:

Platform:
osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
uname='Win32 strawberryperl 5.14.2.1-portable #1 Tue Nov 22 18:24:29
2011 i386'
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=undef, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags =' -s -O2 -DWIN32 -DPERL_TEXTMODE_SCRIPTS
-DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
-fno-strict-aliasing -mms-bitfields',
optimize='-s -O2',
cppflags='-DWIN32'
ccversion='', gccversion='4.4.7', gccosandvers=''
intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='long long',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='g++.exe', ldflags ='-s -L"D:\perl32\perl\lib\CORE" -L"D:\perl32\c\lib"'
libpth=D:\perl32\c\lib D:\perl32\c\i686-w64-mingw32\lib
libs=-lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32
-ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr
-lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32
perllibs=-lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32
-ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr
-lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32
libc=, so=dll, useshrplib=true, libperl=libperl514.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-mdll -s -L"D:\perl32\perl\lib\CORE"
-L"D:\perl32\c\lib"'


Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
PERL_MALLOC_WRAP PERL_PRESERVE_IVUV PL_OP_SLAB_ALLOC
USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_PERL_ATOF
USE_SITECUSTOMIZE
Built under MSWin32
Compiled at Nov 22 2011 18:32:55
%ENV:
PERL_JSON_BACKEND="JSON::XS"
PERL_YAML_BACKEND="YAML"
@INC:
D:/perl32/perl/site/lib
D:/perl32/perl/vendor/lib
D:/perl32/perl/lib

Chris Marshall

unread,
Apr 27, 2012, 11:30:29 AM4/27/12
to kmx, win32-...@perl.org
Hi kmx-

Thanks for the perl -V info.

That appears to be from the 32bit SP.
Could you send the 64bit perl -V as well?

How difficult would it be for me to build
a 32bit SP with use64bit stuff enabled?

I'm working on true 64bit index/data size
support for PDL and a 32bit SP would be
a good intermediate test point since the
new addressing needs to work correctly
for 32bit perls, even if the hardware won't
actually let you address more than 4GB.

64bit PDL plus the recent work for memory
mapped file support will allow for some
very nice things for PDL on 64bit platforms.

--Chris

kmx

unread,
Apr 27, 2012, 3:04:11 PM4/27/12
to win32-...@perl.org

> That appears to be from the 32bit SP.
> Could you send the 64bit perl -V as well?

d:\perl64>perl -V
Summary of my perl5 (revision 5 version 14 subversion 2) configuration:

Platform:
osname=MSWin32, osvers=4.0, archname=MSWin32-x64-multi-thread
uname='Win32 strawberryperl 5.14.2.1-portable #1 Tue Nov 22 19:46:20
2011 x64'
config_args='undef'
hint=recommended, useposix=true, d_sigaction=undef
useithreads=define, usemultiplicity=define
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=undef, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='gcc', ccflags =' -s -O2 -DWIN32 -DWIN64 -DCONSERVATIVE
-DPERL_TEXTMODE_SCRIPTS -DUSE_SITECUSTOMIZE -DPERL_IMPLICIT_CONTEXT
-DPERL_IMPLICIT_SYS -fno-strict-aliasing -mms-bitfields',
optimize='-s -O2',
cppflags='-DWIN32'
ccversion='', gccversion='4.4.7', gccosandvers=''
intsize=4, longsize=4, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='long
long', lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='g++.exe', ldflags ='-s -L"D:\perl64\perl\lib\CORE" -L"D:\perl64\c\lib"'
libpth=D:\perl64\c\lib D:\perl64\c\x86_64-w64-mingw32\lib
libs=-lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32
-ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr
-lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32
perllibs=-lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32
-ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr
-lwinmm -lversion -lodbc32 -lodbccp32 -lcomctl32
libc=, so=dll, useshrplib=true, libperl=libperl514.a
gnulibc_version=''
Dynamic Linking:
dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
cccdlflags=' ', lddlflags='-mdll -s -L"D:\perl64\perl\lib\CORE"
-L"D:\perl64\c\lib"'


Characteristics of this binary (from libperl):
Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS
PERL_MALLOC_WRAP PERL_PRESERVE_IVUV PL_OP_SLAB_ALLOC
USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
USE_PERLIO USE_PERL_ATOF USE_SITECUSTOMIZE
Built under MSWin32
Compiled at Nov 22 2011 19:58:55
%ENV:
PERL_JSON_BACKEND="JSON::XS"
PERL_YAML_BACKEND="YAML"
@INC:
D:/perl64/perl/site/lib
D:/perl64/perl/vendor/lib
D:/perl64/perl/lib
.

> How difficult would it be for me to build
> a 32bit SP with use64bit stuff enabled?

Currently the build engine is under complete reconstruction. How quickly do
you need it?

--
kmx

Sisyphus

unread,
Apr 27, 2012, 11:13:24 PM4/27/12
to win32-...@perl.org

----- Original Message -----
From: "kmx"

>> How difficult would it be for me to build
>> a 32bit SP with use64bit stuff enabled?

It's been a while since I looked at doing this, but I think *I* would still
find the patching involved in building a 32-bit Windows perl
with -Duse64bitint both tedious and difficult ... however, that doesn't mean
that you and/or kmx would also suffer the same :-)

Chris, your Cygwin perl should be suitable for testing the "32-bit
with -Duse64bitint" scenario.

> Currently the build engine is under complete reconstruction. How quickly
> do
> you need it?

kmx, have you already been working on building a 32-bit SP
with -Duse64bitint ?

It's something I'd like to see .... and something I'd like to be able to
build from source.
It would also be nice to have -Duselongdouble support (even if just for the
x64 builds).

If you do have patches that enable any of this, it would be nice (though
*not* obligatory upon you) if they could be made available for integration
into the official perl sources.

Cheers,
Rob

"René Staffen"

unread,
Apr 26, 2012, 11:55:13 AM4/26/12
to win32-...@perl.org
Hi,
> Please try strawberry perl portable 5.14.2.1 from release page
> <http://strawberryperl.com/releases.html> - portable 5.12.3 is buggy.

Thank you for this information.

Is there a way to upgrade without the need to reinstall all the modules i installed so far?

rené

Sisyphus

unread,
Apr 28, 2012, 9:57:17 AM4/28/12
to "René Staffen", win32-...@perl.org

----- Original Message -----
From: ""René Staffen"" <r.st...@gmx.de>
To: <win32-...@perl.org>
Sent: Friday, April 27, 2012 1:55 AM
Subject: Re: problems with strawberry perl portable and cpan


> Hi,
>> Please try strawberry perl portable 5.14.2.1 from release page
>> <http://strawberryperl.com/releases.html> - portable 5.12.3 is buggy.
>
> Thank you for this information.
>
> Is there a way to upgrade without the need to reinstall all the modules i
> installed so far?

You could install 5.14.2.1 to the same location, and you wouldn't have to
re-install any pure perl modules that you had previously installed.
But you would still have to re-install any perl extensions (ie modules with
C/XS code that needs to be compiled) that you had previously installed.

Cheers,
Rob

chm

unread,
Apr 28, 2012, 10:13:12 AM4/28/12
to René Staffen, win32-...@perl.org
On 4/26/2012 11:55 AM, "René Staffen" wrote:
> Hi,
>> Please try strawberry perl portable 5.14.2.1 from release page
>> <http://strawberryperl.com/releases.html> - portable 5.12.3 is buggy.
>
> Thank you for this information.
>
> Is there a way to upgrade without the need to reinstall all the modules i installed so far?

If you have to reinstall them all, you might try
using the CPAN autobundle process to speed things
up.

--Chris

kmx

unread,
Apr 28, 2012, 1:46:19 PM4/28/12
to win32-...@perl.org

> kmx, have you already been working on building a 32-bit SP with
> -Duse64bitint ?

Not yet but we already have some hackery applied on win32/config_H.gc and
win32/config.gc - I expect that couple of more hacking in these two files
can make use64bitint possible.

I can do more on this after I release strawberry 5.16.0 (approx the end of
May).

--
kmx

Sisyphus

unread,
Apr 29, 2012, 12:40:34 AM4/29/12
to kmx, win32-...@perl.org

----- Original Message -----
From: "kmx" <k...@atlas.cz>
To: <win32-...@perl.org>
Sent: Sunday, April 29, 2012 3:46 AM
Subject: Re: problems with strawberry perl portable and cpan


>
Excellent - I look forward to it.

Cheers,
Rob

kmx

unread,
May 15, 2012, 5:31:53 PM5/15/12
to win32-...@perl.org
Check http://strawberryperl.com/beta/

Any feedback welcome.

--
kmx

kmx

unread,
May 15, 2012, 5:37:17 PM5/15/12
to win32-...@perl.org
On 28.4.2012 5:13, Sisyphus wrote:
> ...
> kmx, have you already been working on building a 32-bit SP with
> -Duse64bitint ?

Now available at http://strawberryperl.com/beta/ (only Portable edition
based on perl-5.16.0-RC1)

Applied patches to config.gc and config_H.gc are here:
http://svn.ali.as/cpan/trunk/Perl-Dist-Strawberry/share/perl-5.16-x86-64int/diffs_for_info_only/

--
kmx

Sisyphus

unread,
May 15, 2012, 11:00:29 PM5/15/12
to kmx, win32-...@perl.org
Excellent !!
I'll try this out as soon as I get a chance.

Is the dbm/gdbm/ndbm stuff critical to the build of a -Duse64bitint perl ?
(I'll probably wait until 5.16.0 is released, whereupon I intend to try
building such a perl myself, using the mingw.org compiler (gcc-4.5.2). It
doesn't have any of the dbm/gdbm/ndbm stuff, afaik.)

Cheers,
Rob

kmx

unread,
May 16, 2012, 1:51:49 AM5/16/12
to Sisyphus, win32-...@perl.org
Of course *dbm thinks are absolutely unrelated to -Duse64bitint. I have
just taken the changes we do in "standard" strawberry perl + applied
additional changes related to -Duse64bitint.

In
http://svn.ali.as/cpan/trunk/Perl-Dist-Strawberry/share/perl-5.16/diffs_for_info_only/
you can see what changes are "standard" in strawberry perl. I think you can
easily distinguish what has to be patched for -Duse64bitint.

--
kmx

Sisyphus

unread,
May 16, 2012, 2:50:38 AM5/16/12
to kmx, win32-...@perl.org

----- Original Message -----
From: "kmx"

>
> Of course *dbm thinks are absolutely unrelated to -Duse64bitint. I have
> just taken the changes we do in "standard" strawberry perl + applied
> additional changes related to -Duse64bitint.

Understood.

> In
> http://svn.ali.as/cpan/trunk/Perl-Dist-Strawberry/share/perl-5.16/diffs_for_info_only/
> you can see what changes are "standard" in strawberry perl. I think you
> can
> easily distinguish what has to be patched for -Duse64bitint.

Yes, no problems there.
Thanks.

Cheers,
Rob

Sisyphus

unread,
May 16, 2012, 3:38:38 AM5/16/12
to kmx, win32-...@perl.org

----- Original Message -----
From: "kmx"

> Now available at http://strawberryperl.com/beta/ (only Portable edition
> based on perl-5.16.0-RC1)

Finally got a chance to have a play with this - looks good.

Nice work !!

One thing I noticed is that $Config{archname} still reports
'MSWin32-x86-multi-thread'.
I think it should probably differentiate itself from -Uuse64bitint builds,
though I'm not sure of the rules in this regard (if there are any).
Perhaps something like 'MSWin32-x86-multi-thread-64int' - but if there are
no rules, then I reckon *you* get to choose.

Looking forward to the arrival of 'MSWin32-x86-multi-thread-64int-ld' ;-)

Cheers,
Rob

kmx

unread,
May 16, 2012, 4:53:11 AM5/16/12
to win32-...@perl.org

> One thing I noticed is that $Config{archname} still reports
> 'MSWin32-x86-multi-thread'.
> I think it should probably differentiate itself from -Uuse64bitint
> builds, though I'm not sure of the rules in this regard (if there are any).
> Perhaps something like 'MSWin32-x86-multi-thread-64int' - but if there
> are no rules, then I reckon *you* get to choose.
>

Well, I have changed in config_H.gc:

#define ARCHNAME "MSWin32-x86-64int"

but it is obviously the wrong place and the wrong string - I should revert
it. It seems that some hacking/patching in win32/makefile.mk can fix this.


> Looking forward to the arrival of 'MSWin32-x86-multi-thread-64int-ld' ;-)
>

you mean -Duselongdouble?

--
kmx

Sisyphus

unread,
May 16, 2012, 5:38:16 AM5/16/12
to kmx, win32-...@perl.org

----- Original Message -----
From: "kmx" <k...@atlas.cz>
To: <win32-...@perl.org>
Sent: Wednesday, May 16, 2012 6:53 PM
Subject: Re: 32bit strawberry perl with -Duse64bitint


>
>> One thing I noticed is that $Config{archname} still reports
>> 'MSWin32-x86-multi-thread'.
>> I think it should probably differentiate itself from -Uuse64bitint
>> builds, though I'm not sure of the rules in this regard (if there are
>> any).
>> Perhaps something like 'MSWin32-x86-multi-thread-64int' - but if there
>> are no rules, then I reckon *you* get to choose.
>>
>
> Well, I have changed in config_H.gc:
>
> #define ARCHNAME "MSWin32-x86-64int"
>
> but it is obviously the wrong place and the wrong string - I should revert
> it. It seems that some hacking/patching in win32/makefile.mk can fix this.

Oh, yes ... I think that's right. (I've been searching the source for
'multi-thread' and wondering why I wasn't getting any useful hits.)

I already see:

.IF "$(USE_ITHREADS)" == "define"
ARCHNAME !:= $(ARCHNAME)-thread
.ENDIF

So I guess it's just a matter of adding after that something like:

.IF "$(USE_64_BIT_INT)" == "define"
ARCHNAME !:= $(ARCHNAME)-64int
.ENDIF


>> Looking forward to the arrival of 'MSWin32-x86-multi-thread-64int-ld'
>> ;-)
>>
>
> you mean -Duselongdouble?

That's right. (It'd be nice - but this is not a serious request for it.)

If one wanted to add the -Duse64bitint capability to the official perl
sources (say, for 5.18) would one be looking at providing an additional
config.gc (say, config.gc_int64) and an additional config_H.gcc
(config_H.gc_int64) ?

That's the way *I* would go about it ... just wondering if you see a better
way.

Cheers,
Rob

kmx

unread,
May 16, 2012, 2:28:27 PM5/16/12
to win32-...@perl.org

> I already see:
>
> .IF "$(USE_ITHREADS)" == "define"
> ARCHNAME !:= $(ARCHNAME)-thread
> .ENDIF
>
> So I guess it's just a matter of adding after that something like:
>
> .IF "$(USE_64_BIT_INT)" == "define"
> ARCHNAME !:= $(ARCHNAME)-64int
> .ENDIF

You are nearly right, I have ended up with
http://svn.ali.as/cpan/trunk/Perl-Dist-Strawberry/share/perl-5.16-x86-64int/diffs_for_info_only/makefile.mk.diff

Check http://strawberryperl.com/beta/ for the latest "64int" build

--
kmx
0 new messages