在linux下编译了一个程序,尝试运行的时候出现: Segmentation fault (core dumped) 初步确认为...完全不知道是什么玩意. 于是找度娘了. ---------------------------------------------------------------------------- 出现原因 原来这个东西叫做段错误,就程序运行的时候出现内存错误.有很多原因会导致这样的内存错误,但是应该把这些问题归结于程序的错误,那么程序是出现了什么样的错误了呢,为…
1.段错误 http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 2.段错误的调试方法 2.1使用printf输出信息 2.2使用gcc和gdb 2.3使用core文件和gdb ………
最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多.花费时间最长的问题就是著名的“段错误”(Segmentation Fault).借此机会系统学习了一下,这里对Linux环境下的段错误做个小结,方便以后同类问题的排查与解决. 1. 段错误是什么 一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址.访问了系统保护的内存地址.访问了只读的内存地址等等情况.这里贴一个对于“段错…
最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且 项目工程庞大复杂,出现了不少问题,其中遇到最多.花费时间最长的问题就是著名的“段错误”(Segmentation Fault).借此机会系统学习了一下,这里对Linux环境下的段错误做个小结,方便以后同类问题的排查与解决. 1. 段错误是什么 一句话来说,段错误是指访问的内存超出了系统给这个程序所设定的内存空间,例如访问了不存在的内存地址.访问了系统保护的内存地址.访问了只读的内存地址等等情况.这里贴一个对于“段…
转载自http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多.花费时间 最长的问题就是著名的“段错误”(Segmentation Fault).借此机会系统学习了一下,这里对Linux环境下的段错误做个小结,方便以后同类问题的排查与解决. 1. 段错误是什么 一句话来说,段错误是指访问的内存超…
本文转自:http://www.cnblogs.com/panfeng412/archive/2011/11/06/segmentation-fault-in-linux.html 1. 段错误是什么 段错误是指访问的内存地址是一个非法地址或者以非法的方式访问一个合法地址(比如,以写方式访问只读地址).如果得到一个段错误,那么就可以判定内存管理出了问题——访问了已经被free的变量,向内存的只读部分写数据. 2. 段错误产生的原因 2.1 访问不存在的内存地址(解引用空指针) #include<…
转自:http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且项目工程庞大复杂,出现了不少问题,其中遇到最多.花费时间最长的问题就是著名的“段错误”(Segmentation Fault).借此机会系统学习了一下,这里对Linux环境下的段错误做个小结,方便以后同类问题的排查与解决. 1. 段错误是什么 一句话来说,段错误是指访问的内存超出…
源地址:http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 补充:http://baike.baidu.com/link?url=oJ8Gy8pRAGrXPP-mXSvdTLwKFqdUc3T4uvz3Yy63upN6D07qFv97Wny1I_EV4pYfSwVKnpr73xowghsrg-1p-q Linux环境下段错误的产生原因及调试方法小结 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行…
什么是段错误 下面是来自 Answers.com 的定义: A segmentation fault (often shortened to segfault) is a particular error condition that can occur during the operation of computer software. In short, a segmentation fault occurs when a program attempts to access a memor…
今天进行系统维护,发现了大量的499错误, 499错误 ngx_string(ngx_http_error_495_page), /* 495, https certificate error */ngx_string(ngx_http_error_496_page), /* 496, https no certificate */ngx_string(ngx_http_error_497_page), /* 497, http to https */ngx_string(ngx_http_er…
一. 今天进行系统维护,发现了大量的499错误, 499错误 ngx_string(ngx_http_error_495_page), /* 495, https certificate error */ngx_string(ngx_http_error_496_page), /* 496, https no certificate */ngx_string(ngx_http_error_497_page), /* 497, http to https */ngx_string(ngx_http…
http://blog.csdn.net/tclcaojun/article/details/6777022错误代码:ORA-01591 错误原因:使用了分布式事务,造成这个问题的原因很多时候都是由于网络问题造成的 解决办法: 1.找到TRAN_ID Select 'Rollback force '''||LOCAL_TRAN_ID||'''' from sys.pending_trans$; 2.將其COMMIT或ROLLBACK:    rollback force LOCAL_TRAN_I…
一.原因及解决方法[1] 1.原因:堆内存的永久保存去区内存分配不足(缺省默认为64M),导致内存溢出错误. 2.解决方法:重新分配内存大小,-Xms1024M -Xmx2048M -XX:PermSize=128M -XX:MaxPermSize=256M 3.步骤:[3] -Xms256m -Xmx512m -XX:PermSize=256m -XX:MaxPermSize=256M  发布到Tomcat服务器上出现该问题解决方法:[4] 在tomcat 的bin 下catalina.sh…
qt 旧项目编译运行提示 "启动程序失败,路径或者权限错误?" 原因及解决方法 原因 Qt Creator在打开项目文件的同时会生成.pro.user文件,.pro.user文件叫做 用户配置描述文件 包含一些与Qt相关的本地配置信息,如果更新qt版本或打开别人的项目会使Qt读取错误的配置. 解决方法 删除.pro.user文件…
Linux下的C程序常常会因为内存访问等原因造成segment fault(段错误),如果此时core dump 的功能是打开的,在运行我们的可执行程序时就会生成一个名为core的文件,然后我们就可以用gdb对core文件来进行调式,还原发生错误的堆栈情况,这对于我们调试bug非常有帮助. 1. 使用  ulimit -a 可以察看当前系统core文件的大小限制: 使用  ulimit -c [kbytes] 可以设置系统允许生成的core文件大小. 如: ulimit -c 0     ---…
1 问题原因 Segmentation fault (core dumped)多为内存不当操作造成.空指针.野指针的读写操作,数组越界访问,破坏常量等.对每个指针声明后进行初始化为NULL是避免这个问题的好办法.排除此问题的最好办法则是调试. 更为详细的原因: (1)内存访问越界 a) 由于使用错误的下标,导致数组访问越界b) 搜索字符串时,依靠字符串结束符来判断字符串是否结束,但是字符串没有正常的使用结束符c) 使用strcpy, strcat, sprintf, strcmp, strcas…
http://my.oschina.net/zhouyuan/blog/118708 刚才在调试程序的时候,居然服务器502错误,昨天晚上也发生了,好像我没有做非常规的操作. 然后网上寻找了下答案, 把一些原因及解决方法汇总一下,以防生产环境下的502  会有好多种情况出现502错误,下面我们分情况来说一下. 一.fastcgi缓冲区设置过小 出现错误,首先要查找nginx的日志文件,目录为/var/log/nginx,在日志中发现了如下错误. 2013/01/17 13:33:47 [erro…
造成500错误常见原因有:ASP语法出错.ACCESS数据库连接语句出错.文件引用与包含路径出错.使用了服务器不支持的组件如FSO等. 另外,对于win2008的IIS默认不显示详细出错信息的问题以下就是重点部分了,2008默认它是不会显示详细错误的. 1.打开IIS,点全局设置中的"错误页"(注意必须是全局网站!) 2.点 右上角 的 编辑 功能设置. 2.在错误响应中,选第二项的"详细错误" 3.点确定后刷新IE就会显示详细的出错信息. 值得注意的地方:这样设置…
关于WSL的,Win10 的Linux子系统如何安装,就不赘述了,Win10商店里就有,至于win7和win8.1想装这个估计也不行,所以跳过. 最近处于好奇,也懒得弄VMware的虚拟机(那玩意儿占内存太多了),就整了个来玩下,兴奋之余也测试了一些命令行分屏工具,后来决定下来用byobu. 一.直接打开Ubuntu界面的问题 如图,原本的状态栏直接显示错误,此时我的字体是fira code(这个很重要,后面会提到.) 二.Windows Terminal下的显示 上图这样自然不是我想要的效果,…
当你发现自己的程序挂了,发现这样的一个报错, 不要慌张,它还是带有一点有用信息的.ps: 如果程序挂了,没有捕抓到这个提示,看一下/var/log/messages对应时间段有没有如下消息.memcached[10519]: segfault at 0 ip 000000000040d858 sp 00007fd9acd0b9b0 error 4 in memcached[400000+18000] 关于error number的解释,可以查看对应版本的linux内核代码的arch//mm/fa…
根据 原文来源:https://blog.csdn.net/mingjie1212/article/details/48525095 进行修改. 使用命令 dpkg-reconfigure keyboard-configuration 先找到对应的电脑的型号,DELL,AUSU等. 然后再进行键盘选择,选择English(US), 保存.…
(默认: 自动判断 (xml 或 html)) 请求失败时调用时间.参数有以下三个:XMLHttpRequest 对象.错误信息.(可选)捕获的错误对象.如果发生了错误,错误信息(第二个参数)除了得到 null 之外,还可能是 "timeout" , "error" , "notmodified" 和 "parsererror" . error事件返回的第一个参数XMLHttpRequest有一些有用的信息: XMLHttpR…
在新建文件库的时候出现的.下上传文件和更改权限,都是在报这个HRESULT:0x80131904的错误,基本所有操作都报同一个错误,如下图: 错误原因 这个问题其实就是:sharepoint配置文件(sharepoint_config.log)日志过大,占用了数据库空间,无法上传 2.解决方案: 使用sql server 的管理工具进行收缩 压缩数据库日志,先将数据库改为简单模式,如下图: 然后收缩数据库,如下图: 收缩完成后,再把数据库模式改成:完整模式 使用脚本进行收缩,如下: -- Set…
原因有两个: 1.操作系统没有改共享库 2.安装了该共享库,但是执行外部程序调用该共享库的时候,程序按照默认路径(/usr/lib./lib)找不到该共享库文件 解决方法: ubuntu系统的共享库一般安装在/usr/local/lib目录下,如果不确定,可以使用ls  /usr/local/lib查看里面是否有你需要的库文件 然后打开/etc/ld.so.conf,在文件最后添加/usr/local/lib(或者在命令行输入echo "/usr/local/lib" >>…
开篇介绍 最近经常碰到在 ETL 练习中出现这种转换失败的问题,试了多种方式,同样的代码同样的源结构和表结构但是一直不能成功执行,包报错.一般有这么几种错误: Error at DST_LOAD_DATA_FROM_FILE [OLE_DST_EMPLOYEE[109]]: The column "FirstName" cannot be processed because more than one code page (1252 and 936) are specified for…
libevent是一个使用很广泛的网络库,今天想了解下它.于是去git clone了一份源码,用vs2005的命令行:nmake -f makefile.nmake编译之,顺利编译通过,生成三个静态库:libevent.lib,libevent_core.lib,libevent_extras.lib 一切都很顺利,随便写了个test.cpp,代码如下: #include "event2/event.h" void test_libevent() { } int main(int ar…
问题: 写了一个server和一个client,UNIX套接字的,server不断接收消息并打印出来,client是一个交互程序,输入一个消息回车发送,接着又可以输入消息.出问题了:当server监听着,client第一次发送消息成功,server接收并打印出来了.client第二次发送消息没成功并且结束程序了,server没接收到消息,保持继续监听.我用GDB调试时,发现client第二次发送消息时,client收到SIGPIPE(Broken Pipe)信号.server明明还监听着,而且再…
项目上在做上传文件(清单导入)的时候产生了这个错误: 从字面上看,说的是请求的实体太大的问题,那么可以联想到是HTTP请求中的Body大小被限制了的原因. Nginx中的[client_max_body_size]配置属性 通过查资料,发现是Nginx配置中限制了请求的实体大小,因此就可以通过修改Nginx的配置文件来解决这个问题.Nginx的默认配置文件是conf目录下的nginx.conf文件,如果有自行扩展的配置文件可以在nginx.conf文件中查找include关键字去定位到相应的扩展…
在进行Qt编程的时候,有时候会将类的定义和实现都写在源文件中,如果同时在该类中使用信号/槽,那么可能就会遇到 undefined reference to vtable for "xxx::xxx"的链接错误,这是因为qmake默认不会处理cpp文件中的 Q_OBJECT导致链 接的时候缺少相应的 moc_xxx.h文件,此时,可以先用moc处理该cpp文件:moc xxx.cpp,然后讲生成的moc_xxx.h文件 包含到cpp文件中,问题就可以解决…
原因:用户家目录里面与环境变量有关的文件被删除所导致的 下面两个文件被删除导致的 .bash_profile .bashrc 解决方法:从/etc/skel把丢失的文件 复制回来就可以了 -bash-4.1$ cp /etc/skel/.bash*  ~ -bash-4.1$ logout                     ##复制回来后,登出用户,然后在登陆用户查看是否已经解决 [root@ol-40 ~]# su - lidao [lio@ol-40 ~]$…