lldb

/*この記事は自分のメモのためだけに作成しました

わかりにくいと思われますので参考にしないほうがいいかと思います

読んでわからなくなっても対応できません

アドバイスはいただけるととても嬉しく思います*/

 

前置きした上で本編へ

 

そもそもlldbとは

The LLDB Debugger (LLDB) is a software debugger. It is built as a set of reusable components which extensively use existing libraries from the larger LLVM Project, such as the Clang expression parser and LLVM disassembler.

 

//from wikipedia URL: 

https://en.wikipedia.org/wiki/LLDB_(debugger)

 大まかに言えばデバッガ(大まか過ぎる

 

今回はXcodeで使う上で必要なメモを残します

lldbの使い方

lldbを使えるようにする

//Xcodeのインストール等は終わっているものとします

Cファイルを作成する

まぁ、エディタでプログラムを書きます

今回は例として過去のエントリからCファイルを持ってきます

 

poolbooyer.hatenablog.jp

 ここにあるプログラムでやってみます

コンパイルする

C言語の場合はもちろんコンパイルが必要なのですがこの時のコマンドにオプションの"-g"をつけます

この時は

gcc -o harmonic harmonic.c -g 

以上のようなコマンドになります

コンパイル成功時にメッセージが変わる等はありません

ですがharmonic.dSYMというファイルができます

 

f:id:poolbooyer:20161227233808p:plain

こんな感じ

lldbをやってみる

lldbの起動方法

lldbはlldbコマンドに引数で実行ファイルの名称をつけることで起動します

lldb harmonic 

起動すると以下の画面になります

f:id:poolbooyer:20161227235502p:plain

 lldbでの実行方法

作成したプログラムを実行するには

(lldb) run

もしくは

(lldb) r  

を行います

行った時の画面

f:id:poolbooyer:20170101221542p:plain

f:id:poolbooyer:20170101221616p:plain

こんな感じ

 

 

 

 

/// 2017.1.1編集の時間の都合で一度この時点で公開します、今後時間を見つけて追加して行きます

今後やりたいこと

今日は今後やりたいことを自分でも忘れないようにメモを

//無線のコンテストもそろそろひと段落するしそういうのもやりたいっていうのを列挙する

 

     1.マイコン関連

秋月電子通商のサイトを見ていて見つけたこれ(通販コード:K-04590)

akizukidenshi.com

をまずは作ろうかなと

あとはLCDも購入して使えるようにすると面白いかなとか考えてます

授業でもマイコンやってるのでそれを応用して自分でも色々なものを作りたいと思っています

 

  2.無線関連

2016年のコンテストの振り返り等を時間を見つけてやれればと

あとはデータの蓄積に向けて色々と書類を作成しようと思っています

クラブ局なのもあるので色々と蓄積できるようにしないと,,,

 

  3.web関連

今の所フリーのところに置いてある高調波計算ツールとかをそのうちお名前.comでドメイン買ってそっちに移行するかもしれないです

移行したら流れも含めてまた書き込みます

 

 

以上色々とやりたいことを

やり始めたら色々と過程の報告等で書き込みますのでアドバイス等いただければと思います

高調波計算(PHP)

 

過去に一度書いたブログに

poolbooyer.hatenablog.jp

こんなものがあったのですが

これをPHPに移植してみました。

 

ここで改めて仕様の確認

仕様:  

html         周波数と何倍にするか(new)を入力

                      |

PHP     入力された周波数と倍数を変数に代入

                      |

            入力を出力

                      |

             入力された倍数分までwhile処理

                      |

           入力された周波数を整数倍する

                      |

          整数倍した結果が7,14,21,28の運用周波数内かどうか判別する

        |

         運用周波数内だったら注意を促す文章を出力

                     |(ここまでwhile処理)

                  終了

実際のソース

1.入力を受け付けるhtmlファイル
<!docktype html>
<body>
<form action="harmonic.php" method="post">
input freq<br>
<input type="number" step="any" name="freq"><br>
<br>
input multiple<br>
<input type="number" name="multiple"><br>
<input type="submit" name="submit[]" value"send">
</form>
</body>
</html>

入力フォームを二つ作成し、周波数、倍数を入力して次のPHPファイル(harmonic.php)へ送信する

 

2.計算、出力を行うPHPファイル

 

<?PHP
ini_set("display_errors", On);
error_reporting(E_ALL);


//変数の定義
$freq=0;
$harm=0;
$n=0;
$mult=$_POST['multiple'];
$freq=$_POST['freq'];
print "input freq";
print $freq;
print "<br>\n";
print "input multiple";
print $mult;
print "<br>\n";
//n倍までの処理
$counter=1;
while($counter < $mult){
$n=$counter+1;
$harm=$freq*$n;
$counter=$counter+1;
print $harm;
print"<br>\n";
echo PHP_EOL;

if($harm >= 7.010){
if($harm <= 7.040){
print "Warning! 7MHz CW covered!! <br>\n";
}
}

if($harm >= 7.060){
if($harm <= 7.140){
print "Warning! 7MHz SSB covered!! <br>\n";
}
}

if($harm >=14.050){
if($harm <=14.080){
print "Warning! 14MHz CW covered!! <br>\n";
}
}

if($harm >= 14.250){
if($harm <=14.300){
print "Warning! 14MHz SSB covered!! <br>\n";
}
}
//21MHz JARLコンテスト周波数内か判別
if($harm >=21.050){
if($harm <= 21.080){
print "Warning! 21MHz CW coverd!!<br>\n";
}
}

if($harm >=21.350){
if($harm <= 21.450){
print "Warning! 21MHz SSB coverd!!<br>\n";
}
}

//28MHz JARLコンテスト周波数内か判別
if($harm >=28.050){
if($harm <= 28.080){
print "Warning! 28MHz CW covered!!<br>\n";
}
}

if($harm >= 28.600){
if($harm <=28.850){
print "Warning 28MHz SSB covered!!<br>\n";
}
}
}

?>

基本的にはCで作った時の入力以外の動作をしているものです。

 

どこかに公開していつでも使えるようにとかする予定は今のところありません。

ホームページのところをPHPで動作するようにしていないためそれが完了した時に公開するかもしれません。

公開したらまたこちらに追記等の形で公開したいと思います。 

 

------------------------------2016/11/3 追記----------------------------------------------

暫定的に http://okapi1231.esy.es にアップロードしました。

今後、年明けまでを目処にしてドメイン購入などして別なところにアップロードする可能性もありますが、とりあえず使って見たい方は上のリンクより確認して見ていただければと思います。