Does Cython compile imported modules as part of the binary?












3















I'm just now reading into cython and I'm wondering if cython compiles imported modules as part of the executable of if you still need to have the modules installed on the target machine to run the cython binary.










share|improve this question























  • Possible duplicate of How to compile my python code in cython with external python libs like pybrain

    – ead
    Nov 22 '18 at 10:29











  • Not the same question.

    – Steven Lutz
    Nov 22 '18 at 10:30
















3















I'm just now reading into cython and I'm wondering if cython compiles imported modules as part of the executable of if you still need to have the modules installed on the target machine to run the cython binary.










share|improve this question























  • Possible duplicate of How to compile my python code in cython with external python libs like pybrain

    – ead
    Nov 22 '18 at 10:29











  • Not the same question.

    – Steven Lutz
    Nov 22 '18 at 10:30














3












3








3








I'm just now reading into cython and I'm wondering if cython compiles imported modules as part of the executable of if you still need to have the modules installed on the target machine to run the cython binary.










share|improve this question














I'm just now reading into cython and I'm wondering if cython compiles imported modules as part of the executable of if you still need to have the modules installed on the target machine to run the cython binary.







python cython






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 21 '18 at 8:03









Steven LutzSteven Lutz

155313




155313













  • Possible duplicate of How to compile my python code in cython with external python libs like pybrain

    – ead
    Nov 22 '18 at 10:29











  • Not the same question.

    – Steven Lutz
    Nov 22 '18 at 10:30



















  • Possible duplicate of How to compile my python code in cython with external python libs like pybrain

    – ead
    Nov 22 '18 at 10:29











  • Not the same question.

    – Steven Lutz
    Nov 22 '18 at 10:30

















Possible duplicate of How to compile my python code in cython with external python libs like pybrain

– ead
Nov 22 '18 at 10:29





Possible duplicate of How to compile my python code in cython with external python libs like pybrain

– ead
Nov 22 '18 at 10:29













Not the same question.

– Steven Lutz
Nov 22 '18 at 10:30





Not the same question.

– Steven Lutz
Nov 22 '18 at 10:30












1 Answer
1






active

oldest

votes


















2














The "interface" of a Cython module remains at the Python level. When you import a module in Cython, the module becomes available only at the Python level of the code and uses the regular Python import mechanism.



So:




  1. Cython does not "compile in" the dependencies.

  2. You need to install the dependencies on the target machine.


For "Cython level" code, including the question of "cimporting" module, Cython uses the equivalent of C headers (the .pxd declaration files) and dynamically loaded libraries to access external code. The .so files (for Linux, DLL for windows and dylib for mac) need to be present on the target machine.






share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53407590%2fdoes-cython-compile-imported-modules-as-part-of-the-binary%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    2














    The "interface" of a Cython module remains at the Python level. When you import a module in Cython, the module becomes available only at the Python level of the code and uses the regular Python import mechanism.



    So:




    1. Cython does not "compile in" the dependencies.

    2. You need to install the dependencies on the target machine.


    For "Cython level" code, including the question of "cimporting" module, Cython uses the equivalent of C headers (the .pxd declaration files) and dynamically loaded libraries to access external code. The .so files (for Linux, DLL for windows and dylib for mac) need to be present on the target machine.






    share|improve this answer




























      2














      The "interface" of a Cython module remains at the Python level. When you import a module in Cython, the module becomes available only at the Python level of the code and uses the regular Python import mechanism.



      So:




      1. Cython does not "compile in" the dependencies.

      2. You need to install the dependencies on the target machine.


      For "Cython level" code, including the question of "cimporting" module, Cython uses the equivalent of C headers (the .pxd declaration files) and dynamically loaded libraries to access external code. The .so files (for Linux, DLL for windows and dylib for mac) need to be present on the target machine.






      share|improve this answer


























        2












        2








        2







        The "interface" of a Cython module remains at the Python level. When you import a module in Cython, the module becomes available only at the Python level of the code and uses the regular Python import mechanism.



        So:




        1. Cython does not "compile in" the dependencies.

        2. You need to install the dependencies on the target machine.


        For "Cython level" code, including the question of "cimporting" module, Cython uses the equivalent of C headers (the .pxd declaration files) and dynamically loaded libraries to access external code. The .so files (for Linux, DLL for windows and dylib for mac) need to be present on the target machine.






        share|improve this answer













        The "interface" of a Cython module remains at the Python level. When you import a module in Cython, the module becomes available only at the Python level of the code and uses the regular Python import mechanism.



        So:




        1. Cython does not "compile in" the dependencies.

        2. You need to install the dependencies on the target machine.


        For "Cython level" code, including the question of "cimporting" module, Cython uses the equivalent of C headers (the .pxd declaration files) and dynamically loaded libraries to access external code. The .so files (for Linux, DLL for windows and dylib for mac) need to be present on the target machine.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 21 '18 at 12:57









        Pierre de BuylPierre de Buyl

        4,8982916




        4,8982916






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53407590%2fdoes-cython-compile-imported-modules-as-part-of-the-binary%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

            Alcedinidae

            Origin of the phrase “under your belt”?