64位机器安装DBI报错,求助【追加个问题吧】

问过公司里的op
他们曾经在64位的机器里也部署过
没什么特别,就是直接运行脚本安装
perl Makefile.PL
make;make test; make install;

是不是真的是我的perl装的有问题呢
help


QUOTE:
原帖由 King_Leo 于 2008-4-15 21:47 发表
多谢楼上,似乎是一样的问题
我还是不明白
Can't load module DBI, dynamic loading not available in this perl.
  (You may need to build a new perl executable which either supports
  dynamic loadi ...

solution:
1.编译perl的时候enable dynamic loader的支持
2.选择静态编译的DBI
程序有静态链接和动态链接


QUOTE:
原帖由 churchmice 于 2008-4-16 10:13 发表

solution:
1.编译perl的时候enable dynamic loader的支持
2.选择静态编译的DBI
程序有静态链接和动态链接

谢谢解答

但我不知道 enable dynamic loader 这个如何实现呢?怎么加这个参数呢

我sh Configure
后遇到一个动态相关的部分
Do you wish to use dynamic loading? [n] y
The following dynamic loading files are available:
ext/DynaLoader/dl_aix.xs      ext/DynaLoader/dl_dlopen.xs  ext/DynaLoader/dl_mpeix.xs  ext/DynaLoader/dl_vms.xs
ext/DynaLoader/dl_beos.xs     ext/DynaLoader/dl_dyld.xs    ext/DynaLoader/dl_next.xs
ext/DynaLoader/dl_dld.xs      ext/DynaLoader/dl_hpux.xs    ext/DynaLoader/dl_none.xs
ext/DynaLoader/dl_dllload.xs  ext/DynaLoader/dl_mac.xs     ext/DynaLoader/dl_vmesa.xs
Source file to use for dynamic loading



除了这个之外还有其他的有些选项不知道该选什么。。。。。这个和32位机差别那么大吗?
试着把share object也enable.看看有没有问题...
我再AIX 64bits上面安装Perl...只需要export OBJECTMODE=64外...没碰过问题......


QUOTE:
=head3 64 bit support

If your platform does not run natively at 64 bits, but can simulate
them with compiler flags and/or C<long long> or C<int64_t>,
you can build a perl that uses 64 bits.

There are actually two modes of 64-bitness: the first one is achieved
using Configure -Duse64bitint and the second one using Configure
-Duse64bitall.  The difference is that the first one is minimal and
the second one maximal.  The first works in more places than the second.

The C<use64bitint> option does only as much as is required to get
64-bit integers into Perl (this may mean, for example, using "long
longs") while your memory may still be limited to 2 gigabytes (because
your pointers could still be 32-bit).  Note that the name C<64bitint>
does not imply that your C compiler will be using 64-bit C<int>s (it
might, but it doesn't have to).  The C<use64bitint> simply means that
you will be able to have 64 bit-wide scalar values.

The C<use64bitall> option goes all the way by attempting to switch
integers (if it can), longs (and pointers) to being 64-bit.  This may
create an even more binary incompatible Perl than -Duse64bitint: the
resulting executable may not run at all in a 32-bit box, or you may
have to reboot/reconfigure/rebuild your operating system to be 64-bit
aware.

Natively 64-bit systems need neither -Duse64bitint nor -Duse64bitall.
On these systems, it might be the default compilation mode, and there
is currently no guarantee that passing no use64bitall option to the
Configure process will build a 32bit perl. Implementing -Duse32bit*
options is planned for perl 5.12.

从INSTALL中看到的...在选择的时候...只要看到有64bit的..都要选y...
在试试看吧..
另外cc compile的…选项要增加..
-q64

谢谢老大,谢谢
我再好好看看,我这台服务器应该属于64位的
http://www.gossamer-threads.com/lists/perl/porters/205466

这里这些帖子也许对我也有帮助
我再试试吧
没想到这个系统带来这么多麻烦,头疼死了

谢谢您了,我再看看
初步看来问题解决
真的是非常感谢apile 和各位的帮助
谢谢

http://www.gossamer-threads.com/lists/perl/porters/205466
这个帖子里提到的比较多

make clean
rm -f config.sh Policy.sh
sh Configure -des -Dlibpth="/usr/local/lib64 /lib64 /usr/lib64"
make;
make test
make install
没有报错

安装DBI也正常

至于这个楼里提到的其他问题。。。再说吧,可能没有时间细扣了