[LLVMdev] LLVM Shared DLL not supported reason

Reid Kleckner rnk at google.com
Wed Apr 1 10:30:36 PDT 2015


Sure, if you just want the C API, it's doable with dumpbin or mingw nm. We
have a Unix implementation of that in llvm/tools/llvm-shlib/CMakeLists.txt,
and we could definitely take a patch for a dumpbin-powered implementation
for Windows.

Still, this isn't the same as having the full C++ API available like we do
on other platforms.

On Wed, Apr 1, 2015 at 9:46 AM, Mukul Sabharwal <mjsabby at gmail.com> wrote:

> FWIW, I've got a powershell script that builds an exports.def file for
> recognizable C functions.
>
> You could adapt it to Python and make it part of the official build if the
> LLVM community thinks it will be beneficial to have libLLVM.dll
>
> The script is located here:
>
> https://github.com/mjsabby/LLVMSharp/blob/master/GenLLVMDLL.ps1
>
> On Wed, Apr 1, 2015 at 9:03 AM, Reid Kleckner <rnk at google.com> wrote:
>
>> Windows DLLs generally require that you know what you want to export from
>> them. LLVM has no export annotations or export lists, so we don't support
>> building DLLs. If you are using mingw, then ld supports the
>> --export-all-symbols flag which might work, but I don't think it's well
>> tested.
>>
>> On Tue, Mar 31, 2015 at 11:33 AM, Hayden Livingston <
>> halivingston at gmail.com> wrote:
>>
>>> Upon reading http://llvm.org/docs/GettingStarted.html it says I can
>>> build shared libs, but when going to the CMake doc (
>>> http://llvm.org/docs/CMake.html) it says Shared libraries are not
>>> supported on Windows and not recommended for other OSes.
>>>
>>> Is there a reason why? At least for on Windows.
>>>
>>> _______________________________________________
>>> LLVM Developers mailing list
>>> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150401/19624b36/attachment.html>


More information about the llvm-dev mailing list