Dear Thomas and all,

there'a misconception, I fear, about using perlbrew and sudo. Once you
install the perbrew software (using sudo), the rest is in user space.

Run perlbrew install , etc. as listed below and then simply continue
with cpanm as user, no --sudo, which installs stuff in your
$PERLBREW_ROOT folder.

I hope this helps.

Ingo

If you use sudo, I think it will open a new shell (as root) with the
system perl enabled.

On 9/5/23 10:56, ng0...@gmail.com wrote:
Here is my attempt to getting PDL to work in Ubuntu similar to an 
already functional version in Arch, see logs below my personal
instructions.

Has anyone encountered similar issues or knows a remedy?

Thanks a lot, Thomas

# begin of my docu
############################################################

1. perlbrew # needed, if system uses older  perl version!


sudo apt -y install perlbrew

perlbrew init # add to .profile, .bashrc

perlbrew install perl-5.38.0

perlbrew install-cpanm

perlbrew install-patchperl

perlbrew switchperl-5.38.0


2. cpanm

sudo apt install build-essential


https://stackoverflow.com/questions/35144752/cpanm-perlbrew-not-working-with-sudo
<https://stackoverflow.com/questions/35144752/cpanm-perlbrew-not-working-with-sudo>


cpanm --sudoTerm::ReadKey


sudo apt install libreadline-dev

cpanm --sudoTerm::ReadLine::Gnu


# use gnuplot vs pgplot on macos!

https://metacpan.org/pod/PDL::Graphics::Simple#SUPPORTED-GRAPHICS-ENGINES
<https://metacpan.org/pod/PDL::Graphics::Simple#SUPPORTED-GRAPHICS-ENGINES>


cpanm --sudo Alien::Gnuplot # first

cpanm --sudo PDL::Graphics::Gnuplot # second

cpanm --sudo PDL::Graphics::Simple # third, pops up

# end of my docu
############################################################

th6mas@x670:~$ cpanm --sudo Alien::Gnuplot
...
! Installing the dependencies failed: Module 'IO::Socket::SSL' is not
installed, Module 'Net::SSLeay' is not installed
! Bailing out the installation for Alien-Gnuplot-1.042.
18 distributions installed

th6mas@x670:~$ cpanm --sudo IO::Socket::SSL
--> Working on IO::Socket::SSL
Fetching
http://www.cpan.org/authors/id/S/SU/SULLR/IO-Socket-SSL-2.083.tar.gz
... OK
==> Found dependencies: Net::SSLeay
--> Working on Net::SSLeay
Fetching
http://www.cpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.92.tar.gz ... OK
Configuring Net-SSLeay-1.92 ... N/A
! Configure failed for Net-SSLeay-1.92. See
/home/th6mas/.cpanm/work/1693903687.61645/build.log for details.
! Installing the dependencies failed: Module 'Net::SSLeay' is not
installed
! Bailing out the installation for IO-Socket-SSL-2.083.

th6mas@x670:~$ cpanm --sudo Net::SSLeay
--> Working on Net::SSLeay
Fetching
http://www.cpan.org/authors/id/C/CH/CHRISN/Net-SSLeay-1.92.tar.gz ... OK
Configuring Net-SSLeay-1.92 ... N/A
! Configure failed for Net-SSLeay-1.92. See
/home/th6mas/.cpanm/work/1693903705.61662/build.log for details.

On Sat, Sep 2, 2023 at 12:47 AM Ed . <ej...@hotmail.com> wrote:

    Hi Thomas,

    You will want to install Term::ReadKey and probably
    Term::ReadLine::Gnu to have a nicer, more interactive perldl. I
    don’t use pdl2 myself, but it did tell you what it needs to run if
    you want to use it.

    Also, Alien::Gnuplot only installs (or checks for) actual gnuplot.
    If you want the PDL interface to it, which PDL::Graphics::Simple
    wraps around, you need to install PDL::Graphics::Gnuplot. This
    would solve the thing PDL::Graphics::Simple was telling you:
    “Sorry, all known plotting engines failed.  Install one and try
    again.” Please read
    https://metacpan.org/pod/PDL::Graphics::Simple#SUPPORTED-GRAPHICS-ENGINES

    Best regards,

    Ed

    *From: *ng0...@gmail.com
    *Sent: *01 September 2023 18:10
    *To: *Ed . <mailto:ej...@hotmail.com>
    *Cc: *Ingo Schmid <mailto:ingo...@gmx.at>;
    pdl-devel@lists.sourceforge.net
    *Subject: *Re: [Pdl-devel] Debian 12 "-t experimental" install of PDL

    Hello Ed,

    as I understand, there a different options to get First Steps from
    the PDL book to work. I have adopted the approach using
    perlbrewand cpanmas they seem the most stable.



    Please find below the sequence of commands issued and the final
    error messages under Ubuntu. I used the same approach on three
    different Linux distributions (Debian, Ubuntu, Arch) with the same
    result.

    Is there any chance to reproduce the problem and look into it?

    Thanks a lot, Thomas

    # idea: install PDL piggyback from CPAN under perlbrew

    perlbrew init # change prompt in .profile, .bashrc

    perlbrew install perl-5.38.0

    perlbrew install-cpanm

    perlbrew install-patchperl

    perlbrew switch perl-5.38.0

    cpanm Alien::Gnuplot # first ...OK

    cpanm PDL::Graphics::Simple # second ...OK

    Ubuntu: ~ $ pdl2

    pdl2: Devel::REPL version 1.003011 not found, running
    '/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl' instead...

    perlDL shell v1.357

     PDL comes with ABSOLUTELY NO WARRANTY. For details, see the file

     'COPYING' in the PDL distribution. This is free software and you

     are welcome to redistribute it under certain conditions, see

     the same file for details.

    ReadLines, NiceSlice, MultiLines  enabled

    Reading PDL/default.perldlrc...

    WARNING: Error loading PDL: 'Can't locate Term/ReadKey.pm in @INC
    (you may need to install the Term::ReadKey module) (@INC entries
    checked:
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/x86_64-linux
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0) at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/Doc/Perldl.pm
    line 52.

    BEGIN failed--compilation aborted at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/Doc/Perldl.pm
    line 52.

    Compilation failed in require at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/default.perldlrc
    line 37.

    BEGIN failed--compilation aborted at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux/PDL/default.perldlrc
    line 37.

    Compilation failed in require at (eval 14) line 1.

    ' - trying blib.

    WARNING: PDL startup not found only plain perl available

    Note: AutoLoader not enabled ('use PDL::AutoLoader' recommended)

    perl> use PDL::Graphics::Simple

    Can't locate PDL/Graphics/PGPLOT/Window.pm in @INC (you may need
    to install the PDL::Graphics::PGPLOT::Window module) (@INC entries
    checked:
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/x86_64-linux
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0/x86_64-linux
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/5.38.0) at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple/PGPLOT.pm
    line 28, <STDIN> line 1.

    perl> imag (sin(rvals(200,200)+1))

    Sorry, all known plotting engines failed.  Install one and try again.

     at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
    line 434, <STDIN> line 2.

    PDL::Graphics::Simple::new("PDL::Graphics::Simple") called at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
    line 389

    PDL::Graphics::Simple::pgswin() called at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
    line 1262

    PDL::Graphics::Simple::_global_or_new() called at
    
/home/th6mas/perl5/perlbrew/perls/perl-5.38.0/lib/site_perl/5.38.0/PDL/Graphics/Simple.pm
    line 1151

    PDL::Graphics::Simple::imag(PDL=SCALAR(0x563dd1c9aca0)) called at
    (eval 50) line 1

    eval 'imag (sin(rvals(200,200)+1))

    ' called at (eval 36) line 6

    main::eval_and_report("imag (sin(rvals(200,200)+1))\x{a}") called
    at /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 618

    main::process_input() called at
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 638

    eval {...} called at
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl line 638

    require /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/perldl
    called at /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2
    line 27

    main::BEGIN() called at
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2 line 33

    eval {...} called at
    /home/th6mas/perl5/perlbrew/perls/perl-5.38.0/bin/pdl2 line 33

    perl> quit

    On Fri, Sep 1, 2023 at 4:56 PM Ed . <ej...@hotmail.com> wrote:

        Please just try with the latest (Perl 5.38, PDL 2.084), and
        report any problems?

        Best regards,

        Ed

        *From: *ng0...@gmail.com
        *Sent: *31 August 2023 19:09
        *To: *Ingo Schmid <mailto:ingo...@gmx.at>
        *Cc: *pdl-devel@lists.sourceforge.net
        *Subject: *Re: [Pdl-devel] Debian 12 "-t experimental" install
        of PDL

        Hello Ingo,

        much appreciate! Just to ask which perl version is most likely
        to run the commands from the First Step PDL Book?

        @anyone: which perl version is known to work for that purpose?

        Thanks a lot, Thomas

        On Thu, Aug 31, 2023 at 11:00 AM Ingo Schmid <ingo...@gmx.at>
        wrote:

            Hi,

            I have not really read through the whole thread, I
            apologise if this does not apply to your problem then.

            I have moved most of the PDL stuff to perlbrew which
            allows a fairly system independent installation, it's
            berrybrew on windows, I don't own Macs. On linux, your
            distribution most probably provides it, I used apt to
            install the software itself. The best part about is, that
            system (perl) upgrades don't break your PDL installation.
            This allowed me to consistently run things cross platform
            with no troubles for a long time.

            Run

            > perlbrew install <perl version>
            > perlbrew install-cpanm
            > perlbrew install-patchperl

            It takes a fair amount of installation time and I guess
            disk space, defaults to your home.

            Please consult the perlbrew docs for the exact process,
            this is I think the most useful info:
            https://perlbrew.pl/Perlbrew-and-Friends.html. Once you
            are set, use

            > perlbrew switch ...

            > cpanm PDL::Graphics::Simple

            I guess you may need to install a few dependencies that
            are either ambiguous or simply missing using cpanm from
            the same shell. I don't remember if P:G:S comes with a
            default backend or if you need to, for example, install
            gnuplot.

            I hope this helps.

            Ingo

            On 8/31/23 10:12, ng0...@gmail.com wrote:

                Hello,

                would anyone with a working version mind to post some
                hints on how to achieve:

                cpan PDL::Graphics::Simple
                pdl> use PDL::Graphics::Simple
                pdl> imag (sin(rvals(200,200)+1))

                on no matter on which platform but with the least
                number of steps?

                Thanks a lot, Thomas

                On Wed, Aug 30, 2023 at 4:51 PM William Schmidt
                <t.william.schm...@gmail.com> wrote:

                    Hello Thomas (ngO177),

                    I encountered a similar problem building PDL 2.083
                    and 2.084 in macOS Monterrey, to wit: getting
                    PDL::Graphics::Simple to work, or even to pass its
                    build tests.  Rather than repeat the odyssey I
                    went through here I suggest you read the write-up
                    I did at perlmonks that documents the build debug
                    process:

                    https://www.perlmonks.org/?node_id=11153860

                    I posted this as open-issue #450 at PDL meta-cpan,
                    but alas, no one from PDL dev has, as yet,
                    bothered to read it.  In a nutshell, you need a
                    graphics engine on your machine and if there isn't
                    one, or PDL can't find it, the Alien process
                    (since a graphics engine is defined in PDL-speak
                    as an alien process) will find one appropriate to
                    your OS on the net, download and build it for you.
                    Alas, for macOS Monterrey, Alien built a crippled
                    plotting engine. It failed to un-comment any of
                    the three #ifdef terminal definitions that support
                    graphics in macOS. Thus, no terminal def for macOS
                    was compiled into gnuplot. The fix, for me, was to
                    rtfm the build docs, initialize the environment to
                    point to my preferred graphics engine (gnuplot,
                    built by me with macports rather than Alien), and
                    enable interactive build tests.  To be fair to PDL
                    developers, this is all documented in the PDL
                    build instructions and 'man gnuplot', but most of
                    us take the ease of building Perl modules for
                    granted and don't bother to read them unless
                    something goes wrong.  Alien is a brilliant idea
                    but at present its execution in PDL is flawed. It
                    attempts to transparently obtain for you an
                    appropriate graphics engine but fails to build it
                    correctly.  With a little hacking you can get
                    around this, I did, but as always, your mileage
                    will vary.  I would very much like to hear from
                    you after you have read the perlmonks post and
                    evaluated my solution in a Linux context.  My PDL
                    in Monterrey is now working correctly, so I held
                    off trying to build PDL in Ubuntu, but if nothing
                    works for you I will give it a try.


                    Regards,
                    Will Schmidt (perlboy_emeritus)

                    On Wed, Aug 30, 2023 at 5:22 AM <ng0...@gmail.com>
                    wrote:

                        Hello,

                        in order to take some first steps

                        cpan PDL::Graphics::Simple
                        pdl> use PDL::Graphics::Simple
                        pdl> imag (sin(rvals(200,200)+1))

                        on Debian 12 w/ experimental repos activated,
                        all I try, see below, fails.

                        Any ideas?

                        Appreciate, Thomas


                              pdl

                        sudo apt -t experimental install *pdl*

                        sudo apt -t experimental install *pgplot5*

                        sudo apt -t experimental install *libpgplot-perl*

                        sudo apt -t experimental install
                        *libpdl-graphics-gnuplot-perl*


                              cpan


                                /graphics simple/

                        cpan PDL::Graphics::Simple

                        ...

                        Test Summary Report

                        -------------------

                        t/simple.t (Wstat: 512 (exited 2) Tests: 24
                        Failed: 2)

                          Failed tests:  1, 12

                          Non-zero exit status: 2

                          Parse errors: No plan found in TAP output

                        Files=1, Tests=24,  2 wallclock secs ( 0.01
                        usr  0.00 sys +  0.26 cusr  0.22 csys =  0.49 CPU)

                        Result: FAIL

                        Failed 1/1 test programs. 2/24 subtests failed.

                        make: *** [Makefile:851: test_dynamic] Error 2

                          ETJ/PDL-Graphics-Simple-1.009.tar.gz

                          make test -- NOT OK

                        //hint// to see the cpan-testers results for
                        installing this module, try:

                          reports ETJ/PDL-Graphics-Simple-1.009.tar.gz


                                /dh-make-perl/

                        https://wiki.debian.org/PerlFAQ
                        <https://wiki.debian.org/PerlFAQ>

                        sudo apt -t experimental install *dh-make-perl*

                        dh-make-perl --build --cpan PDL::Graphics::Simple

                        ...

                        Test Summary Report

                        -------------------

                        t/simple.t (Wstat: 512 (exited 2) Tests: 24
                        Failed: 2)

                          Failed tests:  1, 12

                          Non-zero exit status: 2

                          Parse errors: No plan found in TAP output

                        Files=1, Tests=24,  1 wallclock secs ( 0.01
                        usr  0.00 sys +  0.29 cusr  0.21 csys =  0.51 CPU)

                        Result: FAIL

                        Failed 1/1 test programs. 2/24 subtests failed.

                        make[1]: *** [Makefile:854: test_dynamic] Error 2

                        make[1]: Leaving directory
                        '/home/th6mas/PDL-Graphics-Simple-1.009'

                        dh_auto_test: error: make -j1 test
                        TEST_VERBOSE=1 returned exit code 2

                        make: *** [debian/rules:4: build] Error 255

                        make: Leaving directory
                        '/home/th6mas/PDL-Graphics-Simple-1.009'

                        Cannot create deb package: 'debian/rules
                        build' failed.

                        _______________________________________________
                        pdl-devel mailing list
                        pdl-devel@lists.sourceforge.net
                        https://lists.sourceforge.net/lists/listinfo/pdl-devel



                _______________________________________________

                pdl-devel mailing list

                pdl-devel@lists.sourceforge.net

                https://lists.sourceforge.net/lists/listinfo/pdl-devel

        _______________________________________________
        pdl-devel mailing list
        pdl-devel@lists.sourceforge.net
        https://lists.sourceforge.net/lists/listinfo/pdl-devel



_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel
_______________________________________________
pdl-devel mailing list
pdl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pdl-devel

Reply via email to