BinDeps.jl を活用する

BinDeps.jl を活用する

6d356017749662a0c75ca192c7c88ed6?s=128

Ryuichi Yamamoto

September 27, 2014
Tweet

Transcript

  1. #JO%FQTKM׾崞欽ׅ׷ 㿊劤׶ױְֲ׍(@r9y9) 2014/09/27 JuliaTokyo #2

  2. $$ ٓ؎ـٓٔך ٓحػ٦׾⡲׶׋ְ

  3. ⡲׶ת׃׋ •  갈㡮⥋〾Ⳣ椚خ٦ٕؗحز415, –  IUUQTHJUIVCDPNSZ415,KM •  갈㡮ⴓ匿㢌䳔さ䧭ءأذي803-% –  IUUQTHJUIVCDPNSZ803-%KM

  4. ָծ知⽃ח遤ֻכ׆׮זֻ˘ •  Cٓ؎ـٓٔך⣛㶷ꟼ⤘盖椚׾וֲׅ׸לְְַ ׻ַ׵זְ •  ⣛㶷ٓ؎ـٓٔךؽٕسכEFQTCVJMEKMד遤 ֲ׵׃ְָծ聽䗰ך剅ֹ倯ָⰕ䒭سًُؗٝز חזְ…

  5. EFQTCVJMEKMךאך剅ֹ倯

  6. ِ͑٦ؠ٦חתַׇ׷ (empty) deps/build.jl •  ⡲׷⩎כ嚂 •  ׋׌׃ծ⢪ֲ⩎כ荈⵸דٓ؎ ـٓٔ׾欽䠐ׅ׷䗳銲ָ֮׷ •  $6%"KM瘝ծ⣛㶷ꟼ⤘ך鍑寸

    ָꨇ׃ְ㜥さחכֿךػة٦ ٝ׮֮׷ ⡦׮剅ַזְ
  7. .BLFMFװءٕؑ׾剅ֻ run(`make`) or run(`./build.sh`) deps/build.jl •  知⽃ז$؝٦سךؽٕسחכ 䩛鯪ד⤑ⵃ •  傀㶷ך.BLFMFװؽٕسأؙ

    ٔفز׾⢪ְת׻ׇ׷ ⢽ #FBNE+VMJBQDBIBTI SZ4JNQMF#JOBSZ.BOBHFNFOU&YBNQMFKM
  8. #JO%FQTKM׾⢪ֲ Using BinDeps @BinDeps.setup # 依存関係の定義 libfoo = library_dependency(“libfoo”) ...

    deps/build.jl •  ֶ׉׵ֻ♧殢知⽃ז倯岀דׅ •  BQUHFU ZVN CSFX SQN  QBDNBO瘝ծ㢳ֻךػح؛٦آ 盖椚خ٦ٕ׾؟ه٦ز •  傀㶷ךػح؛٦آ׾怒׷ꣲ׶ծ رؿ؋ؙز涸ז⽩韋 •  )JHIMFWFM MPXMFWFM⚕倯ך؎ ٝةؿؑ٦أָ֮׷ךָ葺ְה ֿ׹
  9. #JO%FQTKM⢪欽⢽ ػح؛٦آوط٦آٍ٦׾⢪ֲ㜥さ using BinDeps @BinDeps.setup libsndfile = library_dependency("libsndfile") provides(AptGet, "libsndfile1-dev",

    libsndfile) @BinDeps.install [:libsndfile => :libsndfile] ؝ٝذؗأزךⴱ劍⻉ ⣛㶷ꟼ⤘ך㹀纏 فٗغ؎تך㹀纏 ؎ٝأز٦ٕ AptGet, Yum, Homebrew, etc. build_highlevel.jl (Gistのリンク)
  10. #JO%FQTKM⢪欽⢽ ا٦أַ׵ؽٕسׅ׷㜥さ provides(SimpleBuild, (@build_steps begin GetSources(libsndfile) @build_steps begin ChangeDirectory(srcdir) `./configure

    --prefix=$prefix` `make` `make install` end end), libsndfile, os = :Unix) •  ؽٕسך؝وٝس ׾荈ⴓד剅ֻֿה ׮〳腉 build_lowlevel.jl (Gistのリンク)
  11. תה׭ •  غ؎شٔך⣛㶷ꟼ⤘盖椚כծ#JO%FQTKM׾⢪ֲה知 ⽃חדֹ׷ •  傀㶷ךػح؛٦آ׾怒׷ꣲ׶ծرؿ؋ؙز涸ז⽩韋 •  #JO%FQTKMך鑫׃ְ⢪ְ倯כծ#JO%FQTKMך 3&"%.&ה傀㶷ך剣欽ػح؛٦آ׾׀鋮ֻ׌ְׁ 䖓罏ֶׅׅ׭

    •  ˟אה鎉ְת׃׋ָⱔ锑זךד׀✪䪫ֻ׌ְׁ