ASE Home Page Products Download Purchase Support About ASE
ChartDirector Support
Forum HomeForum Home   SearchSearch

Message ListMessage List     Post MessagePost Message

  Centos 7
Posted by seafree on Feb-23-2017 05:45
Hi Peter, I will hope you can help me whit this:

I had  been migrate my CharDirector application in RHEL to Linux Centos 7 but the chart sent me error because didn't recognize use perlchartdir;

# perl -w chart.pl

Can't load './perlchartdir512i64mt.so' for module perlchartdir512i64mt: ./perlchartdir512i64mt.so: wrong ELF class: ELFCLASS32 at /usr/lib64/perl5/DynaLoader.pm line 190.
        at perlchartdir.pm line 9.
...propagated at perlchartdir.pm line 20.
        Compilation failed in require at line 7.
        BEGIN failed--compilation aborted at line 7.

Could you help me ?, what will can I do?, pleaese.

Regards.

  Re: Centos 7
Posted by Peter Kwan on Feb-24-2017 05:50
Hi seafree,

Is it possible that you are using the Linux (i386/i686) edition of ChartDirector for Perl, but your OS is actually Linux (x86_64)? Please use "uname -a" to verify what type of Linux you are using, and verify that you have downloaded the ChartDirector that is for your Linux OS architecture.

Regards
Peter Kwan

  Re: Centos 7
Posted by seafree on Feb-24-2017 22:50
Good Morning Peter:


# uname -a

Linux localhost.localdomain 3.10.0-514.6.1.el7.x86_64 #1 SMP Wed Jan 18 13:06:36 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux,

About ChartDirector is not by Centos 7, but you had been answer in past this:

Posted by Peter Kwan on Aug-06-2016 02:32
"In any case, ChartDirector can run on most of the Linux OS, including CentOS and RHEL (Red Hat Enterprise Linux)."

I'm resolving consider your past recomendations, but a I'm having some problems.

If something change I will graceful you write me.

Thanks a lot Peter.

Regards

  Re: Centos 7
Posted by seafree on Feb-25-2017 00:52
I execute your last recomendations:

A. PETER:
for Linux (i386/i686) and that it supports Perl 5.22. (In the ChartDirector/lib, there should be a file "perlchartdir522.so".)

SEAFREE:
# uname -a

Linux localhost.localdomain 3.10.0-514.6.1.el7.x86_64 #1 SMP Wed Jan 18 13:06:36 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux,
perlchartdir512i64.so
perlchartdir512i64mt.so

B. PETER:
     1) Copy everything in "ChartDirector/lib" to  "/usr/local/lib/perl5/site_perl/5.22.1/i686-linux".
     2) Verify that you have the files "perlchartdir.pm", "perlchartdir520.so", "libchartdir.so" and a number of other ChartDirector files and the fonts subdirectory.

      SEAFREE:
     1) I Copied everything in "ChartDirector/lib" to  "/usr/local/lib64/perl5
Not exits the diectory: site_perl
# find / -name 'site_perl' –print
Por lo tanto el directorio donde copie ChartDirector/lib fue en "/usr/local/lib64/perl5

     2) Verify that you have the files "perlchartdir.pm", "perlchartdir520.so", "libchartdir.so" and a number of other ChartDirector files and the fonts subdirectory

The files I have are: "perlchartdir.pm", "libchartdir.so", “perlchartdir512i64mt.so”, “perlchartdir512i64.so” and the fonts subdirectory

C. PETER:
Go to the ChartDirector/perldemo subdirectory, and enter the followings: perl simplebar.pl
SEAFREE:
perldemo]# perl -w simplebar.pl

                        Can't load '/usr/local/lib64/perl5/perlchartdir512i64mt.so' for module perlchartdir512i64mt: /usr/local/lib64/perl5/perlchartdir512i64mt.so: wrong ELF class: ELFCLASS32 at /usr/lib64/perl5/DynaLoader.pm line 190.
at /usr/local/lib64/perl5/perlchartdir.pm line 9.
        ...propagated at /usr/local/lib64/perl5/perlchartdir.pm line 20.
Compilation failed in require at simplebar.pl line 2.
BEGIN failed--compilation aborted at simplebar.pl line 2.


#PERL VERSION
      Perl -V
Summary of my perl5 (revision 5 version 16 subversion 3) configuration:
  Platform:
    osname=linux, osvers=2.6.32-573.18.1.el6.x86_64
……
Characteristics of this binary (from libperl):
  Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS
                        PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT
                        PERL_MALLOC_WRAP PERL_PRESERVE_IVUV USE_64_BIT_ALL
                        USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
                        USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE
                        USE_LOCALE_NUMERIC USE_PERLIO USE_PERL_ATOF
                        USE_REENTRANT_API USE_SITECUSTOMIZE
…………………….
Built under linux
  Compiled at Nov  6 2016 01:30:49
  @INC:
    /usr/local/lib64/perl5
    /usr/local/share/perl5
    /usr/lib64/perl5/vendor_perl
    /usr/share/perl5/vendor_perl
    /usr/lib64/perl5
    /usr/share/perl5

Do you have any idea about how I can see the charts?

Thanks a lot Peter.

  Re: Centos 7
Posted by Peter Kwan on Feb-25-2017 01:40
Hi seafree,

According to your "uname -a", your Linux architecture is "x86_64". Please make sure you are using "ChartDirector for PHP for Linux (x86_64)" and not "ChartDirector for PHP for Linux (i386/i686)".

For "ChartDirector for PHP for Linux (x86_64)", the file should be "chartdir_perl_linux_64.tar.gz". If you are using the latest version of ChartDirector downlaod from our web site, the size of the "libchartdir.so" should be 4801675 bytes. The size of the "perlchartdir512i64mt.so" should be 15040 bytes.

Please kindly verify if this is the case with the ChartDirector in your machine.

Regards
Peter Kwan

  Re: Centos 7
Posted by Peter Kwan on Feb-25-2017 01:45
Hi seafree,

I have just noticed from your latest message that you are using Perl 5.16. Please remember to use the latest version of "ChartDirector for PHP for Linux (x86_64)". In addition to the "perlchartdir516i64mt.so" and "libchartdir.so", please also remember to update the "perlchartdir.pm" using the one from the latest download.

Regards
Peter Kwan

  Re: Centos 7
Posted by seafree on Feb-25-2017 02:03
Hi Peter,

I have just using Perl 5.16, then the version download is for PERL Linux (x86_64) NOT PHP,  Is correct?


Regards

  Re: Centos 7
Posted by seafree on Feb-25-2017 02:37
Hi Peter, about your last message I execute #tar xvf chartdir_perl_linux_64.tar and the report about the files you had been mentioned are:

perlchartdir.pm                66366
perlchartdir516i64mt.so     15008
perlchartdir512i64mt.so     15040
libchartdir.so                4801672


I have a question about your last message, how can I update the files you mentioned?, I suppose it files were update when I uncompressed chartdir_perl_linux_64.tar, will you confirm me please.

I'm kindly your answer me.

Regards
Seafree

  Re: Centos 7
Posted by Peter Kwan on Feb-25-2017 17:37
Hi seafree,

The "ChartDirector for Perl for Linux (x86_64)" can be installed using the same method you installed your existing version of ChartDirector, that is, to copy everything from "ChartDirector/lib" to one of the directories in the Perl module search path.


From your previous message, I found that when you issue "perl -w simplebar.pl", the error message is:

Can't load '/usr/local/lib64/perl5/perlchartdir512i64mt.so' for module perlchartdir512i64mt: /usr/local/lib64/perl5/perlchartdir512i64mt.so: wrong ELF class: ELFCLASS32 at /usr/lib64/perl5/DynaLoader.pm line 190.
at /usr/local/lib64/perl5/perlchartdir.pm line 9.
        ...propagated at /usr/local/lib64/perl5/perlchartdir.pm line 20.

It seems you may have a verison of ChartDirector for Perl copied to at "/usr/local/lib64/perl5". To upgrade that version of ChartDirector for Perl, please copy everything from "ChartDirector/lib" (including all shared objects and the fonts subdirectory) to "/usr/local/lib64/perl5".


From your first post, you also mentioned that when you use "perl -w chart.pl", the error is:

Can't load './perlchartdir512i64mt.so' for module perlchartdir512i64mt: ./perlchartdir512i64mt.so: wrong ELF class: ELFCLASS32 at /usr/lib64/perl5/DynaLoader.pm line 190.
        at perlchartdir.pm line 9.

It seems your "chart.pl" is using the "perlchartdir.pm" and "perlchartdir512i64mt.so" located in the same directory as the "chart.pl" script. It means you may have also copied the previous version of ChartDirector to the same directory as "chart.pl". To upgrade that copy of ChartDirector for Perl, please copy everything from "ChartDirector/lib" (including all shared objects and the fonts subdirectory) to the directory that contains "chart.pl".


In summary, if you have copied an earlier version of the i386/i686 version of ChartDirector to some directories, please copy everything from "ChartDirector/lib" (including all shared objects and the fonts subdirectory) from the latest "ChartDirector for Perl for Linux (x86_64)" to the same directories to overwrite the previous copies.

Hope this can help.


Regards
Peter Kwan

  Re: Centos 7
Posted by seafree on Feb-27-2017 23:40
THANKS A LOT Peter, all is ok.

Regards
Seafree