Upgrade to Pro — share decks privately, control downloads, hide ads and more …

SwiftでC言語のライブラリを使おう

 SwiftでC言語のライブラリを使おう

Yusuke Ito

March 07, 2016
Tweet

More Decks by Yusuke Ito

Other Decks in Programming

Transcript

  1. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    4XJGUͰ$ݴޠͷ
    ϥΠϒϥϦΛ࢖͓͏
    ϦʔυΞʔΩςΫτ

    ҏ౻༞ี :VTVLF*UP
    !OPWJ@
    നϠΪίʔϙϨʔγϣϯ
    5PLZP4FSWFS4JEF4XJGU.FFUVQ


    View Slide

  2. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE

    View Slide

  3. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    αʔόʔαΠυ
    4XJGUΤϯδχΞืूதʂ

    ΋ͪΖΜɺJ04ɾ"OESPJE΋

    View Slide

  4. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    $ݴޠͷϥΠϒϥϦ
    w .PEVMFNBQΛੜ੒ͯ͠ϔομʔΛಡΈࠐΉ
    w 4XJGUଆ͔Β͸JNQPSUͰ͖ΔΑ͏ʹͳΔ
    w ίϯύΠϧ࣌ʹMJCYYYͱϦϯΫ͢Δ
    w ࠓޙ͸$ $ίʔυ΋41.ͰϏϧυՄೳʹ 4&


    View Slide

  5. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    ࢖͏ϝϦοτ
    w ७4XJGUͷϥΠϒϥϦ͸·ͩগͳ͍
    w $ͷࢿ࢈͕࢖͑Δ
    w ଟ͘࢖ΘΕ͍ͯΔͳΒ҆ఆ͍ͯ͠Δ ͸ͣ

    w όΠϯσΟϯάͷඞཁແ͠ ϔομʔͷΠϯϙʔτͷ
    Έ


    View Slide

  6. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    ϥΠϒϥϦΛ४උ
    w ࠓճ͸*NBHF.BHJDLΛྫʹ
    w CSFXJOTUBMMJNBHFNBHJDL 049

    w VTSMPDBMPQUJNBHFNBHJDLʹΠϯετʔϧ
    ͞ΕΔ

    View Slide

  7. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    4XJGUʹJNQPSU
    w .PEVMFNBQΛ࡞੒
    w 4XJGUଆ

    JNQPSU$+1&(

    module CJPEG [system] {
    header "/usr/include/jpeglib.h"
    link "jpeg"
    export *
    }

    View Slide

  8. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    ϥΠϒϥϦͷ࢖͍ํΛௐ΂Δ
    w *NBHF.BHJDL͸$ͷΠϯλʔϑΣʔε͕ඪ४
    w $ͷΠϯλʔϑΣʔε͕ແ͍ $͔͠ͳ͍
    ৔߹͸$Ͱ
    ϥοϓ͢Δඞཁ͕͋Δ
    w IUUQXXXJNBHFNBHJDLPSHTDSJQUNBHJDL
    XBOEQIQ
    w IUUQNBHJDLXBOECMPHGDDPN
    w 2JJUBɾ(PPHMFͳͲ

    View Slide

  9. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    9DPEF͔Β࢖͏
    w $PNNBOEMJOF"QQMJDBUJPO
    w IUUQTHJUIVCDPN;FXP4XJGU$PNNBOE-JOF
    "QQMJDBUJPO5FNQMBUF͓͢͢Ί
    w #VJME4FUUJOHT͔Β4XJGU*NQPSU1BUIΛઃఆ
    w 43$3005
    .PEVMFT$+1&(NPEVMFNPEVMFNBQ
    ͷͱ͖ɺ

    43$3005
    .PEVMFT

    View Slide

  10. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    ϥΠϒϥϦΛಈ͔ͯ͠ΈΔ
    w EFNP

    View Slide

  11. $PQZSJHIU4IJSPZBHJ$PSQPSBUJPO"MMSJHIUTSFTFSWFE
    ࢓্͛
    w NPEVMFNBQͷϦϙδτϦΛެ։͠Α͏

    -JOVY TXJGUCVJME༻

    IUUQTHJUIVCDPNOPWJ.BHJDL8BOE049
    w 'SBNFXPSLʹ͠Α͏

    9DPEFˠ/FX1SPKFDUˠ$PDPB'SBNFXPSL
    w (JUIVCʹެ։͠Α͏

    IUUQTHJUIVCDPNOPWJ4XJGU.BHJDL8BOE

    View Slide