タグ付けされた質問 「programming」

プログラミング用ツール(コンパイラ、IDEなど)に関する質問プログラミングに関する質問については、Stack Overflowで質問してください。

2
GDBでステップイン、ステップオーバー、ステップアウトする方法は?
helpGDBにいる間に入力しましたが、ステップイン、ステップオーバー、ステップアウトについて何も見つかりませんでした。_start(break _start)のアセンブリプログラムにブレークポイントを配置しました。その後、入力nextしてデバッグを終了しました。思ったとおりに終了し_start、ステップインしなかったからだと思います。 助けてくれる人はいますか?

5
Mac OS XとLinuxのバイナリ互換性
私自身、システムのようなUNIXの内部動作やプログラミング全般については比較的新しいので、この質問は素朴で愚かに見えるでしょう。 準備はいい?OK!私は約3レベルの滑らかさを経験します。 同様のハードウェアを備えた2つのシステムがあります(主要なポイントはプロセッサです。標準のIntel Core 2 Duoとしましょう)。 1つは実行中です(ここにLinuxディストリビューションを挿入します:以降はUbuntuを使用します)。もう1つは実行中です。たとえば、Mac OS Xです。 同等のプログラムをコンパイルします。次のように言いましょう。 int main() { int cat = 33; int dog = 5*cat; return dog; } 共有ライブラリの影響をまだ考慮したくないため、コードは非常に単純です。 それぞれのシステムでコンパイルされた場合。出力の主な違いはELFとMach-Oの問題ではありませんか?フォーマットの各バイナリを削除し、フラットなバイナリを残した場合、逆アセンブルされたマシン命令は同じになりませんか?(おそらく、コンパイラの習慣/傾向に応じていくつかの違いがあります)。 1.) Ubuntuシステムから生成されたフラットバイナリをMach-Oフォーマットで再パッケージ化するプログラムを開発する場合、Mac OS Xシステムで実行されますか?次に、上記の想定プログラムのコンパイル済みバイナリのみがあり、フラットバイナリを再パッケージ化するためのこの神秘的なツールがある場合、単純なプログラムはMac OS Xシステムで実行できますか? それでは、もう少し詳しく見てみましょう。 現在、次のようなソースを備えたプログラムがあります。 #include <stdio.h> int main() { printf("I like tortoises, but not porpoises"); return 0; } 2.)このプログラムがコンパイルされ、静的にリンクされていると仮定すると、魔法のプログラムは未加工のバイナリをMach-O形式で再パッケージし、mac os …

3
私のLinuxバイナリはすべてのディストリビューションで動作しますか?
Lazarusと呼ばれるDelphiの優れた代替IDEを見つけました。しかし、プログラマーに質問はありません。 ウィル静的にリンクされたすべてのLinuxディストリビューション上のLinuxバイナリ仕事は?すなわち、どのLinuxディストリビューションを構築したかには関係なく、Debian / ArchLinux / Ubuntu / OpenSUSE / ...なんでも動作しますか? 私の発見の結果、本当に重要なのは32ビット対64ビットだけですか?公開する前に確認したい。

6
プログラムがPOSIXのコマンドライン引数の間にスペースの数を取得することは可能ですか?
次の行を使用してプログラムを作成したとしましょう。 int main(int argc, char** argv) これで、の内容を確認することで、どのコマンドライン引数が渡されるかがわかりargvます。 プログラムは引数間のスペースをいくつ検出できますか?これらをbashで入力したときのように: ibug@linux:~ $ ./myprog aaa bbb ibug@linux:~ $ ./myprog aaa bbb 環境は最新のLinux(Ubuntu 16.04など)ですが、その答えはPOSIX準拠のシステムすべてに当てはまると思います。

5
LinuxでのO_DIRECTの使用
この質問がプログラマー指向すぎる場合は、お知らせください。Linux 2.6のopen()システムコールのO_DIRECTフラグに精通している人がいるのだろうか?Linusはその使用を軽んじていますが、高性能ファイル書き込みはその使用を示しているようです。現実世界での経験と推奨事項を知りたいです。 詳細:私が使用しているアプリケーションは独自のキャッシュを維持しており、その際に平均で5倍以上の高速化を実現しています。ファイルに書き込むとき、キャッシュの内容はファイルシステムのキャッシュに書き出される必要がありますが、これは冗長であり、パフォーマンスの問題と思われます。

5
automakeとautoconfはコードをコンパイルする標準的な方法ですか?
私は時々ソースからアプリをコンパイルし、私はどちらかを使用しています: ./configure make sudo make install しかし、最近、./autogen.shconfigureおよびmakeスクリプトを生成して実行します。 C / C ++ / C#(mono)コンパイルを効率化する他の方法は何ですか?Makeは少し古いようです。新しいツールはありますか?選択肢があれば、どちらを使用すればよいですか?

8
Vimを補完する最適な汎用プログラミングツールは何ですか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 去年閉鎖されました。 Vimをテキストエディタとして少しの間使用していますが、何かをするのに長い道のりを取っているように感じます。ctagsを使用してナビゲーション用のコードベースにタグを付け、特定のメソッドが使用されている場所を見つけるために(非効率的ではありますが)grepを使用します。しかし、私はそれが私をより生産的にするかもしれないことを知らないいくつかの非常に有用なツールがそこにあると感じています。 Vimを補完する一般的なプログラミングに使用できる最高のソフトウェアスタックは何ですか?どのようにコードベースをナビゲートし、makeを実行し、ソース管理システムに変更をプッシュしますか?Vimの横に2番目のコンソールを開いていますか?


1
AT&Tのリンクエディターコマンド言語とは何ですか?
のmanページはldを参照しAT&T’s Link Editor Command Languageていますが、Googleの検索ではAT&T’s Link Editor Command Language、前述のmanページを指し示す以外に、何があったか、または何であったかについて満足のいく説明を提供していません。 ここに欠けている重要なコンピューティング履歴があるようです。この言語に関する参考資料や歴史的な文書はありますか?後世のためにウィキペディアに保存できるものはありますか?

3
純粋なBashでプログラムをどの程度複雑に書くことができますか?[閉まっている]
閉じた。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して事実と引用で答えられるように質問を更新してください。 閉じた3年前。 いくつかの非常に迅速な調査の後、Bash はチューリング完全言語であるようです。 なぜBashは、比較的単純なスクリプトを書くためにほぼ排他的に使用されるのでしょうか?BashシェルにはLinuxが付属しているため、他の一般的なコンピューター言語に必要な外部インタープリターまたはコンパイラーなしでシェルスクリプトを実行できます。これは大きな利点であり、場合によっては言語自体の平凡さを補うことができます。 それで、そのようなプログラムがどれだけ複雑になるか制限はありますか?純粋なBashは複雑なプログラムの作成に使用されますか?たとえば、純粋なBashでファイルコンプレッサ/デコンプレッサを作成することはできますか?コンパイラ?シンプルなビデオゲーム? デバッグツールが非常に限られているという理由だけで、あまり使用されていませんか?


1
いつ実行可能バイナリの文字列を編集できますか?
実行可能なバイナリがあります。それを呼び出しましょうa.out。バイナリに文字列が含まれていることがわかります $ strings a.out ... /usr/share/foo .... 文字列/usr/share/fooをに変更する必要があります/usr/share/bar。文字列をsed?に置き換えることはできますか? sed -i 's@/usr/share/foo@/usr/share/bar@' a.out これは安全なことのように見えます。これは、文字列が同じ長さでない場合にも機能しますか?

1
Unixプログラミングとはどういう意味ですか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、 Unix&Linux Stack Exchangeのトピックとなるようにしてください。 5年前休業。 Unixプログラミングという用語の意味は理解できたと思いましたが、カーネル/ Cプログラミングのコンテキストで読んだ後、この用語の意味を明確にする必要があるように感じます。 それが意味するかどうかは私には明らかではありません: シェルプログラミング、 Unixプログラミングツール Unixコマンドラインツールのプログラミングの特定の方法/パターン(たとえば、「Unixシェルプログラミング」のパイプライン方法に同意するため)、または 他の何か。

2
標準のLinuxコマンドラインツールのソースを見つけるのに最適な場所はどこですか?[閉まっている]
閉まっている。この質問はトピックから外れています。現在、回答を受け付けていません。 この質問を改善してみませんか? 質問を更新して、 Unix&Linux Stack Exchangeのトピックとなるようにしてください。 11ヶ月前に閉鎖。 Into:私はソースを読むことで学ぶのが好きです。しかし、多くのさまざまなプロジェクトサイトで分割されたインターネット上でそれらを検索するのは大変です。多くの多くのアプリのソースが1か所にある中央のブラウズ可能なレポを参照してください。 誰かがいくつかのLinuxツールのドキュメントを見つけたい場合、最適な場所は:man toolnameです。 Linuxソースを「オンデマンド」で参照したい場合は、いつでも次の場所にジャンプできます。Linuxクロスリファレンス。 最も一般的なスタッフを見つけたい場合、すべてのソースをCoreutilsで見つけることができます 。 何かをビルドする方法を確認したい場合、(たとえば)http://www.archlinux.org/packages/にジャンプして、pkgbuildであることを確認できます。 ほとんどのツールのソースを1か所に保持するリポジトリはありますか?-ちょうどmanドキュメントやLinuxクロスリファレンスカーネルソースを保持しているようです。 ものの実装方法を「迅速」「オンデマンド」でチェックするためのものです。(はい、私はグーグルを知っています->しかし、私はルーチンにうんざりしています:1.プロジェクトサイトの検索2.リポジトリの閲覧またはさらに悪いこと->リポジトリのチェックアウト3.終了時に削除) リマーク: 私はストレスを感じました、私はツールをチェックしたいと思います:迅速、高速、オンデマンド。 つまり、ソースを確認するためだけに、そのソースを使用してアプリ全体をインストールする必要はありません。(ところで、Webリソースが望ましいので、私は多くのコンピューターからソースをチェックできます-私はそれらすべての管理者を持っていません)


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.