[LLVMdev] Compile dll on Mingw

yuan zheng
Thu, 02 Sep 2010 13:07:48 -0000

Hi, NAKAMURA Takumi

According to your prompt, I'm very glad that it can generate llvm-2.8svn.dll
!

But there is still some compatibility problem between llvm-2.8
and our project. If we use llvm-2.6, there is no problem.

I would study the code of LLVM to find the difference recently,
and I will contact you if I make some progress.

Thanks for your enthusiastic  and timely answer.

Thanks,
yuanzheng.

2010/9/2 NAKAMURA Takumi <geek4civic at gmail.com>

> Good evening, Yuan
>
> Excuse me, I gave up Debug build earlier due to my poor hosts.
> I will improve able to build Debug ;)
>
> You may build with --enable-optimized=yes
> (or, make ENABLE_OPTIMIZED=1)
>
> btw, DLL builder has implemented since Aug.
> It might be easier to port DLL stuff to 2.6 :) Do you try?
>
>
> ...Takumi
>
>
> 2010年9月2日 17:16:25 UTC+9 yuan zheng <tsinghuayuan86 at gmail.com>:
> > Hello, NAKAMURA Takumi
> >
> > As you said, I check out the head from svn trunk.
> > I build the source code as the following steps:
> >    $./configure --enable-shared
> >   $ make
> >
> > After  1 hour,  the building procedure is stopped and appear the
> following
> > error message:
> >
> >
>
c:/strawberry/c/bin/../lib/gcc/i686-w64-mingw32/4.4.3/../../../../i686-w64-mingw
> > 32/bin/ld.exe:
> > F:/msys/1.0/home/MK/llvm-2.8/llvm/tools/llvm-shlib/Debug+Asserts/
> > LLVM-2.8svn.a.o: too many sections (63677)
> >
>
c:/strawberry/c/bin/../lib/gcc/i686-w64-mingw32/4.4.3/../../../../i686-w64-mingw
> > 32/bin/ld.exe: final link failed: File too big
> > collect2: ld returned 1 exit status
> > make[1]: ***
> > [/usr/home/MK/llvm-2.8/llvm/tools/llvm-shlib/Debug+Asserts/LLVM-2.8
> > svn.a.o] Error 1
> > make[1]: Leaving directory
`/home/MK/llvm-2.8/llvm/tools/llvm-shlib'
> > make: *** [all] Error 1
> >
> > Expect your answer.
> >
> >
> >
> > Thanks,
> > yuanzheng.
> >
> >
> > 2010/9/2 NAKAMURA Takumi <geek4civic at gmail.com>
> >>
> >> Hello, Yuan
> >>
> >> > I'm a newbie about llvm. Now, our project need the
dynamic link
> >> > library(dll)
> >> > about all of llvm library, such as libLLVMCore.dll,
> libLLVMSupport.dll,
> >> > and
> >> > so on. How should I do?
> >>
> >> You may do, "/path/to/configure --enable-shared=yes",
> >> to build LLVM-2.8svn.dll.
> >> On your project, you have to specify to linker,
> >> "-L/path/to/dll -lLLVM-2.8svn"
> >> (maybe with -Wl,--enable-auto-import)
> >>
> >> We provide not individual DLLs but a "BIG" one.
> >> We don't provide import libraries.
> >>
> >> I think "DLL" feature is still experimental, and I need
more feedback.
> >> When you met any troubles with DLL, ask here or file bugs!
> >>
> >> Have fun!
> >>
> >>
> >> ...Takumi
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20100902/e690b851/attachment.html>