Ubuntu18 の Python3.5 で pip install uwsgi でエラーしたのでPython3.5をビルドしなおす

(コメント)

Ubuntu18にアップデートし 、デフォルトが Python3.6 になったマシンで、Python3.5 の検証が必要になった。

python3.5 -m venv venv35

でvenv を作って

. venv35/bin/activate
pip install uwsgi

すると

    /usr/bin/x86_64-linux-gnu-ld: /usr/local/lib/python3.5/config-3.5m/libpython3.5m.a(mystrtoul.o): relocation R_X86_64_32S against symbol `_Py_ctype_table' can not be used when making a PIE object。 -fPIC を付けて再コンパイルしてください。
    /usr/bin/x86_64-linux-gnu-ld: /usr/local/lib/python3.5/config-3.5m/libpython3.5m.a(structmember.o): relocation R_X86_64_32S against `.rodata' can not be used when making a PIE object。 -fPIC を付け
て再コンパイルしてください。
    /usr/bin/x86_64-linux-gnu-ld: /usr/local/lib/python3.5/config-3.5m/libpython3.5m.a(parser.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a PIE object。 -fPIC を付け
て再コンパイルしてください。
    /usr/bin/x86_64-linux-gnu-ld: 最終リンクに失敗しました: 出力に対応するセクションがありません
    collect2: error: ld returned 1 exit status
    *** error linking uWSGI ***

のようにエラーが出て、リンクに失敗した。

なので、Python3.5 をビルドしなおす。

curl -O https://www.python.org/ftp/python/3.5.6/Python-3.5.6rc1.tgztar -xzvf Python-3.5.6rc1.tgz
cd Python-3.5.6rc1/
./configure --prefix=$HOME/.local --enable-optimizations
make -s -j2
make install

そして、そのpythonでvenv を作り

~/.local/bin/python3.5 -m venv venv356
. venv356/bin/activate
pip install uwsgi

インストールできる

参考

UbuntuでPythonをソースからインストール

https://qiita.com/yniji/items/8e392103a6f2a4152606

現在未評価

コメント

最近のツイート

  • ytyng

    ytyng @ytyng

    俺もスタバアプリにログインできないよ
    3 ヶ月 前

  • 安藤拓郎 Takuro Ando

    安藤拓郎 Takuro Ando @takuroando

    ytyng

    これまでいろんなグッズを作ってきたけど、今回は「お米」と聞いて買うしかないなと。今夜の夕食はコシヒカリ!箸もセットだし^^ https://t.co/01ucQx9qtw #腰乃展 #マンガ展 https://t.co/4VL2vOe0Og
    3 ヶ月, 2 週間 前

  • ytyng

    ytyng @ytyng

    講談社さんとやった全部入り電子書籍セットがギネスブックに登録されたよー https://t.co/rbkd3IYub0
    3 ヶ月, 2 週間 前