0

マウンテンライオンに乗っています。私のユーザー名は管理者です。

アップデート!!!ターミナルで次の 3 行を実行すると、すべて問題ありません。

export ARCHFLAGS='-arch x86_64'
export PATH=/Library/PostgreSQL/9.1/bin:${PATH}
gem install pg

git push heroku master をやろうとすると。失敗します。私はとても困っています。どうすればいいのかわからない。

「どのheroku」の結果は/usr/bin/heroku

どの git/usr/local/git/bin/gitになるか

ruby -vの結果はruby​​ 1.8.7になります

Postgres バージョン 1.0 (11) を実行しています

Gemfile と Gemfile.lock があります。

new-host:testing3 admin$ ls -la
total 72
drwxr-xr-x  21 admin  staff   714 Dec  9 18:40 .
drwx------+  6 admin  staff   204 Dec  8 16:20 ..
drwxr-xr-x  14 admin  staff   476 Dec 10 00:59 .git
-rw-r--r--   1 admin  staff   609 Dec  9 20:12 .gitignore
-rw-r--r--   1 admin  staff   812 Dec  9 20:14 Gemfile
-rw-r--r--   1 admin  staff  2502 Dec  6 17:54 Gemfile.lock
-rw-r--r--   1 admin  staff   204 Dec  9 18:40 README.markdown
-rw-r--r--   1 admin  staff  9208 Dec  6 17:54 README.rdoc
-rw-r--r--   1 admin  staff   273 Dec  6 17:54 Rakefile
drwxr-xr-x   8 admin  staff   272 Dec  8 18:28 app
drwxr-xr-x  10 admin  staff   340 Dec  6 17:54 config
-rw-r--r--   1 admin  staff   158 Dec  6 17:54 config.ru
drwxr-xr-x   4 admin  staff   136 Dec  8 16:34 db
drwxr-xr-x   3 admin  staff   102 Dec  6 17:54 doc
drwxr-xr-x   4 admin  staff   136 Dec  6 17:54 lib
drwxr-xr-x   4 admin  staff   136 Dec  8 16:33 log
drwxr-xr-x   8 admin  staff   272 Dec  6 17:54 public
drwxr-xr-x   3 admin  staff   102 Dec  6 17:54 script
drwxr-xr-x   8 admin  staff   272 Dec  6 17:54 test
drwxr-xr-x   6 admin  staff   204 Dec  8 16:33 tmp
drwxr-xr-x   4 admin  staff   136 Dec  6 17:54 vendor

Gemfile.lock は次のようになります。

GEM
  remote: https://rubygems.org/
  specs:
    actionmailer (3.2.9)
      actionpack (= 3.2.9)
      mail (~> 2.4.4)
    actionpack (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
      builder (~> 3.0.0)
      erubis (~> 2.7.0)
      journey (~> 1.0.4)
      rack (~> 1.4.0)
      rack-cache (~> 1.2)
      rack-test (~> 0.6.1)
      sprockets (~> 2.2.1)
    activemodel (3.2.9)
      activesupport (= 3.2.9)
      builder (~> 3.0.0)
    activerecord (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
      arel (~> 3.0.2)
      tzinfo (~> 0.3.29)
    activeresource (3.2.9)
      activemodel (= 3.2.9)
      activesupport (= 3.2.9)
    activesupport (3.2.9)
      i18n (~> 0.6)
      multi_json (~> 1.0)
    arel (3.0.2)
    builder (3.0.4)
    coffee-rails (3.2.2)
      coffee-script (>= 2.2.0)
      railties (~> 3.2.0)
    coffee-script (2.2.0)
      coffee-script-source
      execjs
    coffee-script-source (1.4.0)
    erubis (2.7.0)
    execjs (1.4.0)
      multi_json (~> 1.0)
    hike (1.2.1)
    i18n (0.6.1)
    journey (1.0.4)
    jquery-rails (2.1.4)
      railties (>= 3.0, < 5.0)
      thor (>= 0.14, < 2.0)
    json (1.7.5)
    mail (2.4.4)
      i18n (>= 0.4.0)
      mime-types (~> 1.16)
      treetop (~> 1.4.8)
    mime-types (1.19)
    multi_json (1.4.0)
    polyglot (0.3.3)
    rack (1.4.1)
    rack-cache (1.2)
      rack (>= 0.4)
    rack-ssl (1.3.2)
      rack
    rack-test (0.6.2)
      rack (>= 1.0)
    rails (3.2.9)
      actionmailer (= 3.2.9)
      actionpack (= 3.2.9)
      activerecord (= 3.2.9)
      activeresource (= 3.2.9)
      activesupport (= 3.2.9)
      bundler (~> 1.0)
      railties (= 3.2.9)
    railties (3.2.9)
      actionpack (= 3.2.9)
      activesupport (= 3.2.9)
      rack-ssl (~> 1.3.2)
      rake (>= 0.8.7)
      rdoc (~> 3.4)
      thor (>= 0.14.6, < 2.0)
    rake (10.0.2)
    rdoc (3.12)
      json (~> 1.4)
    sass (3.2.3)
    sass-rails (3.2.5)
      railties (~> 3.2.0)
      sass (>= 3.1.10)
      tilt (~> 1.3)
    sprockets (2.2.2)
      hike (~> 1.2)
      multi_json (~> 1.0)
      rack (~> 1.0)
      tilt (~> 1.1, != 1.3.0)
    sqlite3 (1.3.6)
    thor (0.16.0)
    tilt (1.3.3)
    treetop (1.4.12)
      polyglot
      polyglot (>= 0.3.1)
    tzinfo (0.3.35)
    uglifier (1.3.0)
      execjs (>= 0.3.0)
      multi_json (~> 1.0, >= 1.0.2)

PLATFORMS
  ruby

DEPENDENCIES
  coffee-rails (~> 3.2.1)
  jquery-rails
  rails (= 3.2.9)
  sass-rails (~> 3.2.3)
  sqlite3
  uglifier (>= 1.0.3)

Gemfile は次のようになります。

source 'https://rubygems.org'

gem 'rails', '3.2.9'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

#gem 'sqlite3-ruby', '1.2.5', :group => development

gem 'pg'

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

github のリポジトリを heroku のサブドメイン (iterm で「heroku create」を実行して作成) にプッシュするために次のことを行いましたが、失敗しました:

new-host:testing3 admin$ git push heroku master
Counting objects: 72, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (58/58), done.
Writing objects: 100% (72/72), 26.90 KiB, done.
Total 72 (delta 8), reused 0 (delta 0)

-----> Heroku receiving push
-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.2.2
       Running: bundle install --without development:test --path vendor/bundle --binstubs bin/ --deployment
       You are trying to install in deployment mode after changing
       your Gemfile. Run `bundle install` elsewhere and add the
       updated Gemfile.lock to version control.
       You have added to the Gemfile:
       * pg
       You have deleted from the Gemfile:
       * sqlite3
 !
 !     Failed to install gems via Bundler.
 !
 !     Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:limitless-thicket-9719.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:limitless-thicket-9719.git'
new-host:testing3 admin$ 

Postgres をアプリケーション フォルダーに配置し、Postgres.app という名前になるようにインストールしたため、次のようにしました。

new-host:testing3 admin$ gem install pg -- --with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config
Building native extensions.  This could take a while...
ERROR:  Error installing pg:
    ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb --with-pg-config=/Applications/Postgres.app/Contents/MacOS/bin/pg_config
Using config values from /Applications/Postgres.app/Contents/MacOS/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... no
checking for PQconnectdb() in -llibpq... no
checking for PQconnectdb() in -lms/libpq... no
Can't find the PostgreSQL client library (libpq)
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
    --with-pg
    --without-pg
    --with-pg-dir
    --without-pg-dir
    --with-pg-include
    --without-pg-include=${pg-dir}/include
    --with-pg-lib
    --without-pg-lib=${pg-dir}/lib
    --with-pg-config
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
    --with-ms/libpqlib
    --without-ms/libpqlib


Gem files will remain installed in /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1 for inspection.
Results logged to /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1/ext/gem_make.out
new-host:testing3 admin$ --ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
-bash: --ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby: No such file or directory
new-host:testing3 admin$ --with-pg
-bash: --with-pg: command not found
new-host:testing3 admin$ --without-pg
-bash: --without-pg: command not found
new-host:testing3 admin$ --with-pg-dir
-bash: --with-pg-dir: command not found
new-host:testing3 admin$ --without-pg-dir
-bash: --without-pg-dir: command not found
new-host:testing3 admin$ --with-pg-include
-bash: --with-pg-include: command not found
new-host:testing3 admin$ --without-pg-include=${pg-dir}/include
-bash: --without-pg-include=dir/include: No such file or directory
new-host:testing3 admin$ --with-pg-lib
-bash: --with-pg-lib: command not found
new-host:testing3 admin$ --without-pg-lib=${pg-dir}/lib
-bash: --without-pg-lib=dir/lib: No such file or directory
new-host:testing3 admin$ --with-pg-config
-bash: --with-pg-config: command not found
new-host:testing3 admin$ --with-pqlib
-bash: --with-pqlib: command not found
new-host:testing3 admin$ --without-pqlib
-bash: --without-pqlib: command not found
new-host:testing3 admin$ --with-libpqlib
-bash: --with-libpqlib: command not found
new-host:testing3 admin$ --without-libpqlib
-bash: --without-libpqlib: command not found
new-host:testing3 admin$ --with-ms/libpqlib
-bash: --with-ms/libpqlib: No such file or directory
new-host:testing3 admin$ --without-ms/libpqlib
-bash: --without-ms/libpqlib: No such file or directory
new-host:testing3 admin$ 
new-host:testing3 admin$ 
new-host:testing3 admin$ Gem files will remain installed in /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1 for inspection.
ERROR:  While executing gem ... (RuntimeError)
    Unknown command files
new-host:testing3 admin$ Results logged to /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1/ext/gem_make.out

私がこれを行うとき:

new-host:testing3 admin$ bundle install
Fetching gem metadata from https://rubygems.org/...........
Fetching gem metadata from https://rubygems.org/..
Using rake (10.0.2) 
Using i18n (0.6.1) 
Using multi_json (1.4.0) 
Using activesupport (3.2.9) 
Using builder (3.0.4) 
Using activemodel (3.2.9) 
Using erubis (2.7.0) 
Using journey (1.0.4) 
Using rack (1.4.1) 
Using rack-cache (1.2) 
Using rack-test (0.6.2) 
Using hike (1.2.1) 
Using tilt (1.3.3) 
Using sprockets (2.2.2) 
Using actionpack (3.2.9) 
Using mime-types (1.19) 
Using polyglot (0.3.3) 
Using treetop (1.4.12) 
Using mail (2.4.4) 
Using actionmailer (3.2.9) 
Using arel (3.0.2) 
Using tzinfo (0.3.35) 
Using activerecord (3.2.9) 
Using activeresource (3.2.9) 
Using bundler (1.2.3) 
Using coffee-script-source (1.4.0) 
Using execjs (1.4.0) 
Using coffee-script (2.2.0) 
Using rack-ssl (1.3.2) 
Using json (1.7.5) 
Using rdoc (3.12) 
Using thor (0.16.0) 
Using railties (3.2.9) 
Using coffee-rails (3.2.2) 
Using jquery-rails (2.1.4) 
Installing pg (0.14.1) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb 
checking for pg_config... yes
Using config values from /usr/bin/pg_config
checking for libpq-fe.h... yes
checking for libpq/libpq-fs.h... yes
checking for pg_config_manual.h... yes
checking for PQconnectdb() in -lpq... no
checking for PQconnectdb() in -llibpq... no
checking for PQconnectdb() in -lms/libpq... no
Can't find the PostgreSQL client library (libpq)
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
    --with-opt-dir
    --without-opt-dir
    --with-opt-include
    --without-opt-include=${opt-dir}/include
    --with-opt-lib
    --without-opt-lib=${opt-dir}/lib
    --with-make-prog
    --without-make-prog
    --srcdir=.
    --curdir
    --ruby=/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
    --with-pg
    --without-pg
    --with-pg-dir
    --without-pg-dir
    --with-pg-include
    --without-pg-include=${pg-dir}/include
    --with-pg-lib
    --without-pg-lib=${pg-dir}/lib
    --with-pg-config
    --without-pg-config
    --with-pg_config
    --without-pg_config
    --with-pqlib
    --without-pqlib
    --with-libpqlib
    --without-libpqlib
    --with-ms/libpqlib
    --without-ms/libpqlib


Gem files will remain installed in /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1 for inspection.
Results logged to /Users/admin/.rvm/gems/ruby-1.9.3-p327/gems/pg-0.14.1/ext/gem_make.out
An error occurred while installing pg (0.14.1), and Bundler cannot continue.
Make sure that `gem install pg -v '0.14.1'` succeeds before bundling.
4

2 に答える 2

2

何が起こっているのかというと、Gemfileに加えた変更に基づいてローカルgemが適切に構成されていないときに、ライブサーバーにプッシュしようとしているということです。

最後のエラーメッセージの提案、それがうまくいくことを確認することgem install pgは良いものです。まず、Postgresを完全にアンインストールする必要があります。次に、http://postgresapp.comからPostgres.appをインストールます。これが最も簡単な方法です。

それがインストールされ、コマンドラインツールを使用して適切に接続できるようになったら、実行gem install pgしてみて、それが機能するかどうかを確認します。含まれている場合は、実行するbundle installと正常に完了するはずです。これが機能すると、問題なくherokuにプッシュできるようになります。

于 2012-12-10T06:20:31.973 に答える
0
export ARCHFLAGS='-arch x86_64'
export PATH=/Library/PostgreSQL/9.1/bin:${PATH}
gem install pg

プロジェクトフォルダーのGemfileに移動し、エディターで開いて、次のようにします。

source 'https://rubygems.org'

gem 'rails', '3.2.9'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

#gem 'sqlite3-ruby', '1.2.5', :group => development

group :production do
  gem 'pg'
end

#group :development, :test do
#  gem 'sqlite3'
#end

# Gems used only for assets and not required
# in production environments by default.
group :assets do
  gem 'sass-rails',   '~> 3.2.3'
  gem 'coffee-rails', '~> 3.2.1'

  # See https://github.com/sstephenson/execjs#readme for more supported runtimes
  # gem 'therubyracer', :platforms => :ruby

  gem 'uglifier', '>= 1.0.3'
end

gem 'jquery-rails'

# To use ActiveModel has_secure_password
# gem 'bcrypt-ruby', '~> 3.0.0'

# To use Jbuilder templates for JSON
# gem 'jbuilder'

# Use unicorn as the app server
# gem 'unicorn'

# Deploy with Capistrano
# gem 'capistrano'

# To use debugger
# gem 'debugger'

ファイルを保存する

バンドルインストールを実行します-本番環境なし

gitadd。

git commit-a-m「Herokurecommit」

git push

git push heroku master

于 2012-12-10T07:33:29.813 に答える