由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 请教大牛一个很老的VISUAL STUDIO6.0 的问题
相关主题
Questions about MAKEFILE真佩服你们,VS6和VC能吵一晚上
C Library (一个统计方面的) 安装一问我觉得c以后最牛的语言是vb 6
为什么在我的电脑上编译好的程序,无法在其他电脑上运行?gcc 4.81.或者Clang 都自称C++11 feature 全部支持了
请教一个makefile 小问题C++ 11问题:emplace_back()
问一个MinGW + CMake 的问题vs2013 静态分析报错error,编译完全通过,没有warning
Delphi这个语言是不是已经死了?c++的一个诡异问题,高手请进
各位大仙,说说这个VS和VCvs2013解释不了template, internal error 了, 哈哈
事实胜于雄辩,图来了这几天试了一下linux c++ IDE
相关话题的讨论汇总
话题: lib话题: exe话题: visual话题: project话题: link32
进入Programming版参与讨论
1 (共1页)
r*********z
发帖数: 74
1
本人CS菜鸟, 需要把一个LEGACY的程序VISUAL STUDIO 6.0写的 移到VS2013, 但很多
库函数和MACRO都不支持了。 因此改起来麻烦。如果一个一个移源代码的话, 太多
LINK 和DEPEDNECY。 如果能直接编译成LIB 文件的话, 感觉会好多。 问题是VS6.0
只能在建立PROJECT的时候让你选LIB, 不像VS2013可以随时选EXE或LIB. VS6.0 在已
经是EXE环境下, 如何编译成LIB呢? 因为VS6.0 早于GOOGLE成立, 几乎收不到啥有
用信息, 特此问问从业很早的马工, 用过这老古董的如何解决.
包子答谢
l**o
发帖数: 131
2
link结果是exe 还是 lib, 一般取决于 linker, 打开你的Make file或者Project file
, 把 linker的参数加个 -lib 或者 /lib.
r*********z
发帖数: 74
3
谢谢指点啊, 对比了 LIB 的dsp, 我改了要改文件的.dsp 文件, 在LINK32=link32
改成 LINK32=link32 -lib 或改成 LIB32=link.exe -lib, 编译后。 LIB和EXE同
样大小的文件, LOAD的时候报错CORRUPTED FILE。 好像没这么简单。我用VS2013编
译,
同一个程序 LIB要比EXE大了100倍, 好奇怪
VS6.0 MAKEFILE, 只能EXPORT输出; 没看到IMPORT选项。 已转账10个包子, 非常
谢谢指点

file

【在 l**o 的大作中提到】
: link结果是exe 还是 lib, 一般取决于 linker, 打开你的Make file或者Project file
: , 把 linker的参数加个 -lib 或者 /lib.

l**o
发帖数: 131
4
LOAD的时候报错CORRUPTED FILE? lib是静态链接库啊,用的话为啥要LOAD? 难道不是
在编译时候带个参数么?
包子已收到,谢谢。你如果愿意,把源码发给我,我周末来看看。不过丑话说在前,我
不收费,但不会在这上面花超过2个小时的时间,不保证能解决问题。

link32

【在 r*********z 的大作中提到】
: 谢谢指点啊, 对比了 LIB 的dsp, 我改了要改文件的.dsp 文件, 在LINK32=link32
: 改成 LINK32=link32 -lib 或改成 LIB32=link.exe -lib, 编译后。 LIB和EXE同
: 样大小的文件, LOAD的时候报错CORRUPTED FILE。 好像没这么简单。我用VS2013编
: 译,
: 同一个程序 LIB要比EXE大了100倍, 好奇怪
: VS6.0 MAKEFILE, 只能EXPORT输出; 没看到IMPORT选项。 已转账10个包子, 非常
: 谢谢指点
:
: file

r*********z
发帖数: 74
5
大牛已经很客气了。那倒不用花费时间了, 高屋建瓴的指点一下就非常有帮助了。
我表达错了应该这样表达更准确 我把产生好的LIB用ADD PROJECT以后,然后啥都没干
, 然后编译, 报错是CORRUPTED FILE。 我用一直接就开始就是制定编译LIB的
PROJECT产生的LIBB用ADD PROJECT以后, 就没这问题。
不过我对照了LIB 和 EXE 的DSP文件(发现是文本文件), 好像区别就是大牛说的这个
LINK32=link.exe 一个是 LIB32=link.exe -lib.
等会我就用最简单建立一个EXE的情况下,不附上其他代码, 在这样改改, 看看同样
的错误否。如果没有错误, 按可能其他地方错了。 如果有, 估计还有什么地方需要
改。
还有一个问题, 编译出来的LIB文件大小会比EXE大很多吗?如果一样大, 是不是不对

VS6.0 太老了, 打交道起来就像DATE 一个老女人。


【在 l**o 的大作中提到】
: LOAD的时候报错CORRUPTED FILE? lib是静态链接库啊,用的话为啥要LOAD? 难道不是
: 在编译时候带个参数么?
: 包子已收到,谢谢。你如果愿意,把源码发给我,我周末来看看。不过丑话说在前,我
: 不收费,但不会在这上面花超过2个小时的时间,不保证能解决问题。
:
: link32

r*********z
发帖数: 74
6
试了, 直接产生。CPP和。H文件,没有任何其他我的文件, 然后改DSP, 还是同样
的错误, 似乎还有其他地方需要改, 那就毫无头绪了

这个

【在 r*********z 的大作中提到】
: 大牛已经很客气了。那倒不用花费时间了, 高屋建瓴的指点一下就非常有帮助了。
: 我表达错了应该这样表达更准确 我把产生好的LIB用ADD PROJECT以后,然后啥都没干
: , 然后编译, 报错是CORRUPTED FILE。 我用一直接就开始就是制定编译LIB的
: PROJECT产生的LIBB用ADD PROJECT以后, 就没这问题。
: 不过我对照了LIB 和 EXE 的DSP文件(发现是文本文件), 好像区别就是大牛说的这个
: LINK32=link.exe 一个是 LIB32=link.exe -lib.
: 等会我就用最简单建立一个EXE的情况下,不附上其他代码, 在这样改改, 看看同样
: 的错误否。如果没有错误, 按可能其他地方错了。 如果有, 估计还有什么地方需要
: 改。
: 还有一个问题, 编译出来的LIB文件大小会比EXE大很多吗?如果一样大, 是不是不对

l**o
发帖数: 131
7
嗯,我要你的源码其实是想看看能不能让它在VS2013(或者更新的版本)下编译。
Anyway, 你既然使用DSP, 那么打开你的老DSP,把based on "Win32 (x86) ???"里面的
???改成 Static Library就好. 我刚找了个VS6试了一下,应该没有问题.
lib当然会小一些,不用链接exe需要的初始化代码。
老女人无所谓,俺抽屉里面钢丝球有一打,呵呵。

【在 r*********z 的大作中提到】
: 试了, 直接产生。CPP和。H文件,没有任何其他我的文件, 然后改DSP, 还是同样
: 的错误, 似乎还有其他地方需要改, 那就毫无头绪了
:
: 这个

r*********z
发帖数: 74
8
哦, 这个我还没试过。 周一去试试看看, 按照你这样改这个地方看看。 具体就是文
本替换“Win32 (x86) ???” 成 “ Win32 (x86) ???.lib" 吗? 能具体指导一下 把
based on "Win32 (x86) ???"里面的: ???改成 Static Library就好 ? 能贴个范例吗

目前我就改了LINK32=lib.exe -lib
在VS2013编译不了, 好多FUNCTION 和 MACRO都缺了。
谢谢指点啊。

【在 l**o 的大作中提到】
: 嗯,我要你的源码其实是想看看能不能让它在VS2013(或者更新的版本)下编译。
: Anyway, 你既然使用DSP, 那么打开你的老DSP,把based on "Win32 (x86) ???"里面的
: ???改成 Static Library就好. 我刚找了个VS6试了一下,应该没有问题.
: lib当然会小一些,不用链接exe需要的初始化代码。
: 老女人无所谓,俺抽屉里面钢丝球有一打,呵呵。

l**o
发帖数: 131
9
我的???是 Console Application, 你的也许不同,如果你是什么Win32 Application的
话。但应该大致是这个路子,替换是直接替换成Static Library (你开个Static Lib
Project再打开DSP就知道了)
我就是按你的说法先创个Console project, 然后替换成Static Library, 注释掉main,
加个void Show() {printf("Show some steel balls!n");} 编译结果是比exe小不少的
lib.
我然后再创个Console,静态链接上个生成的Lib, 加个 extern void Show(); 再从
main里call Show(), 钢丝球就出来了。

【在 r*********z 的大作中提到】
: 哦, 这个我还没试过。 周一去试试看看, 按照你这样改这个地方看看。 具体就是文
: 本替换“Win32 (x86) ???” 成 “ Win32 (x86) ???.lib" 吗? 能具体指导一下 把
: based on "Win32 (x86) ???"里面的: ???改成 Static Library就好 ? 能贴个范例吗
: ?
: 目前我就改了LINK32=lib.exe -lib
: 在VS2013编译不了, 好多FUNCTION 和 MACRO都缺了。
: 谢谢指点啊。

b***i
发帖数: 3043
10
哪个函数不支持了?

0

【在 r*********z 的大作中提到】
: 本人CS菜鸟, 需要把一个LEGACY的程序VISUAL STUDIO 6.0写的 移到VS2013, 但很多
: 库函数和MACRO都不支持了。 因此改起来麻烦。如果一个一个移源代码的话, 太多
: LINK 和DEPEDNECY。 如果能直接编译成LIB 文件的话, 感觉会好多。 问题是VS6.0
: 只能在建立PROJECT的时候让你选LIB, 不像VS2013可以随时选EXE或LIB. VS6.0 在已
: 经是EXE环境下, 如何编译成LIB呢? 因为VS6.0 早于GOOGLE成立, 几乎收不到啥有
: 用信息, 特此问问从业很早的马工, 用过这老古董的如何解决.
: 包子答谢

r*********z
发帖数: 74
11
谢谢大牛, 按照你指点的, 我编译好了LIB。 等会我在调调这里面的CLASS。
有个疑问,MAKEFILE #开头的是COMMENT OUT吧, 但似乎在DSP里好像不是, 因为
Win32 X86 前面就是#, 俺以为和MAKEFILE一样是COMMENT OUT
最后我编译出来的LIB是2.9M, .EXE是1.8M
哈哈, 如果还碰到不熟悉这个老女人的秉性, 还望大牛赐教。

Lib
main,

【在 l**o 的大作中提到】
: 我的???是 Console Application, 你的也许不同,如果你是什么Win32 Application的
: 话。但应该大致是这个路子,替换是直接替换成Static Library (你开个Static Lib
: Project再打开DSP就知道了)
: 我就是按你的说法先创个Console project, 然后替换成Static Library, 注释掉main,
: 加个void Show() {printf("Show some steel balls!n");} 编译结果是比exe小不少的
: lib.
: 我然后再创个Console,静态链接上个生成的Lib, 加个 extern void Show(); 再从
: main里call Show(), 钢丝球就出来了。

1 (共1页)
进入Programming版参与讨论
相关主题
请教个rng的问题问一个MinGW + CMake 的问题
Excel VSTO 4.0 project deveopled in VS2010 migration to VST (转载)Delphi这个语言是不是已经死了?
请推荐C++开发环境各位大仙,说说这个VS和VC
Re: How to write this makefile?事实胜于雄辩,图来了
Questions about MAKEFILE真佩服你们,VS6和VC能吵一晚上
C Library (一个统计方面的) 安装一问我觉得c以后最牛的语言是vb 6
为什么在我的电脑上编译好的程序,无法在其他电脑上运行?gcc 4.81.或者Clang 都自称C++11 feature 全部支持了
请教一个makefile 小问题C++ 11问题:emplace_back()
相关话题的讨论汇总
话题: lib话题: exe话题: visual话题: project话题: link32