トップページ > Linux > 2014年06月23日 > 6ESthziL

書き込み順位&時間帯一覧

3 位/154 ID中時間01234567891011121314151617181920212223Total
書き込み数0000000000000000112000307



使用した名前一覧書き込んだスレッド一覧
login:Penguin
Debian GNU/Linux スレッド Ver. 78

書き込みレス一覧

Debian GNU/Linux スレッド Ver. 78
70 :login:Penguin[sage]:2014/06/23(月) 16:58:06.29 ID:6ESthziL
本当にpython3.4が実行されていることを前提とすれば
$ python -c "import distutils.sysconfig; print(distutils.sysconfig.get_config_var('LIBPL'))"
でconfig-dirの場所を確認できるから、それを指定すればいい

あとlibpython3.4m.aの場所も要確認
Debian GNU/Linux スレッド Ver. 78
74 :login:Penguin[sage]:2014/06/23(月) 17:12:50.83 ID:6ESthziL
>>73
やっぱり最初に戻ったね
-rpathオプションで解決するかな
-rpath=/usr/local/python/libみたいな感じで環境に合わせてください
Debian GNU/Linux スレッド Ver. 78
77 :login:Penguin[sage]:2014/06/23(月) 18:29:11.89 ID:6ESthziL
>>76
libpython3.4m.soほにゃららはどこにあるのでしょうか?

・python3.4をenable-sharedでコンパイルしてるみたいだから、libpython3.4m.aはできてないはず
・vimをコンパイルするときに、pythonがshared-libraryでコンパイルされてるかなんてわからんから、
静的と判断してlibpython3.4m.a探して見つからずエラー
ってだけで、debian云々は別の話だと思う

python3しか使わないならenable-sharedにしなければ問題なかったんじゃないかな

とまとめモードに入ってみたり


debianのpythonパッケージは、静的リンクなのに.soもあるとかちょっと手を加えてるみたいですね
Debian GNU/Linux スレッド Ver. 78
78 :login:Penguin[sage]:2014/06/23(月) 18:55:09.61 ID:6ESthziL
うちのpyenv管理のpythonが3.3.3までだったので
pyenv環境で3.4.1を--enable-sharedだけ付けてインストールしてみた

configが
~/.pyenv/versions/3.4.1/lib/python3.4/config-3.4m
libpython3..4m.soが
~/.pyenv/versions/3.4.1/lib/libpython3.4m.so
だから、たぶん-rpath=/usr/local/lib/あたりじゃないのかな

pyenvの外で試してなくてすんません
Debian GNU/Linux スレッド Ver. 78
81 :login:Penguin[sage]:2014/06/23(月) 22:27:09.59 ID:6ESthziL
enable-sharedありとなし両方でインストールしてるんだね
自分でインストールしたpythonのファイルの掃除をして、やり直した方がいいんじゃないですかね

手元では、
pyenvでの3.4.1
$ PYTHON_CONFIGURE_OPTS="--enable-shared" pyenv install 3.4.1
$ pyenv rehash
$ pyenv global 3.4.1

vimのソースをダウンロードして展開してから
$ LDFLAGS="-export-dynamic -Wl,-rpath=${HOME}/.pyenv/versions/3.4.1/lib" ./configure --enable-python3interp --with-features=huge
$ ./src/vim
だけでできましたよ
:python3 print(sys.version)など問題なし
Debian GNU/Linux スレッド Ver. 78
82 :login:Penguin[sage]:2014/06/23(月) 22:33:40.14 ID:6ESthziL
python3.4.1は--enable-sharedを外してインストールし直すと思うのでenable-sharedが必要かどうかは
そのうち確認できます

先のリンク先での議論は流し読んだだけですが、元々debian系のパッケージの話であって
自分でソースからコンパイルする際にはdebianかどうか関係ない話だと思います
Debian GNU/Linux スレッド Ver. 78
84 :login:Penguin[sage]:2014/06/23(月) 22:51:40.33 ID:6ESthziL
pyenvには3.3.3も入ってたことを思い出したのでenable-sharedでの違いを確認してみました
3.3.3はenable-sharedを付けずに
pyenv install 3.3.3
でインストールしたもの
これにvimを
./configure --enable-python3interp --with-features=huge
とすると、
;python3 print(sys.version) OK
:python3 import time ERROR

enable-sharedでインストールした先の3.4.1の場合は、
;python3 import time
問題なし
ということで、書いてあったとおりpython3ではenable-shared付けてないとvim+python3は残念なことになるようですね


※このページは、『2ちゃんねる』の書き込みを基に自動生成したものです。オリジナルはリンク先の2ちゃんねるの書き込みです。
※このサイトでオリジナルの書き込みについては対応できません。
※何か問題のある場合はメールをしてください。対応します。