専門学校で行っている講義のプログラミングパートをここで公開(メモ代わり)します。
ソケットを使ったネットワークプログラミングをしようというものです。
ここでは、 Windows/Linux上で動作するIPv4/IPv6対応のプログラムを作成します。
動作確認環境
Windows
Windows10、VisualStudio2017で動作を確認してます。
Linux
CentOS 7.6とRaspberryPi(Raspbian GNU/Linux 8 (jessie))で動作を確認しています。
ここで使用している開発環境
VisualStudio2017
Windowsのプログラム
C++を使ったコンソールアプリを作成します。
Linuxのプログラム
Visual C++ for Linuxを使用してWindowsアプリと比較しながら作成します。
makefileを使用しますので、Linux側でビルドすることもできます
その他のツール
WireShark(パケットモニタリングツール)
TeraTerm(SSHによるリーモートログイン)
WinSCP(SSHによるファイル転送)
KanjiTranslator(漢字コード変換)
Visual Studio側
Visual Studio installersを使ってLinux開発環境(C++)をインストールします
詳細->変更
「C++によるLinux開発」をインストールします
(*)VisualStudioを使わずにLinuxの開発を行う場合は不要です
Linux側準備
VisualStudioを使ってリモートデバッグを行うことができますので
g++、gdb、gdbserverのインストールします
RaspberryPi
sudo apt-get install g++
sudo apt-get install gdb
sudo apt-get install gdbserver
CentOSの時
sudo yum install gcc-c++
sudo yum install gdb
sudo yum install gdb-gdbserver