[#7055] More on VC++ 2005 — Austin Ziegler <halostatue@...>

Okay. I've got Ruby compiling. I'm attempting to get everything in

17 messages 2006/01/05
[#7058] Re: More on VC++ 2005 — nobuyoshi nakada <nobuyoshi.nakada@...> 2006/01/06

Hi,

[#7084] mathn: ugly warnings — hadmut@... (Hadmut Danisch)

Hi,

22 messages 2006/01/10
[#7097] Re: mathn: ugly warnings — Daniel Berger <Daniel.Berger@...> 2006/01/10

Hadmut Danisch wrote:

[#7098] Design contracts and refactoring (was Re: mathn: ugly warnings) — mathew <meta@...> 2006/01/10

Daniel Berger wrote:

[#7118] Re: Design contracts and refactoring (was Re: mathn: ugly warnings) — mathew <meta@...> 2006/01/12

*Dean Wampler *<deanwampler gmail.com> writes:

[#7226] Fwd: Re: Question about massive API changes — "Sean E. Russell" <ser@...>

Hello,

23 messages 2006/01/28
[#7228] Re: Question about massive API changes — Caleb Tennis <caleb@...> 2006/01/28

>

Re: More on VC++ 2005

From: nobuyoshi nakada <nobuyoshi.nakada@...>
Date: 2006-01-06 01:52:06 UTC
List: ruby-core #7058
Hi,

At Thu, 5 Jan 2006 12:38:05 +0900,
Austin Ziegler wrote in [ruby-core:07055]:
> 1. The zlib team recommends that you only compile to zlib1.dll if you
> are linking against msvcrt.dll, because of zlib's intended status as a
> "system component". As such, I am creating ruby-zlib1.dll. How can I
> tell Ruby that's the version of zlib to compile against for zlib.so?

--with-zlib=ruby-zlib1 might work, if you have ruby-zlib1.lib.

> 2. The dynamic discovery of DLLs is harder. It is possible to put
> msvcr80.dll in the Ruby bin/ directory, but it is not the recommended
> way to do it, since msvcr80.dll is intended to be an SxS
> (side-by-side) assembly. I have made modifications to the Zlib and
> OpenSSL build processes (and now pdcurses, too) to make this happen,
> but the Ruby build process is a little too... confusing to me to deal
> with. Basically, there's a link step and a post-link step. After the
> link is done, a .manifest file is generated, e.g.:
> 
>   ruby.exe
>   ruby.exe.manifest
>   msvcr80-ruby18.dll
>   msvcr80-ruby18.dll.manifest
> 
> Don't ask my *why*, but the linker doesn't give the ability to
> automatically embed the manifest in the DLL or the EXE. However, there
> is a way to do it using mt ("manifest tool").

Where's that mt command?  I've installed VC++ 2005 Express
Edition too, but can't find it anywhere.

> Without this step, the installer must install not only the .exe or
> .dll, but the .manifest file along with it. With this step, the
> installer needs be made no smarter and binaries just work the way they
> always have on Windows.

Is .manifest file really mandatory?  I don't know how it is
used, but /manifest:no linker option seems to suppress making
it.

-- 
Nobu Nakada

In This Thread