因为重装了几次系统,遇到了一些小问题。总的来说,对于一个没有编程经验的人来说,初次编译开源软件的源码都会遇到各种各样的问题,这些问题都不大,属于难者不会、会者不难的类型,但是屡次尝试还是会遇到不少问题,这里把我最近几次下载源码遇到的问题简单总结一下,希望能对同道中人有所帮助。 一、源码的下载方法 在opensees网站进入developer -->download 页面,有明确的下载方法。 首先你要安装TortoiseSVN 安装完后,选择你要下载源码的地方新建文件夹(最好新建一个空文件夹来放源码),重命名为一个合适的英文名,右键选Export,将地址设为 svn://opensees.berkeley.edu/usr/local/svn/OpenSees/trunk 即可。 二、 初次编译 打开下载的源程序,在 \win32 文件夹里面有两个解决方案文件 一个是 OpenSees.sln, 这个目前默认是用VS2010编译的 一个是OpenSeesVC6.sln,我用的VS2012编译,上一个会报错,因此用的这个解决方案,此时VS会自动对它进行升级。 升级完成后,便可以选择“生成——生成解决方案”或者按F7进行编译。 编译后,系统会报错,可以仔细看一下报错的内容,然后针对解决。 第一类报错是找不到Tcl有关的文件夹,这是由于tcl没有安装到opensees源程序默认的位置而引起的,这个比较bug,请注意,opensees源程序默认tcl应该安装在“C:\Program Files\tcl”,但是你安装tcl时,默认的文件夹是“C:\tcl”。此时需要对源文件的设置做一些更改: (1)在项目上按右键,在 属性\配置属性\C/C++ 中设置附加包含目录,将里面的”C:\Program Files\tcl”或者“C:\Program Files\tcl\include”改成实际的路径。 (2)有的项目则是,在 “属性\配置属性\库管理器\附加库目录” 或者 “属性\配置属性\链接器\常规\附加库目录” 里做类似更改。 下面的这些报错是与VS2012有关的: (1)报错 error LNK2026: 模块对于 SAFESEH 映像是不安全的 这个报错是 Opensees、openseesTK 和 quickmain 三个项目的,需要在“属性\配置属性\链接器\命令行 ”的 “其他选项”里输入 /SAFESEH:NO (2)报错 error MSB8020: The builds tools for Visual Studio 2010 (Platform Toolset = ‘v100′) cannot be found. 选中解决方案,右键“更新VC++项目” (3)报错 error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1700” 方法:在项目右键属性-配置属性-常规中,平台工具集选用为合适平台即可,选择 vs2010 (v100). 或者选择为“从父级或项目默认设置继承” 这一错误的解释如下,转自网络: MSC_VER 定义编译器的版本。下面是一些编译器版本的_MSC_VER值: 解决上述问题之后,所有模块都编译通过,此时可以开始添加自己的东西了。Enjoy! 三、移动或复制源码后不可编译的解决方法 有时移动或复制源程序文件夹后,会出现不可编译的情况,解决方案如下
在项目的属性——通用属性——把引用重新添加一遍
注意原来有引用的添加,没有的不要多添加。事实上只有opensees 、 openseestk和quickmain需要。 http://blog.sciencenet.cn/blog-1850230-830218.html 下一篇:在OpenSees下添加新材料的步骤 |
|
来自: 南氏珍藏 > 《opensees》