Solarisプログラミング教えてチョンマゲ

このエントリーをはてなブックマークに追加
276名無しさん@お腹いっぱい。:2011/01/24(月) 20:34:04
ちなみに268,271,273は私ではありません。
スレチですがAIXで動かすのが目的です。
自宅にはCent OSとFree BSDの環境があり、Cent OSでdeleteオプションが使えることは確認しました。
せっかくシェルスクリプトを書いたので、当面はそれを使うつもりですが、
Cent OSでperlは使えると思うので、272のコードも試してみようと思います。
277名無しさん@お腹いっぱい。:2011/01/24(月) 20:50:56
>>272
実行してみたところこんな感じでエラーになりました。

[root@centos ~]# touch test1 test2 test3
[root@centos ~]# tar cf - test* |perl -MArchive::Tar -e '$tar=Archive::Tar->new(\*STDIN);$tar->remove("test1");$tar->write(\*STDOUT)' |tar tf -
Can't locate Archive/Tar.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 \
/usr/lib/perl5/site_perl /usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl \
/usr/lib/perl5/5.8.8/i386-linux-thread-multi /usr/lib/perl5/5.8.8 .).
BEGIN failed--compilation aborted.
tar: これは tar アーカイブではないようです
tar: 処理中にエラーが起きましたが、最後まで処理してからエラー終了させました

どこが間違っているのでしょうか?
278名無しさん@お腹いっぱい。:2011/01/24(月) 21:00:34
「古文書のありかを突き止められません」も読めないゆとりか?
279名無しさん@お腹いっぱい。:2011/01/24(月) 21:03:40
Can't locate Archive/Tar.pm in @INC (@INC contains: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi /usr/lib/perl5/site_perl/5.8.8 \

Archive::Tarがインストールされていない。
$ cpan Archive::Tar
かな?
280名無しさん@お腹いっぱい。:2011/01/24(月) 23:04:53
>>279
ありがとうございます。動いたようです。
しかし、会社では使えないんだろうな…
281名無しさん@お腹いっぱい。:2011/01/25(火) 11:11:49
よそでやれよ。
282名無しさん@お腹いっぱい。:2011/01/28(金) 17:01:41
./configureでインストールする時に毎回prefixオプションつけて場所指定するのめんどうなんだよね。
標準のインストール先は/usr/local以下になってると思うんだけど最初に環境変数与えておくとかで変更する方法あるかな?
283名無しさん@お腹いっぱい。:2011/01/30(日) 19:35:57
solaris8 ってupdate_drvコマンドって無いの?
ぐぐってもそれらしき情報が無いんだが
http://www.sunfreeware.com/
ここにもないし
284名無しさん@お腹いっぱい。:2011/01/30(日) 19:43:59
よく訓練されたSolaris信者はupdate_drvコマンドとか使わないw
285名無しさん@お腹いっぱい。:2011/01/30(日) 20:00:01
そうなんですか
訓練されてはない感じなものですみません。
vmwareのtoolがそれを必要としているんですが
デフォでインストールされてないのでどうしたものかと
286名無しさん@お腹いっぱい。:2011/01/30(日) 21:18:38
ttp://download.oracle.com/docs/cd/E19455-01/817-5440/6mkt7mdj9/index.html

Solaris8にも入ってるみたいだけど
OSリリースによって違うのかな
287名無しさん@お腹いっぱい。:2011/01/30(日) 21:37:20
そうですか入ってるですか・・・
04/01を使用してますがね。
288名無しさん@お腹いっぱい。:2011/01/30(日) 21:44:20
289名無しさん@お腹いっぱい。:2011/02/03(木) 18:34:27
>>147
solarisの場合、5bin/echoは bin/echoそのものだろw
290名無しさん@お腹いっぱい。:2011/02/20(日) 08:54:28.17
プロンプト用プログラムで、
処理時間がかかるルーチンを実行中に
何かキーボードが押されたらその時点での進行状況を表示、または中断、
という仕様を要求されました。
getchar()では、キーを押すまで帰ってこないし、
そもそもgetchar()を呼んだタイミング以外でもキーに反応しなければならないので
無理だということはわかりました。
こういうのは割り込みを使うそうですが、調べると、
キーボードはIRQ1を使っていることはわかりました。
C言語で、IRQ1を読み込んでプログラムを分岐させる?のは
どうすればいいか、誰かわかります?
291名無しさん@お腹いっぱい。:2011/02/20(日) 12:57:47.75
ttp://d.hatena.ne.jp/wocota/20090306/1236326294
こんなん出てきたけど参考になりそう?
292名無しさん@お腹いっぱい。:2011/02/20(日) 20:36:24.00
>>290
シグナルでやれば良いんじゃね
Ctrl-C で SIGINT のハンドラで処理をするってかんじで。
293名無しさん@お腹いっぱい。:2011/02/20(日) 21:31:56.36
>>292
シグナルも考えましたが、Ctrl-Cじゃ駄目なんです><
HIT ANY KEY で、AとかBとか、どのキーが押された時でも
反応しないといけないんです。
294名無しさん@お腹いっぱい。:2011/02/20(日) 22:04:24.88
tcgetattr,tcsetattr,cfmakerawあたりでできなかったっけ
295名無しさん@お腹いっぱい。:2011/02/20(日) 22:07:49.69
書いた後だけど
cfmakerawがSolarisに無いんだな・・・
Google Code Searchでcfmakeraw使っているプログラムで
Solarisの場合はどうやってtermiosを設定しているか調べれば
それが答えだと思う
296名無しさん@お腹いっぱい。:2011/02/20(日) 22:33:30.14
>>294,295
tcsetattr()で端末設定いじっても、stty rawコマンドと同様に
端末入力を行バッファしなくなるだけ(Enterなしに入力が返るだけ)で、
getchar()とかで入力を読みに行ったタイミングでしか
反応できないという問題の解決にはならないでしょ。

元質問はgetchar()を呼ばずに長時間処理を行なっているプログラムに対して、
どれかのキーを押した時に割り込み的にプログラムの流れを変えたいということ
みたいだから。
297名無しさん@お腹いっぱい。:2011/02/20(日) 22:41:50.63
キーボード監視スレッド立てるだけだ。
298名無しさん@お腹いっぱい。:2011/02/20(日) 23:10:34.73
>>296は頭悪いのか?w

スレッドじゃなくて別プロセスでシグナル投げても良いだろ
299名無しさん@お腹いっぱい。:2011/02/21(月) 00:48:20.48
デバドラ書きましょうってことじゃなかったのかorz
300名無しさん@お腹いっぱい。:2011/02/23(水) 09:56:44.59
301名無しさん@お腹いっぱい。:2011/07/23(土) 18:36:04.66
Linuxの libc.so.* みたいに、
共有ライブラリなんだけど直接コマンドとして実行も可能なライブラリファイルって、
どうやってコンパイルして作るの?
302 忍法帖【Lv=40,xxxPT】 :2011/07/24(日) 00:54:54.26
Solaris関係ないだろw
303名無しさん@お腹いっぱい。:2011/07/24(日) 09:00:03.93
>>302
Solaris関係あります。

Solarisで自作共有ライブラリ(libhoge.so.1とか)を作る時、
./libhoge.so.1で実行しても実行できるようにしたいんです。
304名無しさん@お腹いっぱい。:2011/07/24(日) 10:16:00.05
共有ライブラリ実行して何がうれしいのかわからんw
305名無しさん@お腹いっぱい。:2011/07/27(水) 21:17:39.98
すみませんが共有ライブラリを実行してうれしい方のみ回答をお願いします
306名無しさん@お腹いっぱい。:2011/07/27(水) 22:01:12.22
いないみたいですのでシッポ巻いてお引き取り下さい
307名無しさん@お腹いっぱい。:2011/07/28(木) 17:55:56.55
>>301 >>303
逆にLinuxでは共有ライブラリが実行できるのかよw
そんなOS今までに見たことないな。

どうせbashとかのaliasで、共有ライブラリを実行しようとすると
別のコマンドが起動されてるとかのオチだろw
308名無しさん@お腹いっぱい。:2012/11/03(土) 18:22:45.49
SPARC(32bit)にはフラグを直接操作する命令がない。
N=ネガティブフラグ、Z=ゼロフラグ、C=キャリーフラグとするとき、
以下の状態にフラグをセットするアセンブラ命令を考えよ。

(1) N=0 Z=0 C=0
(2) N=0 Z=0 C=1
(3) N=0 Z=1 C=0
(4) N=0 Z=1 C=1
(5) N=1 Z=0 C=0
(6) N=1 Z=0 C=1

ただし、レジスタの値は一切変化させてはいけない。
レジスタの現在値は不定(不明)とする。
V(オーバーフロー)フラグはすべてV=0となってよい。
最小の命令数の回答を正解とする。


・・・以上わかる方、できれば月曜日までにお願いします。
309名無しさん@お腹いっぱい。:2012/11/03(土) 23:15:15.16
またコピペか
310名無しさん@お腹いっぱい。:2012/11/11(日) 21:33:17.16
共有ライブラリの実行ってバージョンとか出すだけじゃなかったか? exec に細工してあって共有ライブラリののマジックならヘッダのバージョン読んできて表示とかなら簡単だろ。jar が直接実行出来るのも #! でインタプリタ呼び出すのも exec の機能なんじゃないの?
311名無しさん@お腹いっぱい。:2012/12/26(水) 21:14:55.41
セグメンテーション違反がx86ではなく、SPARCに問題にあって発生
している場合 どうしたら実行できますか
312名無しさん@お腹いっぱい。:2013/01/24(木) 05:30:35.43
一年半越しの質問に答えるのもなんだけど
--sharedだろうと無理矢理エントリポイントを指定しておけば動くんじゃないの
仕組みわかってれば予想できる事だと思うが
313名無しさん@お腹いっぱい。:2013/01/25(金) 23:02:31.66
SPARCに問題があるのじゃなくて、
バイトーオーダーを考慮せず実装した
のでバグっているだけだろ。

http://ja.wikipedia.org/wiki/エンディアン
314名無しさん@お腹いっぱい。:2013/01/26(土) 06:17:29.76
>>313
全く同じコードがMIPS(EB)では正常に動くので、
バイトーオーダの問題じゃないです。
315名無しさん@お腹いっぱい。:2013/01/28(月) 12:00:19.28
事前情報が適当すぎ
四の五の言わずにデバッガかませばすぐわかるだろ
316名無しさん@お腹いっぱい。:2013/01/28(月) 14:44:36.38
コピペくんにエサをやるとはw
317名無しさん@お腹いっぱい。:2013/01/28(月) 20:31:10.90
安全側の判断として、SPARCのセグメンテーション違反である可能性が否定できない
ので、運転再開を認めないことになりました。
318名無しさん@お腹いっぱい。:2013/01/28(月) 23:31:16.48
SPARCでセグフォルトする原因を調べなかったばかりに
x86/mipsで偶然動いていたバグを見過ごすわけだな。
319名無しさん@お腹いっぱい。:2013/02/23(土) 19:57:07.17
質問です
Gccのコマンドラインをだーって入力するとコンパイル出来るじゃないですか
それにオプションをさーっと追加して静的コンパイルしたいんです
出来ますの?ちなみに-staticを付けてみましたが変な英語で止まりました
勿論ググりましたが、当方馬鹿なのでわかりません
サルでも分かるような回答を強く期待します
僕はこういう小バカにしたような書き方しか出来ませんが、凄く切実に知りたいです
さぁどうぞ↓
320名無しさん@お腹いっぱい。:2013/02/23(土) 23:40:20.61
病院に帰れw
321名無しさん@お腹いっぱい。:2013/06/07(金) 20:51:18.93
先日、他部署を交えて開かれた社内技術交換会でのこと。
先輩は自分が開発担当したあるソフトのプログラミング中に思いついたという
文字列処理の高速化アルゴリズムについて得意気に解説し始めた。
話し始めてしばらくして、隣の部署の人が口をはさんだ。
「それ、有名な番兵のアルゴリズムですよね。ウチでも昔はよく番兵を使いました。
でも番兵はマルチスレッドで使えないという欠点があるので、
今では番兵のアルゴリズムを使うことは禁止してます。
これ使われると発見しにくいバグになって困るんですよねぇ…
ところで今日のお話というのは、
番兵のアルゴリズムをマルチスレッドに対応させるような方法か何かですか?」
そのあと先輩の話は支離滅裂になり、何の技術交換会だったのか
よく覚えていない…
322名無しさん@お腹いっぱい。:2013/07/03(水) NY:AN:NY.AN
このあたりをまじめにやってない技術者をあつめて
「データ構造とアルゴリズム」みたいな本を通読
する勉強会をすべきなんだろうな。
323名無しさん@お腹いっぱい。:2013/07/03(水) NY:AN:NY.AN
>>319
makeコマンド(Makefile)を勉強すれば幸せになるかも。
324名無しさん@お腹いっぱい。:2013/07/04(木) NY:AN:NY.AN
なんでマルチメディアで番兵使っちゃダメなの?
325名無しさん@お腹いっぱい。
SolarisでUNIXを覚えた君たちへ

君たちが悪いわけじゃないんだよ
君たちが覚えたSolarisの将来が無かっただけ
当時の社会が悪かっただけ
君たち一人ひとりが悪いわけじゃないんだよ

だから自分を責めないで
社会と向き合ってください
そうすればきっと気が付くはず
君たちのSolarisの知識が無用なのだということに
君たちの存在自体が社会の足枷だということに