jjzjj

mysql - 任何人都能够在带有 i5 处理器的 Mac Snow Leopard 上安装 DBD::mysql 吗?

coder 2023-10-16 原文

我正在尝试使用大多数流行的方法安装 DBD::mysql,包括 sudo cpanm -S DBD::mysql。但是,我遇到了一些严重的问题,我开始认为这可能是我的处理器问题。我已经在许多计算机上成功安装了它,但是自从我的 IT 部门给我这台 i5 MacBook Pro 之后,我就没有运气了。还有其他人能够在 i5 上安装 DBD::mysql 吗?我运行的是 Mac OS 10.6.8。

这是运行 cpanm 后的 build.log。任何帮助,将不胜感激。谢谢!

cpanm (App::cpanminus) 1.4008 on perl 5.010000 built for darwin-thread-multi-2level
Work directory is /Users/jerickson/.cpanm/work/1314049977.98062
You have make /usr/bin/make
You have LWP 5.813
You have /usr/bin/tar: bsdtar 2.6.2 - libarchive 2.6.2
You have /usr/bin/unzip
Searching DBD::mysql on cpanmetadb ...
--> Working on DBD::mysql
Fetching http://search.cpan.org/CPAN/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.020.tar.gz
-> OK
Unpacking DBD-mysql-4.020.tar.gz
Entering DBD-mysql-4.020
Checking configure dependencies from META.yml
Checking if you have DBI 1.08 ... Yes (1.616)
Configuring DBD-mysql-4.020
Running Makefile.PL


PLEASE NOTE:

For 'make test' to run properly, you must ensure that the 
database user 'root' can connect to your MySQL server 
and has the proper privileges that these tests require such 
as 'drop table', 'create table', 'drop procedure', 'create procedure'
as well as others. 

mysql> grant all privileges on test.* to 'root'@'localhost' identified by 's3kr1t';

You can also optionally set the user to run 'make test' with:

perl Makefile.PL --testuser=username

I will use the following settings for compiling and testing:

  cflags        (mysql_config) = -I/usr/local/mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch x86_64
  embedded      (mysql_config) = 
  libs          (mysql_config) = -L/usr/local/mysql/lib -lmysqlclient   -lpthread
  mysql_config  (guessed     ) = mysql_config
  nocatchstderr (default     ) = 0
  nofoundrows   (default     ) = 0
  ssl           (guessed     ) = 0
  testdb        (default     ) = test
  testhost      (default     ) = 
  testpassword  (default     ) = 
  testsocket    (default     ) = 
  testuser      (guessed     ) = root

To change these settings, see 'perl Makefile.PL --help' and
'perldoc INSTALL'.

Checking if your kit is complete...
Looks good
Using DBI 1.616 (for perl 5.010000 on darwin-thread-multi-2level) installed in /Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBI/
Writing Makefile for DBD::mysql
Writing MYMETA.yml and MYMETA.json
-> OK
Checking dependencies from MYMETA.yml ...
Finding PREREQ from Makefile ...
Checking if you have Data::Dumper 0 ... Yes (2.121_14)
Checking if you have DBI 1.08 ... Yes (1.616)
Checking if you have Test::More 0 ... Yes (0.98)
Checking if you have Test::More 0 ... Yes (0.98)
Checking if you have Data::Dumper 0 ... Yes (2.121_14)
Checking if you have DBI 1.08 ... Yes (1.616)
Building and testing DBD-mysql-4.020
cp lib/DBD/mysql.pm blib/lib/DBD/mysql.pm
cp lib/DBD/mysql/GetInfo.pm blib/lib/DBD/mysql/GetInfo.pm
cp lib/DBD/mysql/INSTALL.pod blib/lib/DBD/mysql/INSTALL.pod
cp lib/Bundle/DBD/mysql.pm blib/lib/Bundle/DBD/mysql.pm
gcc-4.2 -c  -I/Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBI -I/usr/local/mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch x86_64 -DDBD_MYSQL_INSERT_ID_IS_GOOD -g  -arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -Os   -DVERSION=\"4.020\" -DXS_VERSION=\"4.020\"  "-I/System/Library/Perl/5.10.0/darwin-thread-multi-2level/CORE"   dbdimp.c
dbdimp.c: In function ‘alloc_param’:
dbdimp.c:223: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_bind’:
dbdimp.c:241: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbind’:
dbdimp.c:257: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbuffer’:
dbdimp.c:272: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘parse_params’:
dbdimp.c:589: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘my_login’:
dbdimp.c:1996: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_describe’:
dbdimp.c:3605: warning: assignment from incompatible pointer type
dbdimp.c:3606: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_st_fetch’:
dbdimp.c:3798: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_param’:
dbdimp.c:223: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_bind’:
dbdimp.c:241: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbind’:
dbdimp.c:257: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbuffer’:
dbdimp.c:272: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘parse_params’:
dbdimp.c:589: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘my_login’:
dbdimp.c:1996: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_describe’:
dbdimp.c:3605: warning: assignment from incompatible pointer type
dbdimp.c:3606: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_st_fetch’:
dbdimp.c:3798: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_param’:
dbdimp.c:223: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_bind’:
dbdimp.c:241: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbind’:
dbdimp.c:257: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘alloc_fbuffer’:
dbdimp.c:272: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘parse_params’:
dbdimp.c:589: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘my_login’:
dbdimp.c:1996: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_describe’:
dbdimp.c:3605: warning: assignment from incompatible pointer type
dbdimp.c:3606: warning: format not a string literal and no format arguments
dbdimp.c: In function ‘mysql_st_fetch’:
dbdimp.c:3798: warning: format not a string literal and no format arguments
/usr/bin/perl -p -e "s/~DRIVER~/mysql/g" /Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBI/Driver.xst > mysql.xsi
/usr/bin/perl /Library/Perl/Updates/5.10.0/ExtUtils/xsubpp  -typemap /System/Library/Perl/5.10.0/ExtUtils/typemap  mysql.xs > mysql.xsc && mv mysql.xsc mysql.c
Warning: duplicate function definition 'do' detected in mysql.xs, line 242
Warning: duplicate function definition 'rows' detected in mysql.xs, line 751
gcc-4.2 -c  -I/Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBI -I/usr/local/mysql/include  -Os -g -fno-common -fno-strict-aliasing -arch x86_64 -DDBD_MYSQL_INSERT_ID_IS_GOOD -g  -arch x86_64 -arch i386 -arch ppc -g -pipe -fno-common -DPERL_DARWIN -fno-strict-aliasing -I/usr/local/include -Os   -DVERSION=\"4.020\" -DXS_VERSION=\"4.020\"  "-I/System/Library/Perl/5.10.0/darwin-thread-multi-2level/CORE"   mysql.c
mysql.xs: In function ‘XS_DBD__mysql__db_do’:
mysql.xs:307: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘struct SV *’
mysql.xs:364: warning: format not a string literal and no format arguments
mysql.xs:365: warning: format not a string literal and no format arguments
mysql.xs:366: warning: format not a string literal and no format arguments
mysql.xs:525: warning: format not a string literal and no format arguments
mysql.xs: In function ‘XS_DBD__mysql__GetInfo_dbd_mysql_get_info’:
mysql.xs:930: warning: format ‘%i’ expects type ‘int’, but argument 2 has type ‘struct SV *’
mysql.xs: In function ‘XS_DBD__mysql__db_do’:
mysql.xs:307: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘struct SV *’
mysql.xs:364: warning: format not a string literal and no format arguments
mysql.xs:365: warning: format not a string literal and no format arguments
mysql.xs:366: warning: format not a string literal and no format arguments
mysql.xs:525: warning: format not a string literal and no format arguments
mysql.xs: In function ‘XS_DBD__mysql__GetInfo_dbd_mysql_get_info’:
mysql.xs:930: warning: format ‘%i’ expects type ‘int’, but argument 2 has type ‘struct SV *’
mysql.xs: In function ‘XS_DBD__mysql__db_do’:
mysql.xs:307: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘struct SV *’
mysql.xs:364: warning: format not a string literal and no format arguments
mysql.xs:365: warning: format not a string literal and no format arguments
mysql.xs:366: warning: format not a string literal and no format arguments
mysql.xs:525: warning: format not a string literal and no format arguments
mysql.xs: In function ‘XS_DBD__mysql__GetInfo_dbd_mysql_get_info’:
mysql.xs:930: warning: format ‘%i’ expects type ‘int’, but argument 2 has type ‘struct SV *’
Running Mkbootstrap for DBD::mysql ()
chmod 644 mysql.bs
rm -f blib/arch/auto/DBD/mysql/mysql.bundle
LD_RUN_PATH="/usr/local/mysql/lib:/usr/lib" /usr/bin/perl myld gcc-4.2 -mmacosx-version-min=10.6.3  -arch x86_64 -arch i386 -arch ppc -bundle -undefined dynamic_lookup -L/usr/local/lib dbdimp.o mysql.o  -o blib/arch/auto/DBD/mysql/mysql.bundle     \
       -L/usr/local/mysql/lib -lmysqlclient -lpthread   \

chmod 755 blib/arch/auto/DBD/mysql/mysql.bundle
cp mysql.bs blib/arch/auto/DBD/mysql/mysql.bs
chmod 644 blib/arch/auto/DBD/mysql/mysql.bs
Manifying blib/man3/DBD::mysql.3pm
Manifying blib/man3/DBD::mysql::INSTALL.3pm
Manifying blib/man3/Bundle::DBD::mysql.3pm
PERL_DL_NONLAZY=1 /usr/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
Bailout called.  Further testing stopped:  Unable to load DBD::mysql

#   Failed test 'use DBD::mysql;'
#   at t/00base.t line 21.
#     Tried to use 'DBD::mysql'.
#     Error:  Can't load '/Users/jerickson/.cpanm/work/1314049977.98062/DBD-mysql-4.020/blib/arch/auto/DBD/mysql/mysql.bundle' for module DBD::mysql: dlopen(/Users/jerickson/.cpanm/work/1314049977.98062/DBD-mysql-4.020/blib/arch/auto/DBD/mysql/mysql.bundle, 2): Library not loaded: libmysqlclient.18.dylib
#   Referenced from: /Users/jerickson/.cpanm/work/1314049977.98062/DBD-mysql-4.020/blib/arch/auto/DBD/mysql/mysql.bundle
#   Reason: image not found at /System/Library/Perl/5.10.0/darwin-thread-multi-2level/DynaLoader.pm line 207.
#  at (eval 7) line 2
# Compilation failed in require at (eval 7) line 2.
# BEGIN failed--compilation aborted at (eval 7) line 2.
FAILED--Further testing stopped: Unable to load DBD::mysql
make: *** [test_dynamic] Error 255
-> FAIL Installing DBD::mysql failed. See /Users/jerickson/.cpanm/build.log for details.

此后我尝试了 sudo cpanm -Sf DBD::mysql。使用 force 标志,cpanm 表示它已成功安装,但是尝试运行包含连接到 MySQL 数据库的脚本会导致此错误:

Running...
install_driver(mysql) failed: Can't load '/Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle' for module DBD::mysql: dlopen(/Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle, 1): Library not loaded: libmysqlclient.18.dylib
  Referenced from: /Library/Perl/5.10.0/darwin-thread-multi-2level/auto/DBD/mysql/mysql.bundle
  Reason: image not found at /System/Library/Perl/5.10.0/darwin-thread-multi-2level/DynaLoader.pm line 207.
 at (eval 6) line 3
Compilation failed in require at (eval 6) line 3.
Perhaps a required shared library or dll isn't installed where expected
 at roster_generate.pl line 33

最佳答案

啊,我可以通过添加来修复它

export DYLD_LIBRARY_PATH="$DYLD_LIBRARY_PATH:/usr/local/mysql/lib/"

到我的 .bash_profile。我在一些随机博客上发现了这个。有人知道为什么这有效吗??

关于mysql - 任何人都能够在带有 i5 处理器的 Mac Snow Leopard 上安装 DBD::mysql 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7154096/

有关mysql - 任何人都能够在带有 i5 处理器的 Mac Snow Leopard 上安装 DBD::mysql 吗?的更多相关文章

  1. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  2. ruby-on-rails - link_to 不显示任何 rails - 2

    我试图在索引页中创建一个超链接,但它没有显示,也没有给出任何错误。这是我的index.html.erb代码。ListingarticlesTitleTextssss我检查了我的路线,我认为它们也没有问题。PrefixVerbURIPatternController#Actionwelcome_indexGET/welcome/index(.:format)welcome#indexarticlesGET/articles(.:format)articles#indexPOST/articles(.:format)articles#createnew_articleGET/article

  3. ruby-on-rails - RSpec:避免使用允许接收的任何实例 - 2

    我正在处理旧代码的一部分。beforedoallow_any_instance_of(SportRateManager).toreceive(:create).and_return(true)endRubocop错误如下:Avoidstubbingusing'allow_any_instance_of'我读到了RuboCop::RSpec:AnyInstance我试着像下面那样改变它。由此beforedoallow_any_instance_of(SportRateManager).toreceive(:create).and_return(true)end对此:let(:sport_

  4. 使用canal同步MySQL数据到ES - 2

    文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co

  5. ruby-on-rails - 带有 Zeus 的 RSpec 3.1,我应该在 spec_helper 中要求 'rspec/rails' 吗? - 2

    使用rspec-rails3.0+,测试设置分为spec_helper和rails_helper我注意到生成的spec_helper不需要'rspec/rails'。这会导致zeus崩溃:spec_helper.rb:5:in`':undefinedmethod`configure'forRSpec:Module(NoMethodError)对thisissue最常见的回应是需要'rspec/rails'。但这是否会破坏仅使用spec_helper拆分rails规范和PORO规范的全部目的?或者这无关紧要,因为Zeus无论如何都会预加载Rails?我应该在我的spec_helper中做

  6. ruby - (Ruby || Python) 窗口管理器 - 2

    我想用这两种语言中的任何一种(最好是ruby​​)制作一个窗口管理器。老实说,除了我需要加载某种X模块外,我不知道从哪里开始。因此,如果有人有线索,如果您能指出正确的方向,那就太好了。谢谢 最佳答案 XCB,X的下一代API使用XML格式定义X协议(protocol),并使用脚本生成特定语言绑定(bind)。它在概念上与SWIG类似,只是它描述的不是CAPI,而是X协议(protocol)。目前,C和Python存在绑定(bind)。理论上,Ruby端口只是编写一个从XML协议(protocol)定义语言到Ruby的翻译器的问题。生

  7. Ruby:如何使用带有散列的 'send' 方法调用方法? - 2

    假设我有一个类A,里面有一些方法。假设stringmethodName是这些方法之一,我已经知道我想给它什么参数。它们在散列中{'param1'=>value1,'param2'=>value2}所以我有:params={'param1'=>value1,'param2'=>value2}a=A.new()a.send(methodName,value1,value2)#callmethodnamewithbothparams我希望能够通过传递我的哈希以某种方式调用该方法。这可能吗? 最佳答案 确保methodName是一个符号,而

  8. ruby-on-rails - 带有 Pry 的 Rails 控制台 - 2

    当我进入Rails控制台时,我已将pry设置为加载代替irb。我找不到该页面或不记得如何将其恢复为默认行为,因为它似乎干扰了我的Rubymine调试器。有什么建议吗? 最佳答案 我刚发现问题,pry-railsgem。忘记了它的目的是让“railsconsole”打开pry。 关于ruby-on-rails-带有Pry的Rails控制台,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

  9. 带有 attr_accessor 的类上的 Ruby instance_eval - 2

    我了解instance_eval和class_eval之间的基本区别。我在玩弄时发现的是一些涉及attr_accessor的奇怪东西。这是一个例子:A=Class.newA.class_eval{attr_accessor:x}a=A.newa.x="x"a.x=>"x"#...expectedA.instance_eval{attr_accessor:y}A.y="y"=>NoMethodError:undefinedmethod`y='forA:Classa.y="y"=>"y"#WHATTT?这是怎么回事:instance_eval没有访问我们的A类(对象)然后它实际上将它添加到

  10. ruby-on-rails - 无法安装 mysql2 0.3.14 gem - 2

    我看到其他人也遇到过类似的问题,但没有一个解决方案对我有用。0.3.14gem与其他gem文件一起存在。我已经完全按照此处指示完成了所有操作:https://github.com/brianmario/mysql2.我仍然得到以下信息。我不知道为什么安装程序指示它找不到include目录,因为我已经检查过它存在。thread.h文件存在,但不在ruby​​目录中。相反,它在这里:C:\RailsInstaller\DevKit\lib\perl5\5.8\msys\CORE\我正在运行Windows7并尝试在Aptana3中构建我的Rails项目。我的Ruby是1.9.3。$gemin

随机推荐