2011-08-18 11 views
19

次のコマンドが機能しないのはなぜですか?Cmake list-getコマンド

SET(MY_LIST a b c d) 
LIST(GET ${MY_LIST} 0 HEAD) 
MESSAGE("HEAD = ${HEAD}") 

私はそれがHEADaを割り当てる代わりに、私はNOTFOUNDを取得しています。

${MY_LIST}を二重引用符で囲み、インデックスを0ではなく1に変更しました(誰かがそれを行う理由はわかりませんが、試しても傷つきませんでした)。

答えて

28

list commands 2番目の引数、すなわち:

set (MY_LIST a b c d) 
list (GET MY_LIST 0 HEAD) 
message ("HEAD = ${HEAD}") 
+0

恐ろしいようunsubstituted変数を必要とします。私は(まだ)ドキュメントでそれを見ていませんでした。ありがとう! – freitass

+1

ドキュメントからはっきりと分かりません。 CMakeのドキュメントに使用例が含まれていないことは悪いことです。 :-( – Ignitor

+0

驚くほど不明です。光を放出してくれてありがとう –