英語嫁
Sunの商用コンパイラでコンパイルされてるけど
pathに無いね、と読めますね。
Forteをインストールする工程が漏れてます。
買ってインストールしてください。
>928
まずは英語よめ。
ライブラリ関係でハマることがあるから、コンパイル時に使ったコンパイラ
つまりSunのコンパイラを入れたほうがいい。
いまはForteという名前じゃないかも、SunONEナントカになってるかもな。
>>919 何をやってどううまくいかないのか、それを書けば誰か教えてくれるかもね。
そうじゃないならエスパーの降臨を待つか。
935 :
名無しさん@お腹いっぱい。:04/10/24 01:45:26
>>933 Solaris 9 4/04 Companion CDのXEmacs-21.4.14を単純に選択しただけで、
自分でコンパイルしてインストールしてインストールしたのではなかった
ので質問しました。
コンパイルしてインストールした方が楽なような気がしてきた。
XEmacs使うためにコンパイラを買うのもバカバカしいと思うが・・・
いまどき XEmacsなんて Windows や Linux ではバイナリで配布してて
しかも .emacs.el まで丁寧に設定した状態になってたりする。(ちょっと違うけど meadowとか)
そんななかで、わざわざ Solaris で XEmacs をインストールしてインストールしようと
いうのだからよほど XEmacs が使いたいのにちがいない。
XEmacs は xface や compat 等の依存ライブラリがおおいため、いちいち自分でコンパイルしていると
Sun Studioを買うぐらいの人件費ぶんは、どうしても時間がかかってしまう。
それだったら、Sun Studio を買うのがかえって安い。
もしくは Windos や Linux で XEmacs ヲ実行するか。
warning であって error でないのなら無視しちゃえばいいんじゃ?
941 :
名無しさん@お腹いっぱい。:04/10/24 18:59:18
>927
ありがとう。
system(3C)はvforkを使っているということですね。
マルチスレッドでsystem(3C)の置き換え(自前でsystem関数の代替関数を作成)
をする場合には、fork()-execve()による単純な置き換えでいいのでしょうか?
fork()、execve()の両方とも、Async-Signal-Safeで問題ないとは思うんですが、
自分で実装してみたところ、system(3C)より多少ノロい感じがします。
shを経由しないで起動しているので、早くなるかなと思ったんですが、どうも
うまくいかないようです。
また、マルチスレッドから非同期に自分で作った代替のsystem関数を使うと
たまにエラーで返るときがあります。たぶん、同時に代替のsystem関数を使った
ときにfork()かexec()がEINTRで返っているんだろうとは思うんですが。
どうもイマイチよくわかりません。
また、Solaris9ではpopen(pclose("xxx",w))な感じで置き換えができるっぽいんですが、
Solaris8では無理みたいです。
何か簡単に置き換える方法はあるでしょうか?
>941
・ 速度のことはよく分りません。forkを軽くする実装の1つがvforkなので、
状況によりsystemの方が速いのはうなずけますが。
起動対象がフルパス指定バイナリの場合どうかとか、起動側プロセスのサイズにより
どうかとか、検証ポイントはいくつかあります。
・ popen(pclose("xxx",w)) ではなく、 pclose(popen("xxx",w)) かと。
いずれにせよ、popenはsystemと同じUNSAFEです。
・ forkではEINTRは戻らないはず。どこでどんなシグナルが戻っているのかを
完全に特定する必要があります。
事象を再現できるなら、truss等で特定できます。
OTTOのうにくす本舗にBLADE1000のケース(電源&FDDつき)が3000円で売ってた。
PC/ATマザボ突っ込んでSolaris入れたいが置き場所ないな。
あー誤爆った。安いぞ!スレに書いたつもりだったんだけどな。
Sun Netra i 544って裏に書いてある古い機械を戴いたのですが
Linuxあたりをインストールすることは可能なのでしょうか?
つまらない質問で本当に申し訳けございません。m(__)m
946 :
名無しさん@お腹いっぱい。:04/10/25 19:15:14
勿論可能
>941
-mt だと fork(2) は全スレッドコピーになります。
んだもんだから、fork1(2) を使ってみると、多少は改善するかもしれない。
fork1(2) だと、発行スレッドのみをコピーして他は廃棄しますので若干速い。
vfork(2) も fork1(2) 的な動作をするようになっている(らしい)ので、
system(3C)と張り合うなら、fork1(2) にして確認する必要があります。
(じゃあ、なんで system(3C) は fork1(2) じゃなくて危険な vfork(2)
使うんだ?というとそれはもう中の人に聞くしかない)
ただし、-lpthreadでやってるなら、もうすでに fork1() 動作なので、
速度変わらないと思う。
あと942さんも言ってるけど、Solaris で開発するなら truss の使い方は
覚えておくといいです。ていうか必須。
948 :
名無しさん@お腹いっぱい。:04/10/25 23:09:17
質問。俺の買った中古sparcに100BASE-TXカードが付いてるのだが
それの100BASE-TXと書かれた通常のコネクタの横に MII と書かれて
いるものがある。いったい MII って何?
950 :
948:04/10/26 08:51:21
THX
参照サイト読んだけど,どういう場面で使うのかよく分からん。とにかく
俺の環境に関係なさそうなことは分かった。
>>900 メモリかCPUな気がする。
ハード屋なんで何度か見てきた。
952 :
名無しさん@お腹いっぱい。:04/10/27 00:45:57
最近流行の USB 接続の HDD ですが
USB なモデルの Sparc マシンにつないで動作しますか?
OS はSolaris 9で
>>952 マウントに手間が掛かるけど出来るらしい。
・・・という情報を見たことがある。
WindowsにつなげてたUSB HDDエンクロージャを接続してみた。(Sol9 4/02 on SB100)
Oct 27 02:39:03 host unix: USB-device: storage@1, scsa2usb1 at bus address 4
Oct 27 02:39:03 host unix: DMI USB 2.0 Storage Adaptor 0B02011C05980E8B
Oct 27 02:39:03 host unix: scsa2usb1 is /pci@1f,0/usb@c,3/storage@1
Oct 27 02:39:03 host unix: /pci@1f,0/usb@c,3/storage@1 (scsa2usb1) online
Oct 27 02:39:07 host unix: sd2 at scsa2usb1: target 0 lun 0
Oct 27 02:39:07 host unix: sd2 is /pci@1f,0/usb@c,3/storage@1/disk@0,0
Oct 27 02:39:07 host unix: WARNING: /pci@1f,0/usb@c,3/storage@1/disk@0,0 (sd2):
Oct 27 02:39:07 host Corrupt label; wrong magic number
Oct 27 02:39:07 host unix: /pci@1f,0/usb@c,3/storage@1/disk@0,0 (sd2) online
まず、刺してみてここまでがdmesgに出る。/dev/r?dsk/以下も一応更新される。
# ls /dev/rdsk/c2t0d0s?
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s0 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:a,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s1 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:b,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s2 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:c,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s3 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:d,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s4 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:e,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s5 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:f,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s6 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:g,raw
lrwxrwxrwx 1 root root 55 Oct 27 02:39 /dev/rdsk/c2t0d0s7 -> ../../devices/pci@1f,0/usb@c,3/storage@1/disk@0,0:h,raw
んが、実際にアクセスしてみるとI/O Error。この時dmesgには以下のメッセージ。
Oct 27 02:45:13 host unix: WARNING: /pci@1f,0/usb@c,3/storage@1/disk@0,0 (sd2):
Oct 27 02:45:13 host Corrupt label; wrong magic number
"mount -F pcfs /dev/dsk/c2t0d0s0:c /mnt"とかやっても同じ。
SCSI HDDと同じ扱いっぽいので、SPARC SolarisではSunのディスクラベルを
作らないとダメなのかもしれない。x86 Solarisならcmdkドライバが
x86パーティションを認識してくれるので、こういう問題は出ないはず(未確認)。
# format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
...
2. c2t0d0 <drive type unknown>
/pci@1f,0/usb@c,3/storage@1/disk@0,0
おお。でも、partitionコマンドまでは恐くて試せず。
# cfgadm -l | grep usb
usb0/1 usb-storage connected configured ok
usb0/2 usb-kbd connected configured ok
usb0/3 unknown empty unconfigured ok
usb0/4 usb-mouse connected configured ok
# prtconf -D (抜粋)
SUNW,Sun-Blade-100
pci, instance #0 (driver name: pcipsy)
usb, instance #0 (driver name: ohci)
mouse, instance #2 (driver name: hid)
keyboard, instance #3 (driver name: hid)
storage, instance #1 (driver name: scsa2usb)
disk, instance #2 (driver name: sd)
実験が終わったら、"cfgadm -c disconnect usb0/1"で切り放す必要あり。
つーことで、I/O Errorを出さないような方法を探すか、あるいはformatで
パーティショニングまでやっちゃうかのどちらかかなと。
USBメモリは使えた希ガス >SunOS5.8@x86
ああ、そうかsparcバージョンはPCFS認識しないんだったな。
959 :
名無しさん@お腹いっぱい。:04/10/27 15:53:15
openpkg.org 使ってる人いますか?
pkgsrc-bootstrap と比べてどんなかんじですか?
960 :
名無しさん@お腹いっぱい。:04/10/27 21:46:39
Solaris 8 2/02
Xsun サーバを表示専用で使用
2 つの新しいオプションによって、キーボードやマウスなしで Xsun サーバを実行可能。
これにより Xsun サーバは以下の方法で使用可能。
・表示専用
・マウスおよびキーボード以外の代替入力装置と共に使用
・表示装置を使用せず、画面外描画をハードウェアで高速化する目的でフレーム
バッファを駆動
表示専用サーバとして起動するための具体的な手順がわからないのですが、誰かわかる?
sparc版なのかx86版なのか。
962 :
名無しさん@お腹いっぱい。:04/10/28 01:40:29
キーワードだけ教えてやると
xhostとtelnetとsetenvぐらい
963 :
960:04/10/28 04:20:02
>>958 pcfsを、じゃなくてfdiskパーティションを、がより正確かも。
965 :
名無しさん@お腹いっぱい。:04/10/28 06:58:56
/etc/hostsに
192.168.0.1 host-a
192.168.0.2 host-a
と書いた場合、host-aへの接続は192.168.0.1のホストと
192.168.0.2のホストとで負荷分散を行ってくれますか?
それとも、上に書いたものだけが有効になるのでしょうか?
966 :
名無しさん@お腹いっぱい。:04/10/28 08:39:01
>>965 うえのしかつかわない。
DNSつかえ。
それかロードバランサかえ
host-a IN A 192.168.0.1
host-a IN A 192.168.0.2
969 :
941:04/10/28 22:34:07
>942
>947
レス、ありがとう。
system(3C)には及ばないけど、なんとか実装できました。
-lpthreadでやってたので、速度は速くならなかったけど、
要求レベルより遅いことはなかったので、なんとかなりました。
Solaris9ではSafeもしくはMT-SafeなものがSolaris8では
Unsafeだったりして、結構気を使いますね。
MT-Levelを気にせずコーディングしていたため、
ハマってしまった。
trussを使ってみましたが、まだあんまりよくわかりません。
とりあえず、システムコールに分解してくれるということは
わかったのですが、それをどう生かせばいいか、
よくわかりません。
まだまだ精進が必要ってことか。。。
970 :
名無しさん@お腹いっぱい。:04/10/29 15:51:45
Megaraid300にsolaris8のドライバはどこで拾えばよろしいですか?
現在Solaris8を使用しています。ずっとTelnetでログインできていたのですが、
別の人がリモートでIPを変更したら、shutdownした後にTelnetでログインできなくなってしまいました。
クロスで接続すると、pingは返ってきます。
Ipを変更しただけでそのようなことは起こってしまうのでしょうか?
しょぼい質問ですみません。
よろしくお願いします。
>>971 >Ipを変更しただけ
まず、これが怪しいワケだが。
>>973 コンソールも使用できなくなっていて、モニタも表示できません。
実際にあがっているのかどうかすら確認できない状態です。
メンドイから STOP+A して boot -s で。
コンソール駄目なの?まじで?
Stop+Nで戻せない?
>>970 日本語でお願いします。
>>971 >>クロスで接続すると
どういう意味?
普通にLANにつないだ状態だとだんまりってこと?
まあ、
>>975でだめだったら
シリアルでつないでbrk送ってみる。
それでもだめなら電源切れ。
>>974 IPを変更しただけでコンソールが使えなくなるって
どんな状況だよ!