2012/03/17

python ubuntu make LDFLAGS

Python Developers Festa 2012.03 に参加してきました。 日本オラクルのオフィスは相変らず素敵でした。 Python 3 の発表が 3 つくらいあったので再び少し興味を持ちました。 使ってみよう、3.3.0a1。 Ubuntu を用意して tar.bz2 を落として
sudo aptitude install gcc
sudo aptitude install make
make だ! っつーことで make してみたところ
Python build finished, but the necessary bits to build these modules were not found:
_bz2               _curses            _curses_panel
_dbm               _gdbm              _lzma
_sqlite3           _ssl               _tkinter
readline           zlib
To find the necessary bits, look in setup.py in detect_modules() for the module's name.


Failed to build these modules:
_crypt
なんてこと言われたんでこれは流石に困るなと思い 沢山 package 入れてみることに:
sudo aptitude install libbz2-dev
sudo aptitude install libncurses5-dev
sudo aptitude install liblzma-dev
sudo aptitude install libssl-dev
sudo aptitude install libreadline-dev
sudo aptitude install zlib1g-dev
sudo aptitude install g++
sudo aptitude install dpkg-dev
sudo aptitude install libsqlite3-dev
sudo aptitude install libgdbm-dev
よし、こんだけ入れればいいだろう! っと思って make してみたら何かやっぱダメ。 な、なんでや!! つわけでググってみたところ LiPyrary - Python for books: How to compile Python on Ubuntu 11.04 これか!
export arch=$(dpkg-architecture -qDEB_HOST_MULTIARCH)
export LDFLAGS="-L/usr/lib/$arch -L/lib/$arch"
export CFLAGS="-I/usr/include/$arch"
export CPPFLAGS="-I/usr/include/$arch"
したら無事に色々な library が読み込まれて module が使えるようになりました。 めでたしめでたし。