簡體   English   中英

努力在OSX Lion上安裝pg gem-“缺少文件x86_64所需的體系結構x86_64”

[英]Struggling to install pg gem on OSX Lion - “missing required architecture x86_64 in file for architecture x86_64”

我在OSX Lion上安裝PostgreSQL gem時遇到問題。 運行gem install pg后,在創建makefile之后,我得到以下輸出:

make
/usr/bin/gcc-4.2 -I. -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin11.2.0 -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/backward -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I. -DRUBY_EXTCONF_H=\"extconf.h\" -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -I/usr/include -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long  -fno-common -pipe  -o compat.o -c compat.c
/usr/bin/gcc-4.2 -I. -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/x86_64-darwin11.2.0 -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1/ruby/backward -I/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/include/ruby-1.9.1 -I. -DRUBY_EXTCONF_H=\"extconf.h\" -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE   -I/usr/include -fno-common -O3 -ggdb -Wextra -Wno-unused-parameter -Wno-parentheses -Wpointer-arith -Wwrite-strings -Wno-missing-field-initializers -Wshorten-64-to-32 -Wno-long-long  -fno-common -pipe  -o pg.o -c pg.c
pg.c: In function ‘pgconn_exec’:
pg.c:947: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:986: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_prepare’:
pg.c:1052: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_exec_prepared’:
pg.c:1143: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:1173: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_s_escape’:
pg.c:1317: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:1324: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_send_query’:
pg.c:1497: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:1536: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_send_prepare’:
pg.c:1601: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_send_query_prepared’:
pg.c:1690: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:1721: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_wait_for_notify’:
pg.c:2096: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_put_copy_data’:
pg.c:2166: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘pgconn_block’:
pg.c:2579: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c:2585: warning: format not a string literal and no format arguments
pg.c:2600: warning: format not a string literal and no format arguments
pg.c: In function ‘pgconn_locreate’:
pg.c:2863: warning: implicit conversion shortens 64-bit value into a 32-bit value
pg.c: In function ‘find_or_create_johab’:
pg.c:3933: warning: comparison between signed and unsigned
pg.c:3939: warning: comparison between signed and unsigned
pg.c: In function ‘pgconn_get_client_encoding_as_rb_encoding’:
pg.c:3967: warning: comparison between signed and unsigned
pg.c: In function ‘pgconn_get_rb_encoding_as_pg_encname’:
pg.c:3999: warning: comparison between signed and unsigned
pg.c: In function ‘pgconn_internal_encoding_set’:
pg.c:4058: warning: comparison between signed and unsigned
pg.c: In function ‘pgconn_external_encoding’:
pg.c:4114: warning: comparison between signed and unsigned
/usr/bin/gcc-4.2 -dynamic -bundle -o pg_ext.bundle compat.o pg.o -L. -L/Users/Stuart/.rvm/rubies/ruby-1.9.2-p290/lib -L. -L/usr/local/lib -L/usr/lib -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace  -lruby.1.9.1 -lpq  -lpthread -ldl -lobjc 
ld: in /usr/local/lib/libssl.0.9.8.dylib, missing required architecture x86_64 in file for architecture x86_64
collect2: ld returned 1 exit status
make: *** [pg_ext.bundle] Error 1

有任何想法嗎? 我以前沒有在OSX上使用過Postgre,所以我的安裝可能有問題嗎?

您似乎正在嘗試在32位計算機上安裝64位版本。 檢查以確保您為您的操作系統下載了正確的版本。

我在OS Lion上遇到了完全相同的問題。 我通過輸入以下命令(在檢查了PostgreSQL 要求之后 )解決了這個問題:

rm Gemfile.lock

brew install readline (我不確定這里是否需要這樣做,但這是postgresql的依賴項,並且我已經有了ossp-uuid的最新版本)

brew unlink postgresql

brew install postgresql (執行大約需要4分鍾)

bundle install

我希望這可以幫助你!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM