ナレッジ
エラー「Unicode clients require a unicode enabled server」が発生します
ご質問
コマンドを実行しようとしたところ「Unicode clients require a unicode enabled server.」が出力され実行できません。原因と対応方法を教えてください。
以下のいずれかの方法で解消できます。環境に応じて選択してください。
1.クライアントのP4CHARSETを"none"に変更する
2.サーバをunicodeモードにする
詳細
P4CHARSETはunicodeファイルの文字コードを設定するコマンドです。
サーバが非unicodeモードの場合は、P4CHARSETを実行して文字コードを設定してはいけません。(またはnoneと設定されている必要があります)
このエラーは、P4CHARSETで文字コードが指定されている(またはautoになっている)のに、Perforce Helix Coreサーバが非Unicode モードであるために出力されます。
手順
■ クライアントのP4CHARSETをnoneに変更する
以下のいずれかの方法で設定します。
①実行コマンド:管理者権限
p4 set -s P4CHARSET=none
②実行コマンド:ログインユーザのみ
p4 set P4CHARSET=none
■ サーバをunicodeモードにする
サーバをunicodeモードにするには、次のコマンドを実行します
ご確認ください
・unicodeモードに変換したサーバは非unicodeモードには戻せません
・メタデータ(ファイル名・ディレクトリ名・コメント等)にUTF−8以外の日本語(Shift-JIS、EUCJP 等)の情報が既に登録されている場合、登録情報の修正が必要となります。『Unicodeモード起動でエラーが発生します』も併せてご参照ください。
unicodeモードに変換
p4d -r <P4ROOTのパス> -xi