Bug #9955

issue building dll on mingw, library not found

Added by lm (Laura Michaels) almost 5 years ago. Updated about 1 year ago.

Target version:
ruby -v:
ruby 2.1.2p95 (2014-05-08 revision 45877) [i386-mingw32]


I hit a bug similar to I'm building Ruby on MinGW using msys. When I run make, it errors out when it attempts to create the msvcrt-ruby210.dll. It's unable to find libgmp. There's a libgmp.dll.a in /usr/local/lib. LDFLAGS is set to -L/usr/local/lib. I see that LDFLAGS is used to build the executable and static library. I can't find it used when the dynamic library is created. Looking at the makefile (and where LIBRUBY_SO is linked, there's LDSHARED and DLDFLAGS, but I couldn't find LDFLAGS in the link command and didn't see another relevant environment variable to set along with LDFLAGS. I checked github and the latest version of, but didn't notice any changes to get the library locations from LDFLAGS.

I added the following to my build script after running configure and I'm able to build ruby successfully:
sed -i.bk0 -e "s|\$(DLDFLAGS)|\$(LDFLAGS) \$(DLDFLAGS)|" Makefile

I just wanted to add, this is the first time I've attempted to build Ruby with MinGW and it's so much nicer to create a build script for and compile and build on Windows than Perl or Python. Looks like the developers did a very nice job on MinGW platform support. Thanks.


Updated by nagachika (Tomoyuki Chikanaga) over 4 years ago

  • Status changed from Open to Assigned

Updated by naruse (Yui NARUSE) about 1 year ago

  • Target version deleted (2.2.0)

Also available in: Atom PDF