2011-03-16 4 views
2

これは非常に奇妙で、私のシステムはこの問題を抱えていないと思います。私はcygwinを使用しているWindows XPシステム上にいる。私は「emacsの」に設定された環境変数$ P4EDITORを持っていますが、私はP4が提出行うとき、私はエラーを取得する:私はviにそれを設定したときにP4が私のためにEmacsを公開しないのはなぜですか?

CreateProcess: "emacs" ".\t10640t25.tmp": The system cannot find the file specified.

Client side operation(s) failed. Command aborted.

同じことであるエラーを除いて(たまたまviの代わりにemacs)。私が$ P4EDITORを完全に解除すると、提出情報は何とか私のためにメモ帳++で開かれます。本当に奇妙なことですが、私が実際にそこに置いた説明を保存して提出することはできません。

何らかの理由で提出情報を保管するために使用するtmpファイルを作成、オープン、保存することができないP4自体が問題であるようですが、その問題は私を超えています。どのようにしてp4をEmacsで再び開くようにするか、少なくとも私は何とかコマンドラインで何かを提出させるためのアイデア?私はかなり固執している。

答えて

4

これを実証しました。 Perforceにはcygwin用の特別なクライアントがあります。私はhttp://www.perforce.com/perforce/downloads/otherlist.htmlからダウンロードし、プログラムファイルのp4.exeをそれに置き換えました。他の誰かがcygwin/p4の問題を抱えている場合は、cygwinクライアントを入手することを強くお勧めします。

+0

それは理にかなっています。さらに考えてみると、P4がDOSパスをCygwinのemacsに渡すという問題がありました。 Cygwinは一般的にDOSパスをサポートしていますが、emacsは独自のパス解析を行い、 'C:\ tmp \ bla'は'/'で始まらない相対パスであると判断します。したがって、P4から別のファイルにアクセスしようとしました。 'ナノ'が働いたかもしれない。 – ak2

0

しばらくの間、Cygwinのデフォルトの~/.bashrcは、デフォルトのWindows一時ディレクトリから不要なアクセス権を継承したパッチ適用ファイルの問題に対処するために、TMPおよびTEMP変数を設定解除します。それは、(何らかの間違って)それらの変数が常に設定されることを期待する非Cygwinプログラムを大きく混乱させる可能性があることが判明しました。 P4がその1つのように見えます。問題のある線を取り除くには、~/.bashrcを編集してください。

+0

私は、/ tmpと/ cygdrive/c/tempの両方に設定しようとしましたが(私はテストするためにそのフォルダを作成しました)、どちらの場合もまだエラーが発生しています: 書き込み用:C: \ temp \ t9512t7.tmp:システムは指定されたパスを見つけることができません。 cygwinなどでP4で変更する必要がある設定がありますか? – Eli

+0

私は分かりません。私はまだTMPやTEMPを設定したり解除したりしないで、デフォルト値( 'Local Settings \ Temp'やWindowsのホームディレクトリにあるもの)にしておきます。 – ak2

+0

助けてもらえませんでしたが、私はちょうどそれを理解したと思います。私の次の記事を見てください。 – Eli

関連する問題