On 14 March 2014, Alexander Shukaev <[email protected]> wrote:
> It seems like there is too much confusion about the terms. I just want to
> make it clear with obvious examples because describing it with words seems
> to only worsen the confusion.
> 
> `gcc vim.o python33.dll -o vim` is linking `vim` against `python33.dll` at
> compile time, i.e. introducing automatic explicit dependency of `vim` to
> `python33.dll`. In this case, to start `vim` users would be forced to have
> `python33.dll` or get error otherwise.
> 
> `LoadLibrary("python33")` (on Windows) or `dlopen("python33", RTLD_NOW)`
> (on Unix) is dynamically loading `python33.dll` or `libpython33.so` by
> `vim`, i.e. not introducing automatic explicit dependency of `vim` to
> `python33.dll` or `libpython33.so`. In this case, to start `vim` users are
> not forced to have `python33.dll`  or `libpython33.so`, but if they have
> one, it will be loaded by this system call and Python would be usable from
> Vim.
> 
> Do you call these 2 approaches of shared library/DLL management the other
> way around?

(1) Static linking:

    gcc -o vim vim.o libpython33.a          - on UNIX
    gcc -o vim.exe vim.obj python33.lib     - on Windows

(2) Dinamyc linking:

    gcc -o vim vim.o libpython33.so         - on UNIX
    gcc -o vim.exe vim.obj python33.dll     - on Windows

(3) Demand loading, nothing to do with linking:

    dlopen("python33", RTLD_NOW)            - on UNIX
    LoadLibrary("python33")                 - on Windows

    /lcd

-- 
-- 
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to