linuxでcを動かす…?
自分が必要になったため、忘備録として残しておきます。
入れるOSはubuntu。恥ずかしながらlinuxを触ったことがないので、そこから書いていきます。
ubuntuの導入
いま私はWindowsを使ってますが、ネットでは、ubuntuを入れるにはlinuxとのデュアルブートにしてやればいい、という記事をよく見かけます。
この場合、データのやり取りが面倒くさいのが懸念で他の手段を探したところ見つけました。
Virtualbox + ubuntu
Virtualboxで仮想環境の構築ができて、そこにubuntuを入れて動かすという仕組み。
そして、成蹊学園様より大変すばらしい導入資料が上がってましたので参照させてもらいました。
win⇔ubuntu間の共有フォルダの作成方法もあって、重宝しました。ありがとうございます。
ただ、いくつかはまったポイントがあったので紹介。
ログイン画面が表示されない
Ubuntuのログイン画面が真っ暗なまま何も表示されない状態になりました。
これはVirtualbox側のディスプレイ設定に問題があり、
設定アイコン⇒ディスプレイ⇒グラフィックスコントローラ
からVMSVGAを選択する必要があります。
選択後、ubuntuを再起動するとログイン画面が表示されました。
画面が見切れる
いざ、ログインができて画面表示されるも、今度は画面が見切れて表示されない問題が発生。
これはubuntu側のディスプレイ設定が問題です。
自動でリサイズしてくれないらしい。
ubuntu開くと、デスクトップ右上部のアイコンが並んだところをクリックして設定画面を表示します。
その中にあるディスプレイから解像度行で適切なサイズを選択する必要があります。
日本語が打てない
日本語入力に対応するには、ubuntuデスクトップ右上部に”A”表示があるので、そこをクリック。
日本語(mozc)を選択することで日本語打てるようになります。
Cプログラムを実行する
こちらの記事が参考にさせていただいています。
C言語で書いたプログラムをコマンドからビルドして実行可能ファイルを出力し、それをコマンドで叩けば実行されるというのが分かります。
例えば、デスクトップにooo.cを作る。
デスクトップディレクトリにいる状態で、 ./gcc ooo.cを入力すると、実行可能ファイルのa.outを生成。
./a を入力すると、実行されます。
現実にはmakeを使う?
linuxも分からない状態で、とりあえず入れて動かしているものの、最終目標はいただいたC言語ファイルの実行。
これを上で述べた手順で実行可能ファイルを生成しようとしても関数の定義が見つからない、と出る。
関数の定義が入った別ファイルはインクルードしてるんだが…?
ここらへんはよく分かってないものの、ファイル一式の中にmakefileというファイルがあったので、これを調べたところ、makeコマンドだけでビルドしてくれる優れものだった。
ビルドするときのコマンド諸々がmakefileに入っていて、それを参照してビルドが実行されるようだ。
コメント