Windows下Scintilla的编译,使用

来源:互联网 发布:mac air 鼠标不停晃动 编辑:程序博客网 时间:2024/06/01 09:25

下载了Scintilla的源码,在网上搜索资料自己摸索着编译,出现很多问题,现将解决方法总结:

1.下载Scintilla的源代码。(http://scintilla.sourceforge.net/ScintillaDownload.html)

2.下载后解压,我是直接解压,这里我解压在E:\

3.在Vs下编译

4.找到 Visual StudioCommand prompt 或者是Visual Studio 命令提示 这个快捷方式,运行它。

5.命令行内进入Scintilla的文件夹内

    cd scintilla\win32

6.清理工程 (第一次编译的可以不用清理,如果是重复编译了,就需要先清理过再编译,不然就要出错)

    nmake -f scintilla.mak clean

7.编译

nmake -f scintilla.mak

编译完成后,在bin目录下生成相关的dll文件。编译完成。


注意:在使用vs编译的时候出现一个错误,显示为:


LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
NMAKE : fatal error U1077: “"C:\Program Files (x86)\Microsoft Visual Studio 10.
: 返回代码“0x463”
Stop.


这是因为我原来安装了.NET 4.5。和VS2010.NET 4.0冲突。VS2010cvtres.exe就无法使用了。如果你的PATH环境变量中VS2010的工具路径第一个出现,而且链接器需要将.res文件转换为COFF 对象格式,就会导致LNK1123错误。

l 当VS生成PE文件头时,使用的cvtres.exe版本错误,不能与当前的.NET平台兼容。

解决方案:

参考:

http://stackoverflow.com/questions/10888391/link-fatal-error-lnk1123-failure-during-conversion-to-coff-file-invalid-or-c

因为是cvtres.exe版本错误导致的结果,所以凡是能使VS链接器找到正确的cvtres.exe版本的方法都可以解决该问题。或者使VS链接器不生成COFF的方法都可以。

【方法一】

  当前系统中存在两个cvtres.exe文件,版本不同。让VS2010使用.NET 4.5cvtres.exe程序。

具体步骤:

重命名或删除:(vs2010安装的位置)C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\cvtres.exe

这样C:\Windows\Microsoft.NET\Framework\v4.0.30319 (.NET 4.5)中的cvtres.exe文件就可以被VS2010使用。


参考:

http://blog.csdn.net/seaskying/article/details/44940367

http://blog.csdn.net/gnorth/article/details/7231513



0 0