質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

3044閲覧

pygameがインストールできません

Fantasy

総合スコア6

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2017/08/29 06:52

###前提・実現したいこと
mac os X EI Capitanでpygameをインストールしようとしています。
様々なサイトを見ながら、行っていましたが、最終的に
http://hine.hatenablog.com/entry/2015/10/28/170356
こちらのサイト様を見ながら行っておりました。
brew install sdl sdl_image sdl_mixer sdl_ttf portmidi
brew install mercurial
までは問題なくコマンドを実行できるのですが、
pip install hg+http://bitbucket.org/pygame/pygame
を実行す流すと次のようなエラーがでます。
自分ではエラーの内容が全くわからず、ご教授いただけると助かります。

###発生している問題・エラーメッセージ

3 warnings generated. cc -bundle -undefined dynamic_lookup -arch i386 -arch x86_64 -Wl,-F. build/temp.macosx-10.11-intel-2.7/src/sdlmain_osx.o -L/usr/local/lib -lSDLmain -lSDL -o build/lib.macosx-10.11-intel-2.7/pygame/sdlmain_osx.so -Wl,-framework,Cocoa ld: warning: ld: warning: ignoring file /usr/local/lib/libSDL.dylib, file was built for x86_64 which is not the architecture being linked (i386): /usr/local/lib/libSDL.dylibignoring file /usr/local/lib/libSDLmain.a, file was built for archive which is not the architecture being linked (i386): /usr/local/lib/libSDLmain.a running install_lib copying build/lib.macosx-10.11-intel-2.7/pygame/__init__.py -> /Library/Python/2.7/site-packages/pygame error: could not delete '/Library/Python/2.7/site-packages/pygame/__init__.py': Permission denied ---------------------------------------- Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/private/var/folders/p4/17d_cp791454bnxtsvz_y5r00000gn/T/pip-yg2yaE-build/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/p4/17d_cp791454bnxtsvz_y5r00000gn/T/pip-uMtGxL-record/install-record.txt --single-version-externally-managed --compile" failed with error code 1 in /private/var/folders/p4/17d_cp791454bnxtsvz_y5r00000gn/T/pip-yg2yaE-build/

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

32ビット版にコンパイルしたプログラムを、64ビット版のライブラリとリンクしようとしているために、エラーが出ています。

エラーメッセージ
「 ld: warning: ignoring file /usr/local/lib/libSDL.dylib, file was built for x86_64 which is not the architecture being linked (i386): 」を訳すと
ld: 注意: /usr/local/lib/libSDL.dylib は、64ビット用(x86_64)に作られていて、リンクしようとしているプログラムのアーキテクチャ(i386)と一致しませんから、無視します(リンクしません)
というような感じ。

コンパイルに用いたコマンド
cc -bundle -undefined dynamic_lookup -arch i386 -arch x86_64 -Wl,-F. build/temp.macosx-10.11-intel-2.7/src/sdlmain_osx.o -L/usr/local/lib -lSDLmain -lSDL -o build/lib.macosx-10.11-intel-2.7/pygame/sdlmain_osx.so -Wl,-framework,Cocoa
を見ると、32ビット用オプション(-arch i386)と64ビット用オプション(-arch x86_64)の両方が指定されていますが、これは変です。32ビット用か、64ビット用のどちらか一方にしかコンパイルできません。

ライブラリが64ビット用のようですので、32ビット用オプション(-arch i386)をコマンドから削るとうまくいくかもしれません。

投稿2017/08/29 08:02

coco_bauer

総合スコア6915

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Fantasy

2017/08/29 08:14

ご回答ありがとうございます!なるほどそういうエラーなんですね。そもそもどんなエラーかを理解していない状況にあったので、とても助かります。そして浅学でして本当に申し訳ないのですが、もう1つ質問させていただきたいです。コマンドということでして、おそらくhttp://bitbucket.org/pygame/pygame こちらの中のソースの話をされていると思うのですが、リンクで読み取っている状況でして、該当部分だけを消すということは可能なのでしょうか?全く見当違いの話をしていたらすみません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問