关于config.vc Topic is solved

这是wxWidgets论坛的中文版本。在这里,您可以用您的母语汉语讨论上面任一子论坛所涉及的所有关于wxWidgets的话题。欢迎大家参与到对有价值的帖子的中英互译工作中来!
Post Reply
morya
Experienced Solver
Experienced Solver
Posts: 96
Joined: Fri Dec 14, 2007 2:29 am
Location: Xuzhou, China

关于config.vc

Post by morya »

在$wxwin\build\msw\有这么一个文件
config.vc
shared选项定义了是不是静态编译
那么
RUNTIME_LIBS = dynamic or static
是不是定义了使用VC的哪个运行时库?
多线程,多线程Dll,多线程Debug,多线程Debug Dll?
Utensil
Moderator
Moderator
Posts: 423
Joined: Sun Feb 03, 2008 11:38 am
Location: China

Post by Utensil »

对于gcc,RUNTIME_LIBS = dynamic or static 对应着它的-shared-libgcc和-static-libgcc,区别好像在于静态版本可能不能很好地进行异常处理。官方推荐RUNTIME_LIBS = dynamic,一般不用去改动。

对于vc,我查找了编译器cl的所有命令行选项,觉得可能对应着以下几项,但具体情况不清楚(平时不用vc)。

/MD
与 MSVCRT.LIB 链接

/MDd
与 MSVCRTD.LIB 调试库链接

/ML
与 LIBC.LIB 链接

/MLd
与 LIBCD.LIB 调试库链接

/MT
与 LIBCMT.LIB 链接

/MTd
与 LIBCMTD.LIB 调试库链接

详细情况可查看cl的命令行选项列表,如http://blog.csdn.net/stdHans/archive/20 ... 82147.aspx

-Utensil
In fascination of creating worlds by words, and in pursuit of words behind the world.

On Github: http://utensil.github.com
Technical Blog in Chinese: http://utensil.iteye.com/
morya
Experienced Solver
Experienced Solver
Posts: 96
Joined: Fri Dec 14, 2007 2:29 am
Location: Xuzhou, China

Post by morya »

感谢版主的辛苦查询。
我不是问那些 /MDt /MD /Mt 的意思,虽然不是完全明白,但基本上知道意思。
我是想问问这两个选项的区别。
nemok
Earned a small fee
Earned a small fee
Posts: 17
Joined: Thu Mar 06, 2008 12:44 am

Post by nemok »

使用static时,对应VC的/MT,dynamic对应/MD
否则可能会在发布时造成link error,

以VC系列来讲.
/MD 使用msvcrt.dll,在发布时需要额外的msvcr80.dll,动态连接;
/MT 则不需要.静态连接;

另一个角度来看:
使用静态连接,会把用到的内容复制一份到程序中,所以最后生成的程序文件会比较大;动态的会比较小;
实际情况或许根据实际的应用平台来选择会比较好;
from: shanghai
language: C++/C
subject: GIS GPS
platform:all
MSN:[email protected]

also you can call me nemo;
morya
Experienced Solver
Experienced Solver
Posts: 96
Joined: Fri Dec 14, 2007 2:29 am
Location: Xuzhou, China

Post by morya »

我的意思是说,
在$wxwin\build\msw\ 中这个文件
config.vc
shared 选项

RUNTIME_LIBS
这个选项,哪个作数呢?

/MD /Mt什么的,我基本上明白是什么东西的。可是,我不知道上面的哪个选项对应 vc中 /MD /Mt 等等的东西。
nemok
Earned a small fee
Earned a small fee
Posts: 17
Joined: Thu Mar 06, 2008 12:44 am

Post by nemok »

shared对应wxWidegt最后生成怎样的库形式
0 .lib
1 .dll

dynmic == /MD
static == /MT
from: shanghai
language: C++/C
subject: GIS GPS
platform:all
MSN:[email protected]

also you can call me nemo;
morya
Experienced Solver
Experienced Solver
Posts: 96
Joined: Fri Dec 14, 2007 2:29 am
Location: Xuzhou, China

Post by morya »

呵呵,谢谢,我刚发现是这个意思,然后想要给自己结帖,就看到有人回答了。
Post Reply