タグ

2017年10月17日のブックマーク (4件)

  • curl コマンド 使い方メモ - Qiita

    はじめに 「最近、curlが楽しい」 というわけで、最近、curlでPOSTしたりDELETEしたりcookieからSessionを読み込んだりと触れ合う機会が多かったので、その時知ったものを備忘録も兼ねてまとめました。 なるべく実行コマンドとその結果の出力をセットで書くようにしています。 curlコマンドは便利 curlは便利です。 APIと触れ合っていると、 手軽に HTTPリクエストしたくなる色んなシーンに出会います。 「あれ? サーバー死んでる?」 「思ってたレスポンスと違うな、何が返されているんだ?」 「認証必須にしたんだけど、うっかり抜け道ないよね?」 「さくっとPOSTしてテスト用にデータ準備したいんだけど...」 ...etc こういった、とりあえず生で、くらいのテンションでHTTPリクエストしたいなら、curlは有力な選択肢の一つと思います。 もちろん、格的な確認やデー

    curl コマンド 使い方メモ - Qiita
  • リバース実行を用いた gdb によるデバッグ - troushoo

    プログラムを逆に実行するリバース実行を用いた、gdb によるデバッグ方法を紹介します。 「変数 x が不正な値になっていたが、いつ不正な値になったのか」といった場合のデバッグに便利です。 サンプルプログラム 変数 x の初期値が 0 で、その後 func1() により 1 に変更される、単純なサンプルプログラムを用います。 プログラム終了時から、プログラムを逆に実行し、いつ変数 x が変更されたかを調べます。 「gcc –g gccreverse.c」でビルドしておきます。 #include <stdio.h> int func1(){ return 1;} int main(void){ int x = 0;  x = func1(); printf("%d\n",x);  return 0;} リバース実行を用いて gdb でデバッグ 1. 「gdb a.out」を実行し、gdb 配下

    リバース実行を用いた gdb によるデバッグ - troushoo
  • GDBで歴史をさかのぼれるように!なりました! GDB 7.0 の新機能Reverse Debuggingを使ってみた - 日記を書く [・w・] はやみずさん

    Twitter上で、@alohakun が言及していた GDB の reverse debugging の機能を使ってみました。 GDB にトレースと逆実行機能入ったのか。 http://www.gnu.org/software/gdb/news/reversible.html http://twitter.com/alohakun/status/4481139191 まずは簡単な使い方を説明したあとに、インストール方法を説明します。 こんなときに便利 「変なこと」が起きている大体の場所がわかっているとき デバッグ中に、大体どこで変なことが起きているかはわかっているけど、細かい場所は特定できていないとき、reverse debuggingが効果を発揮します。 GDBでステップ実行をしていて、「しまった!行きすぎた!」という経験はよくあると思います。こういうとき、今まではプログラムの実行を最

    GDBで歴史をさかのぼれるように!なりました! GDB 7.0 の新機能Reverse Debuggingを使ってみた - 日記を書く [・w・] はやみずさん
  • SEGV探偵が往く - なるせにっき

    人は誰しも108つの夢を持つと言いますが、読者の皆さんにも探偵を夢見た人は多いことでしょう。実際問題として探偵業をやろうと思ったら地道な聞き込み&張り込みの日々でしょうし、逆に派手な探偵業は陰謀&殺人で恐ろしい。わたしも自分の命は大事ですからどうするか。そう、探偵ごっこをするわけですね。 というわけでSEGV探偵です。死ぬのはプロセスなので安心。Rubyを使っていればSEGVなんて見慣れたものですが、いざ捜査しようと思うと意外とその辺には転がっていないもの。(むかしはつかみ取り出来るくらいいたそうですよ)とはいえ今でもいわゆる「バグ鉱脈」みたいなものはありまして、その一つが「最新のコンパイラでビルドしてみる」です。 今日はGCCの開発版であるGCC8を試してみましょう。FreeBSDだとsudo pkg install lang/gcc8-develで簡単に入れられるのですが、他の環境だと

    SEGV探偵が往く - なるせにっき
    MonMonMon
    MonMonMon 2017/10/17
    “CFLAGSの行に-save-tempsを追加してビルドし直すとコンパイル中の一時ファイルが残ります。” 知らなんだ、便利