1 :
帰宅部高校1年:
一ヶ月前、父親に「パソコン買って」とねだったら[Ultra10]と書かれたマシンをくれました。
わくわくして起動してみるとなんか友達の持ってるヤツと全然違う・・・
っていうかキーボードとマウスもよく見るとなんかおかしい。
親にネットにつないでもらって調べてみるとUltra10というのは
サン・マイクロシステムズというメーカーが出しているワークステーションで
Solarisというシステム(UNIX?)が動いているようです。
父親にこのワークステーションで何ができるのか聞いてみると、
「ホ→ムペ→ジもメールも見られるぞ」「派手なゲームはできない」
「どうせ暇なんだからプログラムでも勉強してみろ」
とつれない答えが・・・
まあ冬休みで暇だからプログラミングを勉強でもしてみるか、と
ネットで勉強しながらifとかwhileとか構造体とかポインタとか覚えました。
しかしこれを使って具体的に何ができるのか・・・?
ネットで見られる情報には↑とかの基本的な使い方しか書かれて無い模様。
ここからステップアップしたいのですがどうすればいいんでしょうか?
友達にも知ってる人はいないし、
本屋で立ち読みしてもネットで得られるものと同じような基本的な部分にしか触れていません。
2ch閉鎖騒動の動画をみてUNIX板の存在を知り
ここならすごいプログラマーの人がいると思い質問させていただきました。
お願いします。
氏ね
削除依頼済み
本屋を本当に探したのかと小一時間問い詰めたい
つーかネタだよね?
ネタスレすぎるな…
煽り所をちゃんとつくれよボケ
>>1
7 :
名無しさん@お腹いっぱい。:02/01/20 07:03
悲惨過ぎてageちゃう
笑えないネタは糞以下だね。
はやく削除したって。
9 :
帰宅部高校1年 :02/01/20 13:43
>>2そっちの方はレベルが高そうだったんで・・・
ごめんなさい。
>>3-8ネタじゃないんです・・・
自分で何かソフトを組んでみよう。
11 :
帰宅部高校1年:02/01/20 13:50
>>10はい、そういうことをやってみたいのですが、
今の知識(printf,scanf,if,for,etc...)ではどうやってアプローチしていいのかわからないんです。
>>9本当にネタじゃないんだとして、
Ultra10を与えてくれるような父親なら、
その父親も100%近い確率でこの板を読んでると思われるので、
君がこういう書き込みしていることが筒抜けだよ。
あ、それから、Cのプログラムなら、例えば、
/bin/echo とか、/bin/cat の簡易バージョンを自分で書いてみるとか…
>>9とりあえず、作ってみたいと思うものの傾向ってなによ?
>その父親も100%近い確率でこの板を読んでると思われるので
そんなこと無いだろう・・・
みなさんありがとうございます。
>>12-13プログラムをダウンロードして見てみましたが全然わかりません・・・
>>14たぶん親が見てることは無いと思いますが、見られてたら最悪です。
echoとかcatのプログラムはどこにあるのでしょうか・・・?
馬鹿ですいません。
>>15簡単なゲームなんか作ってみたいです。
テトリスとかインベーダーゲームみたいなヤツです。
>>16だといいんですけど・・・
20 :
名無しさん@お腹いっぱい。:02/01/20 19:26
ええ父親だ・・・winマシンなんか渡した日にはエロゲしかしないだろうしな。
Windowsマシンあってもエロゲしないだろ、普通。
>一ヶ月前、父親に「パソコン買って」とねだったら[Ultra10]と書かれたマシンをくれました。
面白い親父だな(w 「M$製のソフトなんて...」とか「LinuxはUNIXでは云々」なんて
日常的に会話してない?この親父さんのレポートをキボン
ひょっとするとこの板の連中なんかが裸足でぶっとぶスーパーハカーの可能性も
なきにしもあらずだけど(w
あぼーん
26 :
帰宅部高校1年:02/01/20 23:30
みなさんありがとうございます。
>>18-19ゲームのプログラムありがとうございます!
小さめなヤツから眺めてみることにします。
>>20-21エロゲームもやってみたいのですが、
この機種じゃ無理みたいですね・・・。
別の事で楽しむことにします。
>>22家族の前ではあんまりコンピューターの話はしません。
たまにチャットで外国人の人達と話してるみたいですが・・・
>>25cat.cとMakefileというのはわかるのですが、cat.1って言うのは何なんでしょうか?
中身を見ても全然わかりません。すいません・・・。
>>26cat.1はmanコマンドで見るマニュアルのcatに関する部分です。
プログラムには直接関係ないのでひとまず無視しておくということで
29 :
名無しさん@お腹いっぱい。:02/01/21 03:18
「ここからソースとれるぞ」って、行った先が大抵(というか、ほとんど)
FreeBSD などの BSD 系のところだね。
Linux はどうしたのかと、問いたい。
31 :
名無しさん@お腹いっぱい。:02/01/21 05:19
nroff -man cat.1
>>30LinuxのcatとかechoってGNU-ほげほげの中にまとめて入ってるけど、
どれに入ってるかなんていちいち覚えてないし、ツールはあそこ、
glibcはこっちみたいに情報源もあちこち分散してるので、URL書く
のも手間かかるんだよね。
各distributionのソースパッケージならとりあえず一カ所に固まっ
てるだろうけど、.rpmとか.debをSolarisな人(しかも初心者)に言っ
ても躓くの目に見えてるし。
ここでこういう事書くのもスレ違いだけど、Linux系のソース
パッケージってローカルパッチ当てた状態で配布されてるのが
嫌だね。
FreeBSDのportsみたいに、オリジナルのtarballはそのままで
パッチを別ファイルに分けておいてくれれば、別のOS使ってる
時(例えば
>>1がSolarisでコンパイルしようとした時とか)でも
パッチだけ拝借して来れるんだけど。
まぁ自分でdiff取ればいいって話もあるけど、このパッチは
当てる、このパッチは当てないといった収拾選択できないから
やっぱいまいち。
# もしパッチが別になってる形式があるなら俺の認識不足って
# だけなんで無視してくれ
>>33Linuxの*.src.rpmなら、中にはオリジナルの*.tar.gz(or *.tar.bz2)と、
バグフィックスやmakeを通すためのpatchと、
ディストリビューション固有のローカルpatchとが、
分離されて入っていますが、何か?
俺、実際、Linuxの*.src.rpmをrpm2cpioで分解して、
Solarisで利用してるよ。
FreeBSDのcat.cをSolarisでmake通すのは結構大変。BSD makeの壁もあるし…
それより、GNU textutils のソースならSolarisでもFreeBSDでも、
./configure; make 一発だよ。
宗教戦争化しそうだな。とか言って見るテスト。
喧嘩すんな。
>>1には宗教戦争なんて関係ないだろ。
37 :
帰宅部高校1年:02/01/21 22:59
みなさん本当にありがとうございます。
>>27 ありがとうございます。
現在cat.cのプログラム読んでコンパイルに挑戦しているのですが結構むずいです。
がんばります。
>>28 おお、こんなものもあるんですね。
プログラミングだけじゃなくてSolaris自身も使いこなせるようにがんばってみます。
>>29 関連ページの紹介ありがとうございます。
そこを参考に何個かソフトを入れてみました!
なんつーかアレだ、ほのぼのとしていていいスレだ。
皆もマターリやろう。
39 :
名無しさん@お腹いっぱい。:02/01/22 00:46
Solarisってソース公開されてなかった?
有料だっけ?
スマソ。ageちまった。
>>39 中途半端にSol8FCS版の一部のみ公開されている。
その後のアップデートは一切なし。
ダウンロードは事前の書面手続きが面倒。
CD-ROMでの注文は簡単だが、ちょっと高価。
42 :
名無しさん@お腹いっぱい。:02/01/22 22:12
ネタかと思ったけど、そういうおやじいるよね。
私(今26)もうまれてはじめて触ったのは親父が会社から仕事で
持ってきたHPのマシンだよ。小学生のとき。(当時の最高級車なみの
値段するものらしかった) カートリッジでUFOゲームとかしたよ。
(UFO静止画だしモノクロだし。。でもめちゃおもろかった。)
さいしょはインストール猿でOKと思う。でもpkgはだめよん。
自分でmakeしてね。
昔はconfigure,make一発でうまくいかないの
だらけだったから、自分でちょこっとわけわかでもMakefileや
ソースに手いれたりして
コンパイルしてみて→やったー、でついでになにげにmakeとかgcc,ccの
オプションとかがだんだん覚えられる っていうのがあったんだけど、
いまどきは、一発でとおっちゃうのばかりだから勉強っていみでは
よろしくないね。
43 :
帰宅部高校1年:02/01/24 23:26
現在、FreeBSDのホームページからもらってきたcatを解読中です。
今週は宿題が多くてあんまり進みませんでした。週末にがんばります。
インクルードされてるプログラムも読まないといけないから結構たいへんです。
探すのに苦労しましたが・・・
Solaris自身も使いこなせるように勉強中です。
はじめから入ってたネットスケイプコミュニケーター4.7が使いにくい(ブックマークの編集してるとおかしくなる?)ので、
サンのページからネットスケープ6とHotJavaというのを見つけたので入れてみました。
すごい遅いです・・・
とりあえず今週末がんばります。
44 :
名無しさん@お腹いっぱい。:02/01/24 23:36
>>43 なんかほのぼのしてて良いな
がんばれ1年生!
45 :
名無しさん@お腹いっぱい。:02/01/25 00:24
FreeBSDのcatは Revision 1.17 からUNIXドメインソケットを読めるようになり、
その分ソースコードも複雑化してるから、練習用には Revision 1.16 をお勧めする。
46 :
名無しさん@お腹いっぱい。:02/01/25 01:09
漏れもこのスレの
>>1さんに感化されて
VAIOノート上でなんかやってみようとしたんだけど!
Cygwinってlessもviもed(!!)もないんですね。
正直フェチ心がうずきます。
47 :
帰宅部高校1年:02/02/04 17:46
みなんさんの貴重な時間を割いていただいて本当にありがとうございます。
学校の修学旅行(1年目なのに・・・)なんかあってごたごたしてました。
FreeBSDのcat.hや、それにインクルードされてる.hファイルも一通り読み終わりました。
理解できたような、理解できてないような・・・テストでは一番危険な状態です。
読んでるだけだと上達しないと思うので、引数で数値を受け取ってそれを計算するプログラムや
ファイルに書かれてる事を読みとって、何か計算したり、加工したりする小さなプログラムに挑戦してます。
プログラミングだけじゃなくてSolarisの勉強も少しずつですがやっています。
そのときに、Solaris教えてスレッドの参考ページがすごい役に立ちました。
過去の書き込みも(理解できないことは多いけど)参考になるところも多かったです。
過去の話題をみて、xemacsをインストールとtcshの日本語化に成功しました。
みなさんから見れば大したことない事にも悪戦苦闘してる馬鹿者ですが、
何か困ったときにアドバイスなんかいただければありがたいです。
49 :
名無しさん@お腹いっぱい。:02/02/04 21:15
プププ、何このスレ?
馬鹿が化石ソラリスにはまってるのか?
可哀想だね〜、Sunって。こんな厨房しか寄りつかないんだね(プププ
あー俺はLinux使ってて良かった。
50 :
PoP'N-Mu WOTA:02/02/04 21:21
いいね。ほのぼの。こういうスレって大好きだね。
>>1、がんばって良スレにしてください。
>>48 おいおい。edもvim6もパッケージにあるぞ。(GNU edは最近入った)
パッケージのvim6はsjisならそのまま扱える。
そのURLの奴はjvimだから、パッケージのvim6には当たらんぞ。
# スレ違いなのでsage。質問その他はCygwinスレで
53 :
名無しさん@お腹いっぱい。:02/02/04 23:58
みなでがんばって1が Linux のPOSIXスレッドなんかクソで使ってらんねーよ
やっぱ libthreads 最強! CSI I18nマンセー!
程度の事叫びだすまで教育しよう。
>>53 オレもSolaris派だが そのカキコがLinux派を刺激してマターリすべきスレが荒れる
原因になる できれば刺激的なカキコはしかるべきスレの方でやってほしいのだが......
>>52 >おいおい。edもvim6もパッケージにあるぞ。(GNU edは最近入った)
ガーン。
vim6は入れて結構使っているんだけど,
edって使ってないから分からなかった。
情報サンクス
>そのURLの奴はjvimだから、パッケージのvim6には当たらんぞ。
それは分かっております。
大丈夫です。
jvimのほうが簡単かなと思ったまでです。
って言うかedって何?(←前振り)
#この前振り寒いかも…
レスして下さった方、有難うございます。
つうかrpmとかいうk(自粛)で管理するのは
なんか虫唾が走るんで、ソースから全部入れてみます。
とりあえずこのスレを参考にしながら進んでいくつもりです。
>>1さんがんばってくだちい。
>>54 あ、スマソ。そこまで考えてなかった。
いや、デザインチョイスだからね。あくまで
Linux pthreads も I18n もアリだと思うヨ!
とかいまさら言っても遅いか。
58 :
北京 ◆5rr1Eed6 :02/02/06 23:13
俺もソラリス使い手ぇ!
59 :
名無しさん@お腹いっぱい。:02/02/07 00:24
>>55 ed は DOS の edlin のような line editor です。
>>59 ありがとう。なんとなくは分かってたんだけど。
Erectile Dysfunction
っていうの期待してたんだよね。(やっぱ寒いな)
ごめんね。ごめんね。
>>52 exっつーのはあったんだけど,
edって見当たらないんだけど
何処にあるんだい?
#すれ違いのレスばかりでスマソ
61 :
名無しさん@お腹いっぱい。:02/02/07 14:59
>>60 ex は vi と hard link されているもの。vi の : な prompt が出てくる。
Solaris8 だと /usr/bin/ex or /usr/ucb/ex
ed はもっと primitive な editor で、普通 /usr/bin/ed に存在するはず。
Linux とかだと ed がない distribution もあると思うけど、ここは Solaris
スレだから、/usr/bin/ed はあると思うんだけど…。
ここは
>>1の成長を暖かく見守るスレだから、
質問はSolarisスレでやるべし。
高校 1 年で Solaris 使う時代なんだな...。
正直、うらやましい。
64 :
名無しさん@お腹いっぱい。:02/02/09 11:59
>>61 /usr が mountできない時のために /bin/edじゃねーか?
/sbin かもしれんが。
Solaris教えてスレッドでやれよ・・・
質問が分散すると、後で探しにくいだろ。
>>64 おいおい、solarisでは/usr/bin=/binだって
67 :
名無しさん@お腹いっぱい。:02/03/03 20:36
期末テスト?
68 :
名無しさん@お腹いっぱい。:02/03/03 20:42
>>64 /bin=/usr/bin
/sbin≠/usr/sbin
これ、Solarisの常識。
うっ・・羨ましい......
わたくしめでしたら金さえあればintelなマシンは買わんが.....
また、貴方のお父様も通好みな物をお持ちで....
70 :
帰宅部高校1年:02/03/10 13:31
ちょっと詰まっているので、知ってる方がいたら教えてください。
レベルの低い質問だとは思いますが・・・
コマンドラインからの引数を受け取りたい場合、
int main(int argc, char **argv) と書きますよね、
argvは引数の先頭のアドレスだからargv++とかで、次の要素へズラすことができる、
*argvはその中身で、while(argc--){printf("%s",*argv);argv++;}で表示することができる。
では**argvと言うのは何を表しているんでしょうか?
いろんなソースを眺めているとコマンドラインから受け取るオプションのチェックなどに使われているように思われるのですが・・・
**argv は *argv[ xx ] と思っていいよ
そしたらわかるかい?
>>70 71さんに勝手に補足(やりすぎたらごめんよ。自分で答えみつける方が楽しい
からね)
- 文字列はcharの配列である。書くときは
char *hogeともchar hoge[]とも書ける。これの意味は同じ
- じゃあ文字列を要素とする配列はどうかく?
74 :
帰宅部高校1年:02/03/10 18:06
>>71-72 なるほど。たとえば、
int main(int argc, char *argv[]){
argv++; //./a.outを読み飛ばして
argc--; //一つ減らす
}
をコンパイルして、
./a.out test1 test2
として実行したとき、
*argv は test1
**argv は t
を表すって事ですよね?
つまり「char型の配列を要素とする、配列」と言うことで間違って無いですよね?
>>73 アドバイスありがとうございます。
早速、挑戦してみます。
ポインタ演算は最初はわかりにくいね。
>
>>1よ。お前みたいな奴をみると、あの日のことを思い出すよ。
>2001年8月25日。2ちゃんが本格的に閉鎖になりかけた日だよ。
>転送量が多すぎて、費用が月700万もかかってるって発表されて、「数日中に閉鎖」って予告されてさ、
>その日のうちにあっちこっちの板が封鎖されてた日だよ。
>あのときのUNIX板の住人、カッコよかったんだぜ。「総力を結集」ってのはまさにああいう状態だよ。
>転送量を1/3に削減しないと閉鎖、ってもんだから、新しいプログラム組んでさ、
>そしたらほんの何時間かで完成したんだよ。それが聞いてくれよ、目標は1/3だったのに
>1/16まで圧縮に成功しやがったんだよ。職人技なんてもんじゃねえよ、神技だよ。
>でもよ、そうやって頑張る人がいた一方で、「ボクの肛門も閉鎖されそうです」とか駄スレ立ててたバカも
>いたわけだよ。ちょうど、今のお前みたいにな。
>だからよ、俺たちは総力を結集して、お前のバカ度を1/16に圧縮しようと思うよ。
>ま、圧縮後でもお前のバカ度はこの世に生かしておくことのできないレベルだけどな。
>要するに俺らの力を結集してもお前を助けることができないってことだ。
>わかったら、まわりに迷惑をかけないようにひっそりと死んでくれよな
ってコメントあったんですけど、この中の「ボクの肛門も閉鎖されそうです」ってスレ探してます。
だれか教えてください。
77 :
名無しさん@お腹いっぱい。:02/03/10 18:42
Solarisでプログラミングの勉強して何になるの?
滅びるOSにしがみついてるヤツには未来は無いな(w
Solarisを選んだ時点で負け組確定だろ。
若いうちから人生捨てるとは馬鹿なヤツだ
>>1 *BSDもSolarisもLinuxにひれ伏してるじゃん。
これからはLinuxの時代だ!
あぼーん
77にマジレス
past-lookingな傾向はMacコミュニティにもLinuxコミュニティにも、
そしてUNIXコミュニティにもあるね。SolarisよりLinuxすすめる
根拠がわからない。10年後に今を振り返ってみたらどっちもどっちだよ。
きっとね。
高校生がUNIX使うのは悪くないよ。そういう高校生のなかから、
大学生になってUNIXに飽きて何か新しいことをはじめる人が
でてきたら面白い。
>82
以前からSun関連スレで暴れてた、自称Linux使い。
厨房板等で荒し用perl scriptをコピペしてお山の大将、んで現在Unix板他を荒らしていると。
よって、今後一切マジレス無用。
>*argv は test1
>**argv は t
>を表すって事ですよね?
>
>つまり「char型の配列を要素とする、配列」と言うことで間違って無いですよね?
うん、そんな感じで理解してれば良いと思うよ。
しかし、最近荒れ気味のUNIX板でオアシスのようなほのぼのとしたスレだ。
>>1も良い親父を持ったものだな〜。
Ultra10使ってる高校生なんて見たこと無いよ。
どれほどのスペックのマシンなんだい?
>>1 頭のおかしな人達の標的にされるといけないのでsage進行でマターリ行きましょう。
みんなぁ!ここから先はサブマリン攻撃だ(sage侵攻)
ところで、、、もらったポインタをインクリメントするのは
オジサン本能的にチビっちゃうな
>>1 インクるデクるときは、ポインタの写しをそうする方が安全だよ、
mallocとか使い始めるとわかるかもしれんけど。
# あ、そこ、CPUパワーのムダ使いとかいわないように
>>75 そうですよねー。
>>79 >>81 とても参考になります。日本語の情報は本当にうれしいです。
ありがとうございます。
>>84 詳しくはわからないんですが、起動するときに
UltraSPARC IIi 300MHz / 256MB と出てます。
>>85 なるほど・・・勉強になります。
int argc_copy
char **argv_copy
とかしてやってみます。
>>86 argcはコピらんでもええよ、、、
もともとmainにやってくるときにコピられてるんだから。
88 :
名無しさん@お腹いっぱい。:02/04/21 14:03
何が楽しくてSolarisなんて使うかなぁ?
実用性も楽しさもLinuxの方が遙かに上だと思うんだけど?
煽りとかじゃなくてマジで。
Linux だとお前のような馬鹿がうじゃうじゃいるからじゃないかなぁ?
煽りとかじゃなくてマジで。
>>88 人によって好みも価値観も違いますからね。
「〜の上」と根拠も示さずに書くのはただの
煽りと変わりませんよ。
デバイスドライバやプリインストールアプリの豊富さ等ではLinuxの方が上でしょうな.
SMP/multithreading/CSIに基づいたI18NなんかではSolarisに軍配が上がるでしょう.
まぁ
>>91で挙げたSolarisの強みというのは,Linuxの強みに比べると
一般のエンドユーザには直接的には実感しにくいところではあるかな.
でも,Apache2の正式リリースにより,multithreadingについては
再評価されるのではないかな,と思っていたりする.
>>92 そうそう、
>>88 はただの煽りだろーけど、
一般エンドユーザー代表意見としては
結構的を得ているかも。
SMP/multithread/CSI i18n は FreeBSD/NetBSD あたりでわりと頑張ってる人が
いるみたいなので、個人的には *BSD に期待。
solaris/ia も存続希望〜。でも sun にとってはあんまりウマ味ないかもなあ。
94 :
名無しさん@お腹いっぱい。:02/09/28 13:07
プププ、ここは化石にしがみつく馬鹿が集まるスレですかぁ?
Linuxの方がすべてにおいて上なんだけどねぇ・・・
それにきずかないSun信者ってかわいそうだね(w
きずかない、って… 小学生?
1はどこいった?
今はUltra10に Linux入れてます。
やっぱ、メジャーな方が何かと都合がいいですね。
犬厨ってどうしようもないな・・・
♪〜
アイマン・イヌチュー
ヨーアン・イヌチュー
ウィーアー・イヌチュー…
ブラザーズ!
♪〜
(皆さんご一緒に…)
(1行4拍でラップ風に)
馬鹿はおとなしく隔離されてろよ・・・
>>100 これ、もーらい。
今度の学祭バンドの余興で
Solaris同好会の隣で嫌がらせ演奏してやろう(w
う〜ん、犬厨の考えることは理解できんな。
(^^)
105 :
名無しさん@お腹いっぱい。:03/01/27 15:11
犬厨は1つの側面で総て語ろうとするから怖いね。
Winも歴史的経緯抜きで考えるといい面もあるけど、もちろんな如く総て否定して煽りいれてそうだね。
。。。だれもLINUXバカにしてないのに
思想的なバカはどこいってもバカなのは確かだす
遅レスにも程があるぞ
108 :
名無しさん@お腹いっぱい。:03/02/09 13:52
Solarisプログラミングを初心者が
学べるご本はありますか?
教えてください。
>>88 こういう人って 時々いるよね…
「何が楽しくて」って、
何も判らないなりに父親に与えられた物を使ってみてるんでしょうが。
>>89 Linuxウンヌンはともかく、「バカ」には同意。
俺はデモのコードを読んで勉強したぞ。がんがれ
>>1
(^^)
あぼーん
あぼーん
あぼーん
あぼーん
あぼーん
119 :
名無しさん@お腹いっぱい。:03/08/17 04:27
あぼーん
>>121 もう、自分は書きまくるよ。
1週間に1つの割合でデバイスドライバ書くぜ!
1月に4つで、1年に12ファイルの勢いです。
まずはUSBのデバドラとか書こうかな。
1/週
4/月
12/年
???
3ヶ月で挫折する予定です
>>123,
>>124 いや、違います。
tarでアーカイブしてあるんです。(1つのtarファイルに4つのデバドラ)w
126 :
名無しさん@お腹いっぱい。:03/08/17 20:50
保守あげ
127 :
名無しさん@お腹いっぱい。:03/09/18 03:13
Solaris(x86/SPARC共に)のXawの、asciiTextWidgetでは
XIMを使った日本語入力はできんのだろうか?
Linuxで上手く動いたコードを元に試行錯誤を繰り返してるが、
XtVaCreateManagedWidget実行後、標準エラー出力に
Warning: we can not open any input method
と出て、さっぱりIMが使えない...
128 :
名無しさん@お腹いっぱい。:03/09/19 05:55
学校の授業でいきなりUNIXやらされてます・・・。
もう、頭がウニです。ウニックスです(TT
お礼するから代わりにレポートやってくれる人がいたらどんなに楽なことか・・・
と、言ってみるテスト。
>>128 今時、いきなりUNIXやらしてくれるんんて、いー学校だな。
まぁせいぜいがんばれよ。
やってほしけりゃさりげなく課題はっときなよ。
しかもアップしてみたけどアクセスできなかった・・・。
WINも満足に使えないようでは・・・
133 :
名無しさん@お腹いっぱい。:03/09/19 19:42
もっと楽しくやれば簡単に覚えられるよ。
>>128 早くうpしてよ。
寝ないで待ってるんだから。
135 :
名無しさん@お腹いっぱい。:03/09/20 03:06
>>128 wordファイルでなくて、textファイルにしてよ。
>>128 【問題1】
1) 標準入力から読み込んだストリームで、
第1行目以降のプリプロセッサ処理行を表示するプログラム
2) 1.getcharで標準入力から1文字読み込み
2.前の文字が改行でないなら次の行を読み込み
3.前の文字が改行の場合、現在取得文字が'#'の時にstatusフラグに1を立てて
4.次行でstatusフラグが1の場合、標準出力に1文字出力する。
5.以上をストリームの終わり(EOF)まで繰り返す。
>>128 【問題2】
めんどいので端折るが、shellの勉強をすればすぐできる。
>>137 【訂正】
2.前の文字が改行でないなら次の行を読み込み
↓
2.前の文字が改行でないなら次の文字を読み込み
^^
なんだかソフトウェア作法とか勉強したらすぐにできそうだな。
141 :
名無しさん@お腹いっぱい。:03/09/22 15:40
アホみたいな質問なんですが、
OS起動時に「/」がグルグル回るようなプログラムはどうやって組めばいいんでしょう?
ディスプレイの前でグルグル回る
echo -n "-^H\^H|^H/^H-^H"
>>143 # echo -n "-^H\^H|^H/^H-^H"
-n -^H\^H|^H/^H-^H
こうなるが
csh% foreach n ( - / | \ - );printf $n"\c";sleep 1;printf "\b\c";end
ってすると"\"のとこだけは表示されないね。
\がコントロールコードの字句解析を打ち消すのがネックか?
確かCR(13、行頭に戻る)を使ってる。こんな感じ?
#!!/bin/sh
while :
do
for c in - / \| \\
do
/usr/5bin/echo "$c" "\r\c"
sleep 1
done
done
>>137 どういう動作をさせたいのかよくわからんね。
なんとなく、「先頭行以外の行頭#の次の行からstdinをstdoutにコピー」になってる気がするのだが…
5bin/echo を使うのがキモだね。
148 :
名無しさん@お腹いっぱい。:03/10/30 19:53
なんつーか、トラブル気味なので、教えてください。
とりあえず、問題はここまで絞り込んだんだけど、
ここからがぜんぜんわかりません。
Sun.docs.comにこういう話ってでてないよね?
Solaris9(64bit)で以下のコードのプログラムを動かしたとき、
必ずsegmentation faultがおこる。
struct {
inta;
shortb;
}A;
typedef A *PA;
int main(){
PApa;
intnum=3;
pa = (PA)malloc(sizeof(PA)*num);
pa[0].a = 1;//ここでsegmentation fault
return 0;
}
このとき、ILP32ではうまくいくが、LP64(xarch=v9)ではうまくいかない。
mallocが問題だと思うんだけど、どう問題なのかがよくわからない。
Solaris9の64bitプログラムに詳しい方、ぜひぜひ教えてください。
よろしくお願いします。
ポインタの配列しか確保してねーじゃん。K&R本から(以下小言
150 :
名無しさん@お腹いっぱい。:03/10/31 09:17
>148
ぐは。間違えてる。
正しいのはこっち。
> struct {
> int a;
> short b;
> }A;
> typedef A *PA;
> int main(){
> PA pa;
> int num = 3;
>
> pa = (PA)malloc(sizeof(A)*num);
> pa[0].a = 1;//ここでsegmentation fault
> return 0;
> }
ちゃんと構造体の大きさを個数分確保してるんだけど、
うまくいかない。32bitだとうまくいって、64bitだとうまく
いかない理由がわからない。なんでだろう???
sizeof(A)の値はどーなってるの?
構造体の列をそうやって一括でmallocするのが諸刃の剣だっ
ツーことは分かっているヨナ?
153 :
名無しさん@お腹いっぱい。:03/11/02 14:30
まさか stdlib.h を include してないってオチはないよな?
>>152 一括でmallocして何の問題があるつうのよ
おまえ諸刃の剣って言ってみたかっただけだろ
>>148 こうすればいいんだろ。
32bit、64bitどうこう言う前にK&R本が必要では?
typedef struct {
int a;
short b;
}A;
typedef A *PA;
int main(){
PA pa;
int num = 3;
pa = (PA)malloc(sizeof(A)*num);
pa[0].a = 1; //ここでsegmentation fault
return 0;
}
>>150 たぶんコンパイルオプションがおかしいんじゃない?
ちゃんと64bitライブラリをリンクしてる?
下のソースでコンパイルも実行も問題なかった
/*
* c -xarch=v9 -o aaa aaa.c
*/
#include <stdlib.h>
typedef
struct {
int a;
short b;
} A;
typedef A * PA;
int main(){
PA pa;
int num = 3;
pa = (PA)malloc(sizeof(A)*num);
pa[0].a = 1;
}
>>156 >K&R本がどうこう言う前に
>>150をよく見ては?
は?
言ってる意味がわかんねーよ。
155のソースでは駄目ってこと?
>>158は、155のソースにincludeつけただけじゃん。
要するに
struct {
inta;
shortb;
}A;
は、
typedef struct {
int a;
short b;
}A;
だろ。
1 stdlib.hをincludeし忘れ
2 mallocの戻り値が32bit整数と見なされ
3 64bitポインタの上位(下位?)32bitがpaに格納され
4 あぼーんされ
>>159 typedefが無いとコンパイルエラーになるから、
それは単なるコピペミスだと思う
プログラミング好きですよ
iconv()に関して質問させてください。
static int KONBU(char *to_code, char *from_code, const char **inp, char **outp, size_t *inl, size_t *outl)
{
iconv_t icv_hook;
size_t ret_val;
icv_hook = iconv_open(to_code, from_code);
if(icv_hook == (iconv_t)-1)return(ANS_ERR);// NG Return
ret_val = iconv(icv_hook, inp, inl, outp, outl);
iconv_close(icv_hook);
if(ret_val == (size_t)-1){
if(errno == EILSEQ) printf("EILSEQ\n");
else if (errno == E2BIG) printf("E2BIG\n");
else if (errno == EINVAL) printf("EINVAL\n");
return(ANS_ERR);// NG Return
}
return(ANS_OK);// OK Return
}
上記のようなiconv()を用いた関数があります。
unsinged char *sb, db;
ret = KONBU("JIS7", "PCK",(const char **)&sb,(char **)&db,2,8);
そしてこのように呼び出しており、unchar sbには
83 31 83 32 83 34 ....といったようなデータを渡しています。
実行結果はEINVALが返ってきます。
ここで質問なのですが
@第5引数の2はsbを2バイトずつ読み込むということでよろしいのでしょうか?
A第6引数の8は何を指すのでしょうか?
Bsbには0x81 0x31 ....というようにヘキサを読み込ませているつもりなのですが
そもそも文字列で渡すべきなのでしょうか?
CEINVALのエラーの意味がよくわからない。
以上4点になります。
厨な質問かとは思いますがご教授お願いいたします。
てか○数字使ってる時点であぼーん。
はい、次の人どうぞ
>>1 >わくわくして起動してみるとなんか友達の持ってるヤツと全然違う・・・
>っていうかキーボードとマウスもよく見るとなんかおかしい。
いつも自分が慣れたブツ以外は「おかしい」「違う」といって種類の多様性を
容認しようとしないMS中心のグローバルスタンダード的な考えは
(あえていえば自分がそのような事を考えたことが無いにしても
排斥的思考を恐らくは無意識のうちに行なっているという事は)
差別や偏見にもつながりかねない重大な問題だと思うんですが、どうでせう?
いやむしろ多様性を受け入れようとした結果がこの惨状なのでは?
つーか「パチョコン」といいながら「ワークステーション」といってるところで
ネタ確定。
あとSPARCウザーから言わせればultra5/10はパチョコン同等。
ブリッジの下に何でもぶら下がってるのは安物。バスがスイッチなUltra60ハァハァ
>>171 UPAバスの有無のことだろうけど、1cpuや2cpu程度なら
あんまし意味ないっしょ
はい、次の人どうぞ
174 :
名無しさん@お腹いっぱい。:03/12/25 00:55
天×
×罰
100%ネタ
こんな陰険な父親いたらヤダなぁ〜(爆)
176 :
名無しさん@お腹いっぱい。:03/12/25 07:25
>>175 そうかなー、俺はこの親父かっこえーと思うけどね。
もっとも、親父も本人が工学方面の興味をもってるから与えたんだろ。
正直言って、パソコンなんて5万程度で買えるんだからバイト代で買えるし、
ある意味、ワークステーションなんて親父が買わなければ、最初のうちは
出会えない代物だから、親父の判断は正しいと思うよ。
177 :
名無しさん@お腹いっぱい。:04/01/06 01:10
デモ実際にいそうじゃあない?
大学の教授とかでさー。
学校の放出品もらってきたりとか…。
漏れは先日大学からもらってきたぞい。
178 :
名無しさん@お腹いっぱい。:04/01/06 19:36
age
179 :
名無しさん@お腹いっぱい。:04/04/24 08:55
ども。
Solaris8+SunONE7 で ローカル時間にmsec(ミリ秒)を使いたい。
localtime構造体には、msecがなく、困ってます。
何か他のmsecのある構造体を教えてください。
また、time構造体から上の構造体への変換関数もお願いします。
#プログラム板の方にも書き込みしちゃったけど、その後、ここ見つけたんで、
#書き込ませてください。
time構造体なの? time_tとかstruct tmではなくて?
gettimeofday(3C)で使うstruct timevalは
マイクロ秒単位のメンバを持ってるよ。
6〜10msec程度の精度はあると思う。
ただし、gettimeofday(3C)で得られるのはUTC時間なので
タイムゾーン処理は自分でやる必要あり。
>180
レスありがとう。
すいません、timeじゃなくてもいいです。
time_t,struct tm,hrestime,など。
標準的な関数かシステムコールで、時間を取ってこれて、それを
ローカル時間に変換できる関数があればいいです。
UTC時間だとそっから自分で変換するのに、処理にかかる時間が
問題になるかもしれないので。
できればローカル時間へ一発で変換したいところ。
> 標準的な関数かシステムコールで、時間を取ってこれて、それを
> ローカル時間に変換できる関数があればいいです。
「localtime構造体」ってのはstruct tmのことでいいんだよね?
少なくとも2038年までなら、struct timevalのtv_secをtime_tに変換すれば
localtime関数が使えるでしょ。
struct timeval tv;
time_t t;
struct tm *tm;
gettimeofday(&tv, NULL);
t = tv.tv_sec;
tm = localtime(&t);
printf("%02d:%02d:%02d.%03d\n", tm->tm_hour, tm->tm_min, tm->tm_sec, tv.tv_usec / 1000);
> 6〜10msec程度の精度はあると思う。
訂正。実測したら20usecくらいの精度はあるみたい(@Blade 100)。
1は今頃大学生か・・・
>182
返事ありがとう。
まさしく求めていたもの、そのものって感じです。
ありがとうございました。
185 :
名無しさん@お腹いっぱい。:04/05/10 20:05
Solaris8のSun ONE7 でディレクトリの存在チェックをするには
どうしたらいいでしょうか?
opendirを使おうと思ったんだけど、DIR *が大きさ不定?な
構造体らしく、どうしたらいいかわかりません。
簡単にディレクトリの存在(ある、なし)をチェックするには
どうしたらいいか、教えてください。
exec(ls)のようでないものをお願いします。
186 :
名無しさん@お腹いっぱい。:04/05/10 21:14
188 :
名無しさん@お腹いっぱい。:04/06/10 12:16
Solaris8ってlibpthread.a無いんですか?
Linuxだとちゃんとあって、スタティックリンクできるんですが。
Solaris の場合、スタティックリンクできない。
これは pthread 回りでシステムコールインターフェースの変更が
あっても、libpthread.so でその変更を吸収するためなので、
我慢しる。
191 :
名無しさん@お腹いっぱい。:04/06/14 00:17
処理時間が一定時間を越えた場合には、強制終了するように、スレッドとシグナルを使って、
以下のようなプログラムを組んでいます。
しかし、シグナルハンドラを無視(起動しない)もしくはシグナルの無効化ができません。
どうしたらよいでしょうか?
・初期設定
・スレッドA起動
( ---> シグナルハンドラ(SIGALRM)設定、インターバルタイマーセット )
( ---> タイマー待ち ---> 時間が来たらハンドラ起動 ---> ハンドラ(abortで強制終了) )
・処理B
・処理Bが時間内に終了
・スレッドA終了処理
( シグナルハンドラを再設定 ---> インターバルタイマーリセット )
( スレッドAをキャンセル )
・処理続行
このとき、シグナルハンドラの再設定し、スレッドAを終了させると、ALARM CLOCKで終了。
スレッドAを終了させて、なおかつ、ハンドラを起動させないようにするためにはどうしたら
いいか教えてください。
なんか、Solarisの中味(システムコール?)について、よくわかってないので、変なこと書いてる
かもしれませんが、よろしくお願いします。
>>191 そのスレッドAってのは時間監視だけしてるの? それとも処理BってのもスレッドAの仕事?
時間監視だけなら、シグナル使わないでスレッドAをその時間だけ眠らせておけばいいんでない?
>>192 >
>>191 > そのスレッドAってのは時間監視だけしてるの? それとも処理BってのもスレッドAの仕事?
> 時間監視だけなら、シグナル使わないでスレッドAをその時間だけ眠らせておけばいいんでない?
そうしておいて、B側で処理が間に合ったらフラグをセットして、スリープから起きてきたA側がそのフラグをチェックすればいいんじゃないのかな?
レスありがとう。
>192,193
スリープでもいいかなと思って、暫定的にそのような処理にして、動かしていました。
しかし、他にもいくつかのスレッドが立ち上がっており、タイマー待ちができない状態になりました。
結局、なんとか今日解決したのですが、どのようにしたかというと、以下のような感じです。
(SIGALRMは他のスレッドで使用するため、ほかのシグナル(SIGUSR1)に変更することになりました)
スレッドAは時間監視セット処理のみ行う。
処理Bはタイマーによって監視され、一定時間経過したら、ハンドラによって強制的にプロセスごと終了させられる。
・初期設定
・スレッドA起動
( ---> シグナルハンドラ(SIGUSR1)設定、timer_create(TimerID), timer_settime() -----> スレッドA終了)
( 時間が来たらハンドラ起動 ---> ハンドラ(終了処理後、abortで強制終了) )
・処理B
・処理Bが時間内に終了
・タイマー削除処理(timer_delete(TimerID))
・処理続行
以上、こんな感じです。
ありがとうございました。
195 :
名無しさん@おなかいっぱい:04/06/15 23:58
スレッドとシグナルを併用するってぇいうのが間違いの元
197 :
名無しさん@お腹いっぱい。:05/01/14 02:32:20
Sunblade 100のCPUは、sparc64でつか?
UltraSPARC IIe
何が64bitかはわからんが、まあ普通は64bit CPUに分類される。
>>200 ありがとうでした。
いや、ちょっと今ビッグエンディアンとリトルエンディアンのテストしたかったので、
x86とSparcを使用して64bit,32bitデータがどうなるか調べたかったのです。
おかげでエンディアン問題に影響しないコードが書けました。m(_ _)m
202 :
名無しさん@お腹いっぱい。:2005/10/09(日) 02:29:53
age
203 :
名無しさん@お腹いっぱい。:2005/10/29(土) 16:27:35
sage
そりゃそうだろ。
大抵のプログラムはエンディアン問題には影響*しない*。
影響*される*ことはままあるがな。
9ヶ月遅れで「そりゃそうだろ」って言ってもな。
206 :
名無しさん@お腹いっぱい。:2006/05/08(月) 02:38:07
age
とりあえずあれだ、漏れが適当なWindowsマシン(ライセンス付き)送ってあげるから
そのマシンと交換してほしいよ。マジで。
209 :
名無しさん@お腹いっぱい。:2006/05/16(火) 05:06:04
Puttyを使ってsshで接続後、makeとかしてるんですけどセッションが切れてもmakeし続ける方法ってないんですかね?
makeに1、2時間かかる間にPuttyやネットワークが落ちてもサーバー側に問題がなければmakeしててほしい。
210 :
名無しさん@お腹いっぱい。:2006/05/16(火) 13:33:54
screen 使ってでたっちするか
nohupするか。
なんで、なんでなんで。
おすぎですっ。ぴーこですっ。
ゆーたいりだつっ。
ざ・たっち。
212 :
名無しさん@お腹いっぱい。:2007/08/13(月) 13:12:01
>>204 文字をintで扱うからエンディアン影響するんじゃ?
キャストってスペックにだけ影響するの?
一ヶ月前、父親に「パソコン買って」とねだったら[PC8801]と書かれたマシンをくれました。
わくわくして起動してみるとなんか友達の持ってるヤツと全然違う・・・
っていうかキーボードとマウスもよく見るとなんかおかしい。
親にネットにつないでもらって調べてみるとPC8801というのは
NECというメーカーが出しているワークステーションで
N88BASICというシステム(Microsoft?)が動いているようです。
父親にこのワークステーションで何ができるのか聞いてみると、
「ホ→ムペ→ジもメールも見られるぞ」「派手なゲームはできない」
「どうせ暇なんだからプログラムでも勉強してみろ」
とつれない答えが・・・
まあ冬休みで暇だからプログラミングを勉強でもしてみるか、と
ネットで勉強しながらifとかwhileとか構造体とかポインタとか覚えました。
しかしこれを使って具体的に何ができるのか・・・?
ネットで見られる情報には↑とかの基本的な使い方しか書かれて無い模様。
ここからステップアップしたいのですがどうすればいいんでしょうか?
友達にも知ってる人はいないし、
本屋で立ち読みしてもネットで得られるものと同じような基本的な部分にしか触れていません。
2ch閉鎖騒動の動画をみてUNIX板の存在を知り
ここならすごいプログラマーの人がいると思い質問させていただきました。
お願いします。
PC88でwebもメールもできるんなら、それはたしかにわくわくするなあ。
215 :
名無しさん@お腹いっぱい。:2007/08/28(火) 23:59:16
PC88ってN88Basicしか動かんのじゃないの?
DOSの前だよなw
おれSRmkU持ってたけど。単なるゲームマシンだったな。なつかぴ。
CPUはZ80(相当)だから、CP/Mもあったらしいよ。
UZIXも動けばおもしろいんだけどね。
CP/Mあったよ。仕事もあったよ。
218 :
名無しさん@お腹いっぱい。:2007/08/30(木) 01:26:57
おお CP/M ね。
あったなぁ。 俺は日電CP/M持ってたもんね。
あの頃のソフトはほんとバケモノのように良く出来てたよ。
Fortran,PL/I,CPBOL,C
つか、ふつー PC-8001 で CP/M だろ?
メディアは8インチフロッピーw
お父さんのクオリティに感動!!
てか絶対WindowsPCより高い金出してるよな
特定のウィンドウ1〜3を指定した順に上位スタックするようにしたく・・・
※ウィンドウは他にも多数あるという前提で
Display *dsp;
Window win[3];
int w_num;
w_num = 3;
wim[0]=123; /* アプリ1のWindowID*/
wim[1]=456; /* アプリ2のWindowID*/
wim[2]=789; /* アプリ3のWindowID*/
/*IDは引数で渡されたものを数値変換したもの、または、*/
/*共有メモリから取得した値。ここの例では省略している*/
dsp = XOpenDisplay(display_name);
XRestackWindows(dsp, win, w_num); /*指定した順でウィンドウを再スタック*/
と、したのだがウィンドウがピクリとも動きませんでした。
どこが誤っているのか、なにか処理が足りないのかが判りません。
どなたかお判りになる方は居ませんか?
222 :
名無しさん@お腹いっぱい。:2008/01/14(月) 00:08:19
誰も居ない・・
>>221 適当なWindowManagerのソース見てみたら?
自分がオープンしたウィンドウじゃないから
うまく動かないんじゃね?
WindowManager用に用意されてる関数があったような
気がする。
224 :
名無しさん@お腹いっぱい。:2008/02/01(金) 23:06:22
PC8801ってデュアルCPUなんだよなw
FDD付はな
>>223 サンクス
WindowManagerみてみる。
いろいろ試してみたけど
CygwinでWindowManagerの介入阻止してやると
動きそうな幹事。
ただ、他のWindowManager上で試すとまったく
動かなかったりする。
よくわからん。
>>224 VictorのMSX2にもデュアルCPUなHC-95ってのがあったぞ。
>>222 あのね、子供がしたことに対して親が責任を取るというのは当然でしょ。
それと全く逆のことを考えればいいのよ。
歴史的な問題の場合、上の世代の過ちに対して、下の世代の人たちが責任を取らなくちゃいけないの。
なるほど、失敗した上の世代を吊るしていいということか
230 :
名無しさん@お腹いっぱい。:2010/02/08(月) 21:35:00
nanosleep()命令がコンパイルできません。
何か設定があるんですか?
man nanosleepの冒頭を嫁
No manual entry for nanosleep
>>233 スレタイよめ。
あと、古いSolarisだとnanosleep()は無かったと思うぞ。
さあ早く select()使ってnanosleep()を実装する仕事に戻るんだ、、
select()命令を使ってnanosleep()命令にする(?)って、そんな設定があるんですか?
select() のタイムアウトを nanosleep() の代わりに使うという話でしょ。
239 :
名無しさん@お腹いっぱい。:2010/03/24(水) 20:43:18
PASS= に/usr/gnu/binを適応してるのに
xmkmfのジョブが実施できません><
ヘルフお願いします
setコマンドで本当にそのパスを食ってるか
rehashしてみるとかwhich xmkmfしてみるとかさぁ
243 :
名無しさん@お腹いっぱい。:2010/03/27(土) 10:02:53
Solaris-7.0 x86 なんですけど、最新版に上げるための手順を教えてください。
7.0.?そんなVerあったっけか?
245 :
名無しさん@お腹いっぱい。:2010/09/06(月) 22:38:35
C言語を静的リンクするのに、オプションは -staticじゃ駄目なんですか?
何かエラーが出るんですけど
コンパイラ(リンカ)により異なる
248 :
名無しさん@お腹いっぱい。:2010/09/07(火) 19:33:35
>>246 その、コンパイラ(リンカ)により異なるオプションを付けても
エラーが出るんですけど
エラーメッセージを書かないのは、宗教上の理由からですか?
>>245 これ、なぜそうなるか知ってる人ならエラーメッセージ関係なしで答えられるよね
では答えてみたまえ。
Solaris10ではlibc.aが提供されていない。
だったらインストールCDからlibc.aを追加すればいいだけでは?
素人は引っ込んでろ。
開発者サポート以上でインスコするのは基本だろw
Solaris10で開発した事がない老害か? とっとと引退して判子押しでもやってろ。
>>255 SUNWがたくさんあり過ぎて探すのが大変です。-staticのSUNWを教えて下さい。
SUNWに詳しい人はこのスレにはいないんですか?
>>255と
>>257は最近の事情を知らない、死に損ないジジイなので無視しましょう。
Solaris10ではライブラリが提供されていないから、スタティックリンクは出来ません。
最近の事情を知らない=じじぃ確定なのか?
だから、回答のSUNWだけ教えろよ。能書きは不要。
そんなSUNWは存在しない。
みんないじわるだなぁ
>>245 SUNWarcに入ってるよw
>>265 感謝!!!!
SUNWを入れたら静的コンパイラできましたぁ!!!!
いやネタかと。普通わかるじゃん
268 :
名無しさん@お腹いっぱい。:2011/01/19(水) 16:21:58
tarファイルの中のファイルを削除したいのですが、solarisにはdeleteオプションが無いようなので、このオプションを使わずに削除するにはどうすればいいのでしょうか?
/usr/sfw/binにgnuのtar入ってなかったっけ?
一旦展開してアーカイブ作り直すとか
271 :
名無しさん@お腹いっぱい。:2011/01/24(月) 15:24:07
>>269 それは難しいと思います。
パイプで渡せば出来そうな気がするのですが。具体的にどう書けばいいのかわかりません
こんなんでいいのか?
$ ls
test1 test2 test3
$ tar cf - test* |perl -MArchive::Tar -e '$tar=Archive::Tar->new(\*STDIN);$tar->remov\
e("test1");$tar->write(\*STDOUT)' |tar tf -
test3
test2
>>272 ありがとうございます。今環境がないので今度客先のaixで確認してみます。
Solarisじゃなかったのか?
ちなみに268,271,273は私ではありません。
スレチですがAIXで動かすのが目的です。
自宅にはCent OSとFree BSDの環境があり、Cent OSでdeleteオプションが使えることは確認しました。
せっかくシェルスクリプトを書いたので、当面はそれを使うつもりですが、
Cent OSでperlは使えると思うので、272のコードも試してみようと思います。
>>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: 処理中にエラーが起きましたが、最後まで処理してからエラー終了させました
どこが間違っているのでしょうか?
「古文書のありかを突き止められません」も読めないゆとりか?
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
かな?
>>279 ありがとうございます。動いたようです。
しかし、会社では使えないんだろうな…
よそでやれよ。
282 :
名無しさん@お腹いっぱい。:2011/01/28(金) 17:01:41
./configureでインストールする時に毎回prefixオプションつけて場所指定するのめんどうなんだよね。
標準のインストール先は/usr/local以下になってると思うんだけど最初に環境変数与えておくとかで変更する方法あるかな?
よく訓練されたSolaris信者はupdate_drvコマンドとか使わないw
そうなんですか
訓練されてはない感じなものですみません。
vmwareのtoolがそれを必要としているんですが
デフォでインストールされてないのでどうしたものかと
そうですか入ってるですか・・・
04/01を使用してますがね。
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を読み込んでプログラムを分岐させる?のは
どうすればいいか、誰かわかります?
>>290 シグナルでやれば良いんじゃね
Ctrl-C で SIGINT のハンドラで処理をするってかんじで。
>>292 シグナルも考えましたが、Ctrl-Cじゃ駄目なんです><
HIT ANY KEY で、AとかBとか、どのキーが押された時でも
反応しないといけないんです。
tcgetattr,tcsetattr,cfmakerawあたりでできなかったっけ
書いた後だけど
cfmakerawがSolarisに無いんだな・・・
Google Code Searchでcfmakeraw使っているプログラムで
Solarisの場合はどうやってtermiosを設定しているか調べれば
それが答えだと思う
>>294,295
tcsetattr()で端末設定いじっても、stty rawコマンドと同様に
端末入力を行バッファしなくなるだけ(Enterなしに入力が返るだけ)で、
getchar()とかで入力を読みに行ったタイミングでしか
反応できないという問題の解決にはならないでしょ。
元質問はgetchar()を呼ばずに長時間処理を行なっているプログラムに対して、
どれかのキーを押した時に割り込み的にプログラムの流れを変えたいということ
みたいだから。
キーボード監視スレッド立てるだけだ。
>>296は頭悪いのか?w
スレッドじゃなくて別プロセスでシグナル投げても良いだろ
デバドラ書きましょうってことじゃなかったのかorz
301 :
名無しさん@お腹いっぱい。:2011/07/23(土) 18:36:04.66
Linuxの libc.so.* みたいに、
共有ライブラリなんだけど直接コマンドとして実行も可能なライブラリファイルって、
どうやってコンパイルして作るの?
Solaris関係ないだろw
>>302 Solaris関係あります。
Solarisで自作共有ライブラリ(libhoge.so.1とか)を作る時、
./libhoge.so.1で実行しても実行できるようにしたいんです。
共有ライブラリ実行して何がうれしいのかわからんw
すみませんが共有ライブラリを実行してうれしい方のみ回答をお願いします
いないみたいですのでシッポ巻いてお引き取り下さい
>>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となってよい。
最小の命令数の回答を正解とする。
・・・以上わかる方、できれば月曜日までにお願いします。
またコピペか
共有ライブラリの実行ってバージョンとか出すだけじゃなかったか? exec に細工してあって共有ライブラリののマジックならヘッダのバージョン読んできて表示とかなら簡単だろ。jar が直接実行出来るのも #! でインタプリタ呼び出すのも exec の機能なんじゃないの?
セグメンテーション違反がx86ではなく、SPARCに問題にあって発生
している場合 どうしたら実行できますか
一年半越しの質問に答えるのもなんだけど
--sharedだろうと無理矢理エントリポイントを指定しておけば動くんじゃないの
仕組みわかってれば予想できる事だと思うが
>>313 全く同じコードがMIPS(EB)では正常に動くので、
バイトーオーダの問題じゃないです。
事前情報が適当すぎ
四の五の言わずにデバッガかませばすぐわかるだろ
コピペくんにエサをやるとはw
安全側の判断として、SPARCのセグメンテーション違反である可能性が否定できない
ので、運転再開を認めないことになりました。
SPARCでセグフォルトする原因を調べなかったばかりに
x86/mipsで偶然動いていたバグを見過ごすわけだな。
質問です
Gccのコマンドラインをだーって入力するとコンパイル出来るじゃないですか
それにオプションをさーっと追加して静的コンパイルしたいんです
出来ますの?ちなみに-staticを付けてみましたが変な英語で止まりました
勿論ググりましたが、当方馬鹿なのでわかりません
サルでも分かるような回答を強く期待します
僕はこういう小バカにしたような書き方しか出来ませんが、凄く切実に知りたいです
さぁどうぞ↓
病院に帰れw
先日、他部署を交えて開かれた社内技術交換会でのこと。
先輩は自分が開発担当したあるソフトのプログラミング中に思いついたという
文字列処理の高速化アルゴリズムについて得意気に解説し始めた。
話し始めてしばらくして、隣の部署の人が口をはさんだ。
「それ、有名な番兵のアルゴリズムですよね。ウチでも昔はよく番兵を使いました。
でも番兵はマルチスレッドで使えないという欠点があるので、
今では番兵のアルゴリズムを使うことは禁止してます。
これ使われると発見しにくいバグになって困るんですよねぇ…
ところで今日のお話というのは、
番兵のアルゴリズムをマルチスレッドに対応させるような方法か何かですか?」
そのあと先輩の話は支離滅裂になり、何の技術交換会だったのか
よく覚えていない…
このあたりをまじめにやってない技術者をあつめて
「データ構造とアルゴリズム」みたいな本を通読
する勉強会をすべきなんだろうな。
>>319 makeコマンド(Makefile)を勉強すれば幸せになるかも。
なんでマルチメディアで番兵使っちゃダメなの?
325 :
名無しさん@お腹いっぱい。:
SolarisでUNIXを覚えた君たちへ
君たちが悪いわけじゃないんだよ
君たちが覚えたSolarisの将来が無かっただけ
当時の社会が悪かっただけ
君たち一人ひとりが悪いわけじゃないんだよ
だから自分を責めないで
社会と向き合ってください
そうすればきっと気が付くはず
君たちのSolarisの知識が無用なのだということに
君たちの存在自体が社会の足枷だということに