さぁ今日もやっていきましょう!

 

前回、puttyで接続するとこまで確認しました。今回は、Pythonをいれます!

はい!最初からUbuntuにはPythonが入ってます。

 

確認すると Python 3.8.10 が入ってました。

で、2回目の開発環境導入なので前回からもやもやしてるPythonが開発環境に2つ

ある状態を解消したい! と思ってぐぐぐぐぐぐってますと。。。なんと

こんな記事をみつけ・・・ふぅ~大丈夫!まだ消してないから!!

 

どうやら削除しちゃダメみたいですね。私も掟に従います!!

 

なので、次に考えたのが 最新バージョンにアップグレードしたら1個でよくない?

 

ってことで、

 

いぇ~い!!今度は最新のバージョンを使いましょうね!ってことです。

サポートの問題があるみたいですね^-^

ただし、ここでも書かれているのが

 

お古は消しちゃだめよ!!新たに新しいのインストールしてそっちを開発に使えとの指示!

 

面倒なのがさぁ。。。 本とかで python3 OOOO OOOO みたいな書き方してね!って

指示でるんだけどさぁ・・・python3.8 と python3.9 が入ってると python3.8が動いてる

気がするんだよねぇ・・・ だから 毎度 python3.9 OOO OOO みたいな書き方するんだ

けど。。。2回目なのでそのあたり確認しようと思いますが。。。プンプンメンドォクサイ

 

とりあえず、記事に従ってやっていいきましょう^-^

こういう技術の記事上げてくれる人って 本当に感謝!感謝!ですね!

 

あ~思い出した!!そういえばユーザー作ってない!!先にそちらをやりますかねぇ!

 

手順はこちら!!はい。手抜き!!探す手間省けたでしょ^-^

 

すでにputtyでログイン等済ませて OOOO@OOOO~$ □ みたいな画面になってると

おもうので $の後に 

 

sudo su -

 

puttyですが、Ctrl + C(コピーのショートカットキー)でコピーすると puttyのほうでは

マウスの 右クリック で貼り付けできます! 短縮短縮!

 

次に

 

adduser OOOO

 

Oには好きなユーザー名入れましょう^-^全角ひらがな使う強者にはならないでください。

半角英数でユーザーは作りましょうね!

 

New password :

 

とパスワードを求められますので 半角英数 で入力してください。

相変わらず ***  とかでないのでそのまま enter 押すと再入力を求められるので
 

Retype new password :

 

ここは 男に二言はない! と言わずに入力して下さい!

続いて、貴様の意見を聞いてアカウント作ってやったんだから貴様の事を教えろ!

と事情聴取が始まります。

 

Full Name []:

Room Number []:

Work Phone []:

Home Phone []:

Other []:

 

私は黙秘権を行使したので全て enter で流しました。

最後に来る YES or NO のクイズは ずばり YES です。

 

Is the information correct? [Y/n] Y

 

これで新規ユーザーの作成は完成です。続きまして

 

gpasswd -a OOOO sudo

 

Oは先ほど登録したユーザー名です。登録した新規ユーザーをsudoのグループに

加えます。会社で言う、rootが社長で sudoは 役員ですけね。。ちょっと権限持ってます。

 

今はrootユーザーなので、登録した新規ユーザーに切り替えます。

 

exit

 

と入力して、一度ログアウトします。 puttyを右上の X で閉じて、再度puttyを立ち上げます。

 

login as: 新規ユーザー名

password: 新規ユーザーのパスワード

 

でログインできるようになります。以降はこちらのユーザーを使って開発環境などは作成して

いきます。

 

カエルさて、では先ほどのpythonの話題に戻りましょう。

ブログで解説されている通り、

 

sudo apt update

 

と入力すると、passwordを求められるましたら、loginのときにつかったユーザーの

パスワードを入力してあげてください。

すると何やらアップデートが始まります。

終わりましたらこちらを入力(下記は間違いが見つかり下の方の記事で修正されて

います。

 

********間違って四苦八苦してるので面倒な人は読み飛ばしてね 下矢印***********

 

sudo apt install build-essential libbz2-dev libdb-dev libreadline-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libsqlite3-dev libssl-dev zlib1g-dev uuid-dev tk-dev

 

アプデよりサクッとおわります。

続いてpythonのソースのダウンロードですが私が調べた時には3.10.2が出ていましたので

新しいのを使っていきます。

 

********間違って四苦八苦してるので面倒な人は読み飛ばしてね 上矢印***********

 

 

wget https://www.python.org/ftp/python/3.10.2/Python-3.10.2.tar.xz

 

つづいて解凍

 

tar xJf Python-3.10.2.tar.xz

 

順調に解凍まで進んでいると

 

ls

 

と打つと


Python-3.10.2  Python-3.10.2.tar.xz

 

という2つのディレクトリが確認できます。

 

********間違って四苦八苦してるので面倒な人は読み飛ばしてね 下矢印***********

 

cd Python-3.10.2

 

Python-3.10.2のディレクトリに移動します。

./・・・・なんだこの ./ は・・・・

wget はWEBからデータ取ってくるよ

tar は圧縮ファイルの解凍

ls は1つ下の階層のファイルを表示

cd は指定したディレクトリへ移動

./ ???? わかりません!

 

 

調査しました。./configure でconfigureのスクリプトを実行。

何か手順書みたいなのを書いてるのでしょうね。

わかったので、

 

./configure

 

でスクリプトを実行して(checking ・・・ って10数行出てきました)

 

make

 

configureで作成されたmakefileに基づいてコンパイルします。

てことは./configureすることでmakefaileというインストールするための手順書

ができるわけですね、その手順書にしたがってコンパイル、、、インストールする

ためにいろいろなファイルを変換してるのですね。

で準備が出来たので

 

sudo make install

 

で管理者権限にてわたくしは こやつをインストールするぜ!って流れです。

sudoは、会社のお偉いさんのハンコですよ。会社のペーペーが書類作っても会社の

お偉いさんのハンコがないと動かないんですよ!インストールしてくれないんですよ!

水戸黄門の印籠と同じで sudo って書くと ヘイ 承知しました!ってインストール始めて

くれます!

 

で実行すると事故をする!! 

sudo: make: command not found
そんなコマンドしらね!!って。。。調べたら make インストールしてないでしょ?

ってことらしいです。

 

sudo apt install make

 

でmakeをインストールしましたがうまくいきません!

調べると、./configureのとこで既にエラーを吐いてました!!!!

checking for OOOO .... no   (NOだと!!!)

これは必要なものが入ってないぜ!っていう事らしい。依存関係のファイルをインストール

 

sudo apt install build-essential libbz2-dev libdb-dev libreadline-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libsqlite3-dev libssl-dev zlib1g-dev uuid-dev tk-dev

 

これが問題らしい。他のサイトを見ると

 

sudo apt install build-essential 

sudo apt install libreadline-dev libncursesw5-dev libssl-dev libsqlite3-dev libgdbm-dev libbz2-dev liblzma-dev zlib1g-dev uuid-dev libffi-dev libdb-dev

 

ちょっと書き方が前回と違うなぁ。

それでもうまくいきません。調べていると sudo apt install build-essential  の結果に

Unable to locate package build-essential と記載されます。

これは sudo apt update で apt をアップグレードすると直る!との記事ばかりで

やっても結果は変わりません。

記事のUbuntuのバージョンが18なので、、そのあたりかなぁ??。。疑問は残りますが、

開発環境をつくるのにこだわってもしょうがないので、課題としては残りますが、環境を

つくることを優先するために前回 開発環境ができたやり方をやります。

 

 

こちらの方はUbuntu20.04でバージョンもサーバーも同じなので真似っこしていきましょう!

 

7. 開発パッケージのインストール  あたりから進んでいきます。

 

cd

 

でディレクトリを最上階に戻して

 

********間違って四苦八苦してるので面倒な人は読み飛ばしてね 上矢印***********

 

sudo apt install build-essential

 

からの

 

sudo apt install zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev wget libbz2-dev

 

こちらはあっさり通ります。多少内容が先ほどとは違うのですが。。。そこかなぁ?・・・

と思いつつ、、、これ通った後ならもしかして。。。./configure できちゃう??

 

cd Python-3.10.2

 

ディレクトリを移動して

 

./configure

 

あれ。。。通って、、、 creating Makefile って最後に書いてある。

グラサングラサングラサン

さぁ!もどりましょう!!

 

make

 

からの。。。このmakeが長い!!!良いことなんだけど、、待ちましょう!

 

sudo make install

 

でずら~~~~と文字が流れ始めますおねがいおねがい

 

cd でディレクトリを戻して python3 -V でバージョンを調べると

python3.10.2 と表示されます。最高♪

続いて

 

sudo apt install python3.10-dev

 

・・・・・・・パッケージが見つからんって怒られます。

あそこでなんでmakeしちゃったかなぁ~。。。記事通り3.9ならこんなこと起きないのに・・・

でも新しいの使わないといけない気がしたんだよ!!人柱として!!

 

調べました!!!venvっていう仮想環境を築くようにこのあと記事は動いているのですが

python2とかpython3が混在していた時に影響が出ないようにこの開発はこっちのpython

使えるようにしましょう!的な感じをつくるのがvenvらしく今回はpythn3しか使わないので

必要なし!と判断して仮想環境はすっ飛ばす!ぶっ飛ばす!

 

9. Web サーバー(Nginx)のインストール

 

へいきましょう!

 

cd  (ディレクトリの最上階へ)

sudo apt install nginx

 

インストールが終わりましたら、サーバーのGIP(グローバルIPアドレス)または設定したドメインをchromeなどのWEBブラウザのアドレスに打ち込んでください。

 

http://OOOOOOOOOOOO

 

Welcome to Nginx と表示されればNginxのインストールも完了です。

 

悩むことは苦痛だけど、『痛みなくして・・・かい。。』ゴホッ ゴホッ

痛みは人をより強くします。必ず成長につながるので頑張ってください。

 

今回はこのあたりまででおわ~り~~♪ 次回もがんばりまっしょい!!