VS2005 & VS2008 DLL Compilation issues
-
Hi guys, I have VS2005 and VS2008 installed on my development machine. Whenever I develop a DLL I have to link with the
/MT
(Multi-Threaded) option if I want to use it on any other machine. If I compile the DLL on a machine with VS2005 only, however, I don't have to use the/MT
option, I can use the/MD
(Multi-Threaded DLL) and the DLL can be used on any machine. Has anyone else come across this? Is there a way to resolve this? Thanks. -
Hi guys, I have VS2005 and VS2008 installed on my development machine. Whenever I develop a DLL I have to link with the
/MT
(Multi-Threaded) option if I want to use it on any other machine. If I compile the DLL on a machine with VS2005 only, however, I don't have to use the/MT
option, I can use the/MD
(Multi-Threaded DLL) and the DLL can be used on any machine. Has anyone else come across this? Is there a way to resolve this? Thanks.You should deploy the runtime on the target machines, see [^]. :)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles] -
Hi guys, I have VS2005 and VS2008 installed on my development machine. Whenever I develop a DLL I have to link with the
/MT
(Multi-Threaded) option if I want to use it on any other machine. If I compile the DLL on a machine with VS2005 only, however, I don't have to use the/MT
option, I can use the/MD
(Multi-Threaded DLL) and the DLL can be used on any machine. Has anyone else come across this? Is there a way to resolve this? Thanks./MD means: all that MFC/C-runtime stuff will live in a set of external DLLs which i will ship with my application. MT means: put all that MFC/C-runtime stuff into the DLL itself so i don't have to distribute the runtime libraries with my application.
-
You should deploy the runtime on the target machines, see [^]. :)
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles] -
/MD means: all that MFC/C-runtime stuff will live in a set of external DLLs which i will ship with my application. MT means: put all that MFC/C-runtime stuff into the DLL itself so i don't have to distribute the runtime libraries with my application.
-
Thanks but I have already installed the VC++ 2005 and 2008 runtime libraries on the target machine. That doesn't help, though. I am developing on a Windows 7 machine. Should that make a difference?
What is the error you get?
If the Lord God Almighty had consulted me before embarking upon the Creation, I would have recommended something simpler. -- Alfonso the Wise, 13th Century King of Castile.
This is going on my arrogant assumptions. You may have a superb reason why I'm completely wrong. -- Iain Clarke
[My articles]