库在链接的时候的问题。
本帖最后由 fender0107401 于 2016-05-15 08:57 编辑Linux上面,一个库,比如说Qt,可是用来生成debug版本,也可以用来生产release版本,对吧?
不过在Windows上面好像就不行,debug版本必须链接的debug版的库上面,对吧?
语言是C++,C是不是也是这样。 其实是没有这个限制的,接口一样,你说它是debug就是debug,你说它是release就是release 回复 2# hellioncu
我记得有一次用VS,然后VS告诉我得链接到调试版的boost库上面,不知道是不是记错了。
fender0107401 发表于 2016-05-16 08:24 static/image/common/back.gif
回复 2# hellioncu
我记得有一次用VS,然后VS告诉我得链接到调试版的boost库上面,不知道是不是记错了。 ...
你说得对,大好人也说得对
估计是windows下debug有连接方面的参数或者格式,linux下不存在 流氓无产者 发表于 2016-05-16 09:26 static/image/common/back.gif
你说得对,大好人也说得对
估计是windows下debug有连接方面的参数或者格式,linux下不存在
windows下自己写的库,debug/release混着链接可以成功的。那些不成功的,应该是debug/release接口上有一些不一样 hellioncu 发表于 2016-05-16 09:31 static/image/common/back.gif
windows下自己写的库,debug/release混着链接可以成功的。那些不成功的,应该是debug/release接口上有 ...
you are right,i am wrong
run different,but linux run ok 原来是这样的。 本帖最后由 trisisble 于 2016-05-16 11:12 编辑
楼主,类似的问题你之前好像问过了吧?就那个“头文件库”的帖子,当时猫版windoze还狠狠吐槽了一下VS不同版本的ABI来着
就我个人的经验,用VS编译C++程序,Debug和Release能不能混用,关键在于运行库的编译选项吧,就是用的是/MTd /MT /MDd /MD这之中的哪一种了,我之前用过一个别人写的VS的二进制库,就是用的/MT选项,自己的代码工程在添加了之前的二进制库的情况下,不管选择Debug还是Release,都必须选择/MT才能链接成功的
trisisble 发表于 2016-05-16 11:11 static/image/common/back.gif
楼主,类似的问题你之前好像问过了吧?就那个“头文件库”的帖子,当时猫版windoze还狠狠吐槽了一下VS不同版 ...
当时没有考虑debug和release的事情,刚刚在想这个。 只关注一个目标,并尽可能把它做好。
:lol
页:
[1]