goo blog サービス終了のお知らせ 

日々適当

hibitekitou

Mac版Mayaのライセンス

cg |2016-09-07
おそらくMac版に限らない話なのだろうけど、Mac版で起こっていることなのでということで。
以下のリンク先の表題のような問題が発覚しました。

Mac版で参照するライセンスサーバを変更しても、変更前のサーバを参照してしまう [Autodesk Knowledge Network]

このページはボンデジさんのサポートに教えてもらいました。
ホームディレクトリに .flexlmrc ってファイルが作られるのだそうです。ここにADSKFLEX_LICENSE_FILEって値が書かれている…
これが原因のようです。

ということで、確かにそのファイルは私のホームディレクトリに存在しておりました。

例えば既にある ~/.flexlmrc を削除してMaya 2015を起動させると

ADSKFLEX_LICENSE_FILE=/Applications/Autodesk/maya2015:/var/flexlm

という中身の .flexlmrc ができ上がります。これ見ると単純に Maya のライセンスファイルが置かれている場所をADSKFLEX_LICENSE_FILEって環境変数に指定しているだけなんですよね。

ライセンスファイルは /Applications/Autodesk/maya2015 にはありませんので、/var/flexlm を見に行っているのだと思います。そこには Maya.lic という名前でライセンスファイルが存在しており、中身は

$ more /var/flexlm/Maya.lic
SERVER MacMiniSrv.local 0
USE_SERVER

となっております。
ここのサーバーを指し示す部分を書き換えてみます(MacMiniSrv.local→MacMiniSrvTEST.local ちなみにそんなマシンは存在しない)。

$ more /var/flexlm/Maya.lic
SERVER MacMiniSrvTEST.local 0
USE_SERVER

これで起動させると、(その名前のサーバーはネットワーク上に無いから)起動しないけど、いつまでも起動しようと(Mac版だから)DockでMayaのアイコンがはね続けます。やがてタイムアウトしましたが、そこまで結構時間がかかります。
この状態で ~/.flexlmrc を削除します。
それでMayaを起動させようとするとすぐにNetwork License Not Available と出て来ます。
してみると、 ~/.flexlmrc の役割は、というかADSKFLEX_LICENSE_FILEの役割は、たんにライセンスファイルの場所をさししめすって物じゃないのでしょうか。何処かに値をキャッシュするとか?

よく分かりません。

しかして、この値を元にググりますと、licファイルへのパスを示すのではなく、直接サーバーを指定するのがスタンダードのようです。

環境変数 ADSKFLEX_LICENSE_FILE を使用してライセンスサーバを指定する方法 [Autodesk Knowledge Network]

ADSKFLEX_LICENSE_FILE=@server1;@server2;@server3

みたいな。なので、/var/flexlmにあるlicファイルを適当にリネームし(ライセンスファイルを無効にして)、.flexlmrc の中身を

ADSKFLEX_LICENSE_FILE=@MacMiniSrv.local

というようにしてみると、確かにMayaが起動してきました。
もちろん、Maya.env に同じ値を書いてもよいのだと思います。

…これからのライセンスファイルの指定の仕方のスタンダードは何になるのでしょうか。

ちなみに、Maya 2017 は ~/.flexlmrc を削除して /var/flexlm/Maya.lic が存在している状態で起動させると、Network License Not Available となりやがります。Maya 2015ならば起動時に自動的につくられる ~/.flexlmrc は出来ません(起動したならつくられるのでしょうか)。そこで

ADSKFLEX_LICENSE_FILE=/var/flexlm

と書いた ~/.flexlmrc を手動で用意してやります。すると、Mayaが起動してきます。
どうも、ADSKFLEX_LICENSE_FILE が無いとMayaはライセンスを取得できなくなったようです。
2016.5からライセンスの形態の選択はMayaのインストール時ではなく、インストールしたMayaを初めて起動する時になりました。それと何か関係があるんですかね。

よく分かりません。

けど、とりあえずライセンス取得関係の問題が起こった時、~/.flexlmrc に注意するという事は間違いなさそうです(もしくはどこかでADSKFLEX_LICENSE_FILEが指定されているか)。
コメント ( 0 )|Trackback ( )
 
コメント(10/1 コメント投稿終了予定)
 
コメントはありません。
コメントを投稿する
ブログ作成者から承認されるまでコメントは反映されません
 
名前
タイトル
URL
コメント
コメント利用規約に同意の上コメント投稿を行ってください。

数字4桁を入力し、投稿ボタンを押してください。