UNIXおよびUNIX clone環境一般のプログラミングに関する質問スレッド
前スレ
Part9 http://hibari.2ch.net/test/read.cgi/tech/1205795434/
Part8 http://pc11.2ch.net/test/read.cgi/tech/1147946176/
Part7 http://pc8.2ch.net/test/read.cgi/tech/1127373405/
Part6 http://pc8.2ch.net/test/read.cgi/tech/1116908090/
Part5 http://pc8.2ch.net/test/read.cgi/tech/1105723117/
Part4 http://pc5.2ch.net/test/read.cgi/tech/1095843584/
Part3 http://pc5.2ch.net/test/read.cgi/tech/1085930894/
Part2 http://pc5.2ch.net/test/read.cgi/tech/1055110889/
Part1 http://pc2.2ch.net/tech/kako/992/992057422.html
Part3のミラー
http://makimo.to/2ch/pc5_tech/1085/1085930894.html
Part2のミラー
http://makimo.to/2ch/pc5_tech/1055/1055110889.html
UNIXプログラミング質問すれ Part10
■ このスレッドは過去ログ倉庫に格納されています
1unco ◆manko/yek.
2011/04/18(月) 17:06:36.77197デフォルトの名無しさん
2011/12/07(水) 20:19:34.24 Win32API ほどじゃない
198デフォルトの名無しさん
2011/12/07(水) 21:35:07.67 >>196
http://www.pygtk.org
http://live.gnome.org/Seed
GUIアプリならこういうので書けば? あるいはせめて、
http://www.gtk.org
http://www.pygtk.org
http://live.gnome.org/Seed
GUIアプリならこういうので書けば? あるいはせめて、
http://www.gtk.org
199デフォルトの名無しさん
2011/12/07(水) 22:21:43.40 wxPython オヌヌメ
200デフォルトの名無しさん
2012/01/20(金) 17:00:54.36 xmessageって便利やな
201デフォルトの名無しさん
2012/01/20(金) 19:51:48.27 今ubuntuのGCCコンパイラが4.5.2 が入っているんですが、
そのGCCコンパイラを4.4.5にダウングレードしたいのですが、どうすればいいですか?
そのGCCコンパイラを4.4.5にダウングレードしたいのですが、どうすればいいですか?
202デフォルトの名無しさん
2012/01/20(金) 20:11:06.84 パッケージのダウングレードなら犬板のUbuntuスレ、ソースからコンパイルならGCCスレで聞く方が良さ気
203デフォルトの名無しさん
2012/01/20(金) 20:14:03.88204デフォルトの名無しさん
2012/01/21(土) 13:52:42.46 【プログラミング部】 PHPが100倍速で動くようになったぞー
http://awabi.2ch.net/test/read.cgi/poverty/1327050821/
http://awabi.2ch.net/test/read.cgi/poverty/1327050821/
205デフォルトの名無しさん
2012/01/25(水) 02:16:44.58 LinuxとかBSD系ってUNIXじゃなかったのな
昨日初めて知った
ってことはLinux系の質問はここじゃスレチになるのか
昨日初めて知った
ってことはLinux系の質問はここじゃスレチになるのか
206デフォルトの名無しさん
2012/01/25(水) 04:27:28.79 1によるとUNIX cloneも含んでいるからおkよ
207デフォルトの名無しさん
2012/01/25(水) 15:13:45.95 つうか清く正しいAT&Tの血統はまだ残っとるのか?
208デフォルトの名無しさん
2012/01/26(木) 04:58:13.71 LinuxはUNIXじゃないがBSDはUNIXで良いと思ってた
209デフォルトの名無しさん
2012/01/26(木) 10:04:56.87 BSDはUNIXの血を浄化しました。
210デフォルトの名無しさん
2012/01/26(木) 14:15:55.41 BSDはトレードマークである「UNIX」は名乗れないです。
opengroupの認証通ってないので。
opengroupの認証通ってないので。
211デフォルトの名無しさん
2012/01/26(木) 14:37:35.26 敢えてソースから何から全部書き直して
ライセンス汚染してないことにしてる?
ライセンス汚染してないことにしてる?
212デフォルトの名無しさん
2012/01/26(木) 14:47:49.48 短いからとりあえずこれでも読めば
http://ja.wikipedia.org/wiki/BSD
http://ja.wikipedia.org/wiki/BSD
213デフォルトの名無しさん
2012/01/26(木) 15:34:29.19 Single UNIX Specification - Wikipedia
http://ja.wikipedia.org/wiki/Single_UNIX_Specification
これにLinuxもBSD系もどうたらこうたらって読んだ
http://ja.wikipedia.org/wiki/Single_UNIX_Specification
これにLinuxもBSD系もどうたらこうたらって読んだ
214デフォルトの名無しさん
2012/01/27(金) 03:47:31.46 まだ初心者で申し訳ないのですが、
Ubuntu上でC++言語(g++)でマウス操作をやりたいと思い、
XAutomationのxteのソースを見て真似てみました。元はC言語でかかれています。
#include <X11/Xlib.h>
#include <X11/extentions/XTest.h>
としていて、そのヘッダではifdefでC++の場合は extern "C" が付きます。
なので自分の.cppでは特別なことをせずにXTestFakeMotionEvent(..)が呼べるはずなのですが、
リンカが"undefined reference to XTestFakeMotionEvent"とエラーを出します。
どうすればよいでしょうか?
Ubuntu上でC++言語(g++)でマウス操作をやりたいと思い、
XAutomationのxteのソースを見て真似てみました。元はC言語でかかれています。
#include <X11/Xlib.h>
#include <X11/extentions/XTest.h>
としていて、そのヘッダではifdefでC++の場合は extern "C" が付きます。
なので自分の.cppでは特別なことをせずにXTestFakeMotionEvent(..)が呼べるはずなのですが、
リンカが"undefined reference to XTestFakeMotionEvent"とエラーを出します。
どうすればよいでしょうか?
215デフォルトの名無しさん
2012/01/27(金) 04:16:59.41 -iXtst してる? gccのコマンドライン晒したほうがいいよ
できれば最小限のソースも
できれば最小限のソースも
216デフォルトの名無しさん
2012/01/27(金) 05:41:13.84 あれ、l って打ったつもりが i になってる。ごめん
-lXtst の誤り。詳しくは man xtestqueryextension で
-lXtst の誤り。詳しくは man xtestqueryextension で
217デフォルトの名無しさん
2012/01/28(土) 01:10:43.39 Macの質問もここでおkなの?
218デフォルトの名無しさん
2012/01/28(土) 02:58:00.76 Mac固有にならなければ
219デフォルトの名無しさん
2012/01/28(土) 03:22:15.70 マックってユニックスだったんか
知らなかったわ
知らなかったわ
220デフォルトの名無しさん
2012/01/28(土) 20:27:34.75 ということはiPhoneの質問もここでおkかな?
221デフォルトの名無しさん
2012/01/28(土) 20:33:41.08 iOSはUnix系だとあるけど
iPhoneでUnix的な使い方ってできたんだっけ?
iPhoneでUnix的な使い方ってできたんだっけ?
222デフォルトの名無しさん
2012/01/28(土) 22:49:16.13 mmapとか動くよ
223デフォルトの名無しさん
2012/01/29(日) 10:19:19.06224デフォルトの名無しさん
2012/02/07(火) 20:55:21.88 おねがいします
プロセス間通信で使う、名前付きFIFOをPスレッド間で使うことは可能でしょうか?
それともなにか問題が発生するでしょうか?
また、名前付きFIFOの名前を既存ファイルとかぶらないように自動生成する方法はありますか?
プロセス間通信で使う、名前付きFIFOをPスレッド間で使うことは可能でしょうか?
それともなにか問題が発生するでしょうか?
また、名前付きFIFOの名前を既存ファイルとかぶらないように自動生成する方法はありますか?
225デフォルトの名無しさん
2012/02/07(火) 21:16:13.63 vimrcとかbashrcとかscreenrcのrcって何の略なんですか?
226デフォルトの名無しさん
2012/02/07(火) 21:25:42.05 run commandの略だという説が有力
227デフォルトの名無しさん
2012/02/07(火) 21:35:56.81228デフォルトの名無しさん
2012/02/07(火) 23:49:16.68 >>224
プロセス間で使えてスレッド間で使えなくなる理由が分からない
その内容だとpipeで十分に思える。というより、そういうライブラリ使ったほうがオーバーヘッドがないような
一時ファイルはmktempで作ると他と衝突しない
プロセス間で使えてスレッド間で使えなくなる理由が分からない
その内容だとpipeで十分に思える。というより、そういうライブラリ使ったほうがオーバーヘッドがないような
一時ファイルはmktempで作ると他と衝突しない
229デフォルトの名無しさん
2012/02/08(水) 02:35:32.10230デフォルトの名無しさん
2012/02/08(水) 02:56:19.60 mkstempって普通ファイル以外作れたか?
231デフォルトの名無しさん
2012/02/08(水) 07:55:45.41 >>226,227
ありがとうございました
ありがとうございました
232デフォルトの名無しさん
2012/02/08(水) 20:32:47.58 >>228
>>229
>>230
用語を間違えていました。
名前付きFIFOではなく、名前付きパイプ(=FIFO)でしたね。失礼しました。
スレッド間だともしかして排他処理がうまくできないのではと思ったもので。
スレッド間で使うなら確かに匿名パイプのほうが適切ですね。
mktemp()のセキュア版であるmkstemp()は、ファイル自体を作ってしまうのですが、
普通のファイルをパイプ化できるのであれば問題ないのですが、
どうもそのようなことをしてくれるシステムコールは存在しないようで・・・
tmpnam()で名前だけ作ってmkfifo()でFIFOを生成してもいいのですが、
tmpnam()のせいでコンパイル時に恐ろしげな警告が出るのが気持ち悪くて・・・
・・・困りました
>>229
>>230
用語を間違えていました。
名前付きFIFOではなく、名前付きパイプ(=FIFO)でしたね。失礼しました。
スレッド間だともしかして排他処理がうまくできないのではと思ったもので。
スレッド間で使うなら確かに匿名パイプのほうが適切ですね。
mktemp()のセキュア版であるmkstemp()は、ファイル自体を作ってしまうのですが、
普通のファイルをパイプ化できるのであれば問題ないのですが、
どうもそのようなことをしてくれるシステムコールは存在しないようで・・・
tmpnam()で名前だけ作ってmkfifo()でFIFOを生成してもいいのですが、
tmpnam()のせいでコンパイル時に恐ろしげな警告が出るのが気持ち悪くて・・・
・・・困りました
233デフォルトの名無しさん
2012/02/08(水) 23:27:28.46 スレッド間ならファイルディスクリプタは共有しているので、名前付きである必要な理由は無いな。
あえてnamed pipeを選択する理由は?
あえてnamed pipeを選択する理由は?
234デフォルトの名無しさん
2012/02/09(木) 00:30:27.29 名前付きを使いたいのはスレッド間ではないです
235デフォルトの名無しさん
2012/02/09(木) 00:37:06.84 forkすればファイルディスクリプタは複製されるし、全く別のプロセスに
ソケットを使ってファイルディスクリプタを送信することもできたはず
というかその用途ならソケットで通信すればいいのでは?
ソケットを使ってファイルディスクリプタを送信することもできたはず
というかその用途ならソケットで通信すればいいのでは?
236デフォルトの名無しさん
2012/02/09(木) 00:39:23.33 > プロセス間通信で使う、名前付きFIFOをPスレッド間で使うことは可能でしょうか?
> 名前付きを使いたいのはスレッド間ではないです
どっちが本当?
> 名前付きを使いたいのはスレッド間ではないです
どっちが本当?
237デフォルトの名無しさん
2012/02/09(木) 00:47:02.99 下が本当です
上はうっかりミスで、
「プロセス間通信で使う、パイプをPスレッド間で使うことは可能でしょうか?」
が意図したQでした。
よって、想定しているシチュエーションは2つあったわけです。
1. スレッド間でパイプ使用
2. (プロセス間の)FIFOのユニークな名前の自動生成
上はうっかりミスで、
「プロセス間通信で使う、パイプをPスレッド間で使うことは可能でしょうか?」
が意図したQでした。
よって、想定しているシチュエーションは2つあったわけです。
1. スレッド間でパイプ使用
2. (プロセス間の)FIFOのユニークな名前の自動生成
238デフォルトの名無しさん
2012/02/09(木) 00:50:14.29 できればプロセス間でも親子関係とか持たせてパイプにする方がいいような。
どうせユニークな名前をどうにかして相手に伝えないといけないんでしょ。
どうせユニークな名前をどうにかして相手に伝えないといけないんでしょ。
239デフォルトの名無しさん
2012/02/09(木) 00:56:05.42 パイプでつなぎたい先のプロセスは、独立した実行ファイルによるものですので
240デフォルトの名無しさん
2012/02/09(木) 00:56:56.90 forkしてパイプ準備してからexecすればいいのでは
241デフォルトの名無しさん
2012/02/09(木) 01:03:48.90 寝ぼけてました・・・
全く、そのような方法でやろうと自分でも考えていました。
全く、そのような方法でやろうと自分でも考えていました。
242デフォルトの名無しさん
2012/02/09(木) 01:12:26.89 書き込む前に一度読み直して人に伝わるかどうか位確認しろw
結局>>240の提示した方法で実現できそうな話だったんだな?
結局>>240の提示した方法で実現できそうな話だったんだな?
243デフォルトの名無しさん
2012/02/09(木) 06:14:23.72 パイプの名前は?
244デフォルトの名無しさん
2012/02/09(木) 11:21:57.81 >>243
ズシオ
ズシオ
245デフォルトの名無しさん
2012/02/09(木) 13:40:45.86 SIGPIPEウゼエって時は、
int result = send( fd , buffer ,size , MSG_NOSIGNAL);
ってやり方もある。OSとfiletypeを選ぶけども。
int result = send( fd , buffer ,size , MSG_NOSIGNAL);
ってやり方もある。OSとfiletypeを選ぶけども。
246デフォルトの名無しさん
2012/02/09(木) 18:25:23.87 SIGPIPEなんて速攻でIGNOREしてたわ
247デフォルトの名無しさん
2012/02/09(木) 19:24:31.48 解決した後で聞かれもしてない事(しかも大した情報量がない)を
ドヤ顔で言い出す奴ってかなり恥ずかしい。
ドヤ顔で言い出す奴ってかなり恥ずかしい。
248デフォルトの名無しさん
2012/02/09(木) 22:59:21.62 ためになるからイナフだ
249デフォルトの名無しさん
2012/02/10(金) 12:53:22.71 >>247は可哀想。
250デフォルトの名無しさん
2012/02/10(金) 20:19:25.23 system()がダメでexec*()じゃなければならない場合って具体的にどういう使いどころですかね?
251デフォルトの名無しさん
2012/02/10(金) 20:30:04.86 ・forkした後にあれしたりこれしたり
・login shellに左右されたくないコマンドライン
・login shellに左右されたくないコマンドライン
252デフォルトの名無しさん
2012/02/10(金) 21:47:45.05 すいません・・・
そこをもう一声具体的に・・・悲
そこをもう一声具体的に・・・悲
253デフォルトの名無しさん
2012/02/10(金) 21:53:36.60 自分とパイプで繋がった子プロセス内で外部のプログラムを実行できたりとか
254デフォルトの名無しさん
2012/02/10(金) 22:01:58.79 コマンドラインとして渡す文字列(の一部)が文字列としてプログラム外からやってくる時。
255デフォルトの名無しさん
2012/02/10(金) 22:11:03.48256デフォルトの名無しさん
2012/02/10(金) 22:16:24.42 fork+execとsystemの違いってなんですか、ならわかるけど
forkとsystemの違いってなんですか、だと根本的に勘違いしてるだろうからman読んだほうがいいよ
forkとsystemの違いってなんですか、だと根本的に勘違いしてるだろうからman読んだほうがいいよ
257デフォルトの名無しさん
2012/02/10(金) 22:19:18.11 こんな>>255態度で返す奴ってなんなの?
258デフォルトの名無しさん
2012/02/10(金) 22:26:11.92 「シェルを通すか通さないか」という言葉ぐらいは知ってるんですが、
じゃあ、使い分けが必要なのは具体的にどういう箇所で?となると
わかっている人に教わったほうが間違いがないかと思ったものですから・・・謝
じゃあ、使い分けが必要なのは具体的にどういう箇所で?となると
わかっている人に教わったほうが間違いがないかと思ったものですから・・・謝
259デフォルトの名無しさん
2012/02/10(金) 22:32:43.19 言い訳だけしてまともに謝る事すらできないのか
人間のクズだな
人間のクズだな
260デフォルトの名無しさん
2012/02/10(金) 22:40:55.98 ごめんなない
261デフォルトの名無しさん
2012/02/10(金) 22:51:07.88 誠意を見せたかったらどうするのかわからないのか?
教えてやろう。画像を貼るんだよ。
教えてやろう。画像を貼るんだよ。
262デフォルトの名無しさん
2012/02/10(金) 23:12:37.26263デフォルトの名無しさん
2012/02/11(土) 00:25:56.53 systemとexecじゃできることが違いすぎて何を聞きたいのかが不明過ぎる
264デフォルトの名無しさん
2012/02/11(土) 00:34:15.31 はったりはやめなよ
265デフォルトの名無しさん
2012/02/11(土) 00:42:24.53 UNIX勉強しろよ
266デフォルトの名無しさん
2012/02/11(土) 00:53:47.37 薀蓄自慢したい人ですかね?
267デフォルトの名無しさん
2012/02/11(土) 11:43:52.95 >>263
別プロセスを生成させる以外になにか大きな使い方の差があるのでしょうか?
別プロセスを生成させる以外になにか大きな使い方の差があるのでしょうか?
268デフォルトの名無しさん
2012/02/11(土) 11:48:54.36 >>267
シェルがあるかないか も超重要じゃね?
シェルがあるかないか も超重要じゃね?
269デフォルトの名無しさん
2012/02/11(土) 11:50:30.76 >>267
・systemは1)プロセスを生成して、2)別バイナリを実行する。
1と2の間にいろいろできる。(パイプでつなぐ、資格情報の制御、リソースの制限などなど)
・systemはshに実行させる。shの機能(リダイレクトとか)が使える反面、セキュリティ上の問題を起こしやすい。
・systemは1)プロセスを生成して、2)別バイナリを実行する。
1と2の間にいろいろできる。(パイプでつなぐ、資格情報の制御、リソースの制限などなど)
・systemはshに実行させる。shの機能(リダイレクトとか)が使える反面、セキュリティ上の問題を起こしやすい。
270デフォルトの名無しさん
2012/02/11(土) 12:25:17.58 >>264,266,267
やるきねーだろ
やるきねーだろ
271デフォルトの名無しさん
2012/02/11(土) 16:31:24.52 やる気はあります!
レスが付くまで全裸で待機していましたし
レスが付くまで全裸で待機していましたし
272デフォルトの名無しさん
2012/02/11(土) 16:39:39.91 全裸待機する暇があったらman 3 system; man 3 exec
273デフォルトの名無しさん
2012/02/11(土) 16:49:39.39 らめえぇぇぇぇぇぇぇ
システムのページサイズを超えてかきこまないでぇぇぇぇ
あたしまだバージョン 2.6.11 より前なのにぃぃぃぃぃ
みたいな
システムのページサイズを超えてかきこまないでぇぇぇぇ
あたしまだバージョン 2.6.11 より前なのにぃぃぃぃぃ
みたいな
274デフォルトの名無しさん
2012/02/11(土) 17:31:53.25 Linux板でも逝け
275デフォルトの名無しさん
2012/02/11(土) 20:16:56.46 あそこは管理系の薀蓄でブヒってるのが多いからなんとなくイヤ
「お前が管理しているそのツールのこの機能はどうやって作るのか」
という質問には答えてくれなそう
「お前が管理しているそのツールのこの機能はどうやって作るのか」
という質問には答えてくれなそう
276デフォルトの名無しさん
2012/02/11(土) 21:06:14.73277デフォルトの名無しさん
2012/02/11(土) 22:19:30.22 詳解UNIXプログラミング
UNIXカーネルの設計
を読み終わったらまたいらっしゃい
UNIXカーネルの設計
を読み終わったらまたいらっしゃい
278デフォルトの名無しさん
2012/02/11(土) 22:38:19.99 そしてだれもいなくなった(未完)
279デフォルトの名無しさん
2012/02/11(土) 22:48:13.34 嵐の番組ってCMが生理用品ばっかでワロス
280デフォルトの名無しさん
2012/02/11(土) 23:10:22.97 >>278
まだまだ
まだまだ
281デフォルトの名無しさん
2012/02/11(土) 23:58:08.93282デフォルトの名無しさん
2012/02/12(日) 00:18:42.76 2/eが出てるよ
283デフォルトの名無しさん
2012/02/12(日) 00:38:58.73 違いを意識したことないが、その手の本でPOSIX 2008に対応してるのってあるの?
284デフォルトの名無しさん
2012/02/12(日) 01:04:05.10285デフォルトの名無しさん
2012/02/12(日) 01:50:48.07286デフォルトの名無しさん
2012/02/12(日) 02:04:12.95 旨そうなゼンマイだと思ったのにw
>>284
へーLinuxか。2008の機能も実装してたのか。この辺りの各OSごとの実装状況はまるで分からんが、
実装されているならマニュアルもあるだろうからそっちから調べるのもありだな。ありがとう
>>284
へーLinuxか。2008の機能も実装してたのか。この辺りの各OSごとの実装状況はまるで分からんが、
実装されているならマニュアルもあるだろうからそっちから調べるのもありだな。ありがとう
287デフォルトの名無しさん
2012/02/12(日) 04:11:48.67 >実装されているならマニュアルもあるだろう
(;゚ Д゚) …!?
(つд⊂)ゴシゴシ
(;゚ Д゚) …!?
(つд⊂)ゴシゴシ
288デフォルトの名無しさん
2012/02/12(日) 10:22:03.92 http://man7.org/tlpi/translations/index.html
> Japanese O'Reilly Japan Announced (Q2 2011).
> Publication likely in second half of 2012.
絶対出ないと思ってたのに
今の日オラにこんな根性があるとは思わなかった
> Japanese O'Reilly Japan Announced (Q2 2011).
> Publication likely in second half of 2012.
絶対出ないと思ってたのに
今の日オラにこんな根性があるとは思わなかった
289デフォルトの名無しさん
2012/02/12(日) 19:24:06.62 また半端な翻訳かまして、後が出ないよ糞詰まり状態に1000ペリカ
290デフォルトの名無しさん
2012/02/12(日) 20:04:02.50 >>288
ポチってしまった俺は、訳本が出る前に完読してやろうと心に誓うのであった
ポチってしまった俺は、訳本が出る前に完読してやろうと心に誓うのであった
291デフォルトの名無しさん
2012/02/12(日) 22:26:02.57 出版元のサイトからPDFつきが70$で買えるけど(ディスカウントクーポン使用)
もしAmazonでポチってたら強く生きてくれ
もしAmazonでポチってたら強く生きてくれ
292290
2012/02/13(月) 21:39:17.18 なんじゃこの箱枕は!!!!!
('A`)
('A`)
293デフォルトの名無しさん
2012/02/14(火) 07:55:05.11 UNIXのインダイレクションについてレポートにまとめろとかいわれたんだけどUNIXとインダイレクションって
なんか関係あったっけ?
なんか関係あったっけ?
294デフォルトの名無しさん
2012/02/14(火) 08:22:51.30 リダイレクションの聞き間違いだろ。
295デフォルトの名無しさん
2012/02/14(火) 12:40:18.10 >>293
せっかくだからそのままインダイレクションでレポート書いちゃえ
せっかくだからそのままインダイレクションでレポート書いちゃえ
296デフォルトの名無しさん
2012/02/18(土) 03:02:26.53 fork + execlpしたプログラムに引数でstruct構造体を渡すことってできますか?
■ このスレッドは過去ログ倉庫に格納されています
