Chinaunix首页 | 论坛 | 博客
  • 博客访问: 303585
  • 博文数量: 45
  • 博客积分: 1429
  • 博客等级: 上尉
  • 技术积分: 422
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-19 09:12
文章分类

全部博文(45)

文章存档

2021年(1)

2020年(1)

2019年(1)

2016年(4)

2015年(3)

2011年(4)

2010年(31)

我的朋友

分类: C/C++

2010-01-19 09:25:31

ptlib 中MergeSym
1:MergeSym的作用似乎是将静态库(static lib)转换成def

2:MergeSym项目依赖OPAL_Static; 假如OPAL_Static依赖了其他DLL注意在MergeSym项目的生成后事件中COPY该DLL到MergeSym的生成目录;
3:MergeSym的命令行格式:


MergeSym [ -v ] [ -s ] [ -d dumpbin ] [ -x deffile[.def] ] [-I libfilepath ] libfile[.lib] [ deffile[.def] [ outfile[.def] ] ]


example:

-I C:\Program Files\Microsoft Visual Studio 8\VC\lib;C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\lib;C:\Program Files\Microsoft Visual Studio 8\VC\atlmfc\lib\i386;C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\Program Files\Microsoft Visual Studio 8\;C:\Program Files\Microsoft Visual Studio 8\lib -x Debug\ptlibd.def -x e:\323\opal\src\win32\\Private.def .\..\..\lib\opalsd.lib e:\323\opal\src\win32\opald_2005.dtf .\..\..\lib\Debug\opald.def

-I :表示的是LIB的默认路径  可能.\..\..\lib\opalsd.lib 的依赖LIB到以上的目录中找到加载;
-x :输入的DEF文件
libfile[.lib]:需要分割的STATIC LIB
[ deffile[.def] [ outfile[.def] ] ]输出的DEF

4:大概的步骤:
(1)用DUMPBIN+/symbols  + lib_filename 将STATIC LIB文件用DUMPBIN+/symbols 命令导出symbols信息到临时的SYM文件
(2)从SYM文件中提取Symbol与输入的DEF文件比较,采取添加或者移除 从而生成新的DEF文件;

有了新的DEF就可以生成DLL 和 LIB 了参见PTlib_DLL和OPAL_DLL项目 只有DllMain(HANDLE hinstDLL, DWORD fdwReason, LPVOID)函数
阅读(1268) | 评论(0) | 转发(0) |
0

上一篇:没有了

下一篇:sja1000寄存器设置

给主人留下些什么吧!~~