
编译
wdt3385
这个作者很懒,什么都没留下…
展开
-
【已解决】python中字符串的最后一个字符是斜杠会导致出错:SyntaxError: EOL while scanning string literal
---------------------------------搬家声明--------------------------------------本博客已搬家至个人网站 在路上 - On the way 下面的 技术 分类。你可以通过点击 更新帖子 【已解决】python中字符串的最后一个字符是斜杠会导致出错:SyntaxError: EOL while scannin转载 2013-03-27 08:45:29 · 101303 阅读 · 0 评论 -
warning: xxxx declared 'static' but never defined
一般的原因是:在.h中声明了 static 函数,但是此函数的实现在.c文件中,因为被static声明描述的函数, 不能被其他文件引用,所以会出现上面的错误!解决方法:把声明和函数体放在一块即可。转载 2012-10-31 15:19:48 · 1727 阅读 · 1 评论 -
C编译时`true' undeclared (first use in this function)
在编译C语言时有时会遇到这样的错误提示:`true' undeclared (first use in this function) or `false' undeclared (first use in this function)就是说 bool, true, false 都是undeclared,原因很简单,因为真正的C中没有这些关键字,c和早期的c++里没有关键字bool,使用转载 2012-10-19 12:43:59 · 3305 阅读 · 0 评论 -
warning: function returns address of local variable
如下的简单程序,编译时候会报错:warning: function returns address of local variable#include 原因: 函数中的局部变量存放在stack中,函数执行完成之后会自动释放,因此不应将局 部变量的指针作为返回值。 可以使用下面的方法来解决这种问题。 char *get_str(){char *str = (char转载 2012-10-19 09:35:38 · 1384 阅读 · 2 评论 -
vs断点调试需要修改的几个选项
vs不能调试其实问题在于,在空项目中不生成调试文件pdb,所以无法调试。 要让项目生成pdb文件,需要更改: 项目属性,configuration properties->linker->Generate Debug Info 从 no 改为 yes (项目属性:属性->连接器->调试->生成连接信息改为"是") 但这样还是不够的,还需要更改: 项目属性,confi转载 2012-09-25 08:38:44 · 739 阅读 · 0 评论 -
shell脚本报错说 bash解释器损坏,没有该目录或文件的解决方案
今天在翻看以前写的简单的shell脚本时,发现一个问题: 当./运行时总是提示: (bash: ./hello.sh: bin/bash: 坏的解释器: 没有那个文件或目录),但是当用sh运行时正确. 原来的脚本: (试试看你能否一眼看出错误) #!bin/bash echo "Hello Linux!" 后来几番转载 2012-09-25 10:12:32 · 5489 阅读 · 0 评论 -
如何解决warning: no newline at end of file
如何解决warning: no newline at end of file?今天写了一段代码, 是在Windows下编辑的, 保存后放在linux系统下编译.gcc和cc都产生以下的警告:a.h:1:2: warning: no newline at end of file后来发现解决这个问题产生的原因是源文件的最后一行没有回车符造成的; 解决的办法很简单, 在最后一行敲一个转载 2012-10-12 17:14:54 · 2426 阅读 · 0 评论 -
Makefile常见错误解析 - make: *** No rule to make target 'test1.o', needed by 'test2'. Stop
最常见的可能是没有正确书写test1.o对应的源文件的路径。 比如源文件名字多个空格之类的问题。转载 2012-10-11 10:59:52 · 2935 阅读 · 0 评论 -
warning: suggest parentheses around assignment used as truth value
今天在写 词法分析器的时候 用了这么一句代码 :if (atype=search(alphatp,1))结果在 gcc 编译器下居然发出了警告:warning:suggest parentheses around assignment used as truth value 郁闷!后来在网络上找了一下 看人家是这么解释的,即在C语言中 非0代表TRUE ,反之为FALSE。 a转载 2012-09-29 16:25:53 · 689 阅读 · 0 评论 -
gcc编译c语言调用mysql存储过程代码出现的问题list
1.问题:mysql.c:1:19: 错误:mysql/mysql.h:没有那个文件或目录结局:原因:没有装 mysql-devel-5.0.22-2.1.i386.rpm [root@localhost RPMS]#yum install mysql-devel2.问题:/tmp/ccyHfsX2.o(.text+0x1e): In function `main':: u转载 2012-09-29 11:24:09 · 1357 阅读 · 0 评论 -
写宏遇到的问题:warning: backslash and newline separated by space - C
转自:http://blog.youkuaiyun.com/liyongming1982/article/details/6663031 原来是因为\ 后面多了一个空格 附上一个刚刚写得调试用的例子:#define desay_debug(_string,myValue) \ do{\ c_snprintf(desay_info, \ 2转载 2012-11-05 15:27:25 · 947 阅读 · 0 评论 -
warning: multi-character character constant
That's a somewhat obscure feature which has been in C since long before ANSI/ISO; 'xxxx' is not a null-terminated character string like "xxxx" which would be stored byte-wise. It depends on your syst转载 2012-11-28 15:15:46 · 6531 阅读 · 0 评论 -
pointer targets in passing argument n of xxx differ in signedness
GCC编译出现警告test_hashtable.c:52: warning: pointer targets in passing argument 3 of ‘hash_table_insert’ differ in signednesstest_hashtable.c:61: warning: pointer targets in passing argument 2 of ‘hash转载 2012-11-29 15:35:05 · 9457 阅读 · 0 评论 -
'module' object has no attribute 'basicConfig'
I have the following code, copied from the Python manual:import loggingLOG_FILENAME = 'example.log'logging.basicConfig(filename=LOG_FILENAME,level=logging.DEBUG)logging.debug('This message s转载 2013-03-25 10:15:17 · 3365 阅读 · 0 评论 -
Linux执行.sh文件,提示No such file or directory的问题
执行.sh文件,提示No such file or directory的问题 在window平台下,写好shell脚本文件,迁移到linux平台,赋过可执行权限,执行该sh文件,却提示No such file or directory。ls 了下,确实有该文件,怎么会事呢, 难道是文件格式兼容性问题?用vim打开该sh文件,输入: [plain] :set ff www.cit.c转载 2013-03-08 16:11:27 · 1260 阅读 · 0 评论 -
configure: error: Popt libraries is required
编译安装keepalived时报错configure: error: Popt libraries is required安装下popt-devel就可以了。#yum install popt-devel转自http://bbs.51osos.com/thread-7072-1-1.html转载 2013-03-08 09:28:22 · 1247 阅读 · 0 评论 -
MySQL server has gone away 问题的解决方法
详细出处参考:http://www.jb51.net/article/23781.htm应用程序(比如PHP)长时间的执行批量的MYSQL语句。执行一个SQL,但SQL语句过大或者语句中含有BLOB或者longblob字段。比如,图片数据的处理。都容易引起MySQL server has gone away。 今天遇到类似的情景,MySQL只是冷冷的说:MySQL serv转载 2012-12-21 11:09:49 · 712 阅读 · 0 评论 -
Commands out of sync; you can't run this command now错误
如果你在你的客户代码中得到Commands out of sync; You can't run this command now,你正在以错误的次序调用客户函数! 这可能发生,例如,如果你正在使用mysql_use_result()并且在你已经调用了mysql_free_result()之前试图执行新查询。如果你在mysql_use_result()或mysql_store_result转载 2012-12-21 11:07:46 · 1278 阅读 · 0 评论 -
gcc warning: '0' flag used with ?s?printf format
代码例子:sprintf(cTmpdir,"%04s",sPkgRespcd);出现提示: warning: '0' flag used with ?s?printf format 原因如下:这个函数的格式跟printf的是差不多一样的,不过在gcc里面,好像那个0是没用的,左边不会补0,会补空格, #include int main(void) { ch原创 2012-12-19 09:09:29 · 5888 阅读 · 0 评论 -
GCC编译器的使用简介
<!--@page {margin:2cm}h3 {margin-top:0.46cm; margin-bottom:0.46cm; line-height:173%; page-break-inside:avoid}h3.western {font-family:"文鼎PL细上海宋Uni",serif; font-size:16pt}h3.cjk转载 2012-12-27 15:42:22 · 906 阅读 · 0 评论 -
warning: suggest parentheses around assignment used as truth value
今天写代码:while((row = mysql_fetch_row(res)))遇到gcc 编译器下居然发出了警告:warning:suggest parentheses around assignment used as truth value找到了解决办法如下=============================================================转载 2012-12-11 10:13:28 · 802 阅读 · 0 评论 -
undefined reference to libiconv_open
要是发生「undefined reference to libiconv_open'」之类的错误信息,,没給到要 link 的 iconv 函式库参数。 解决方法:编辑Makefile 加上 -liconv 然后重新再次 make 即可。转载 2012-11-16 13:21:18 · 1522 阅读 · 0 评论 -
warning: suggest parentheses around assignment used as truth value
今天写程序 GCC编译错误:warning: suggest parentheses around assignment used as truth value主要是因为一个低级错误:if(domain.m_writenlen== domain.rev)写成了:if(domain.m_writenlen= domain.rev)少了一个==号原创 2012-09-03 17:02:19 · 1015 阅读 · 0 评论 -
linux编译错误__new_exitfn: Assertion `l != ((void *)0)' failed
创建进程:fork(), vforl()fork():创建进程后返回两个值,分别将子进程pid返回给父进程,将0返回给子进程。子进程完全复制 父进程的资源,并独立于父进程,有良好的并发性。vfork():同上返回两个值,区别在于vfork()子进程共享父进程的地址空间,即子进程运行在父进程的地址空间上,子进程对数据的修改父进程同样能看到。特别注意,使用vfork() 时子进程中需调用e转载 2012-08-23 16:47:21 · 3447 阅读 · 0 评论 -
warning: missing braces around initializer
warning: missing braces around initializer 这主要发生在结构体中多维或多个数组初始化的时候,其错误发生的原因是没有用大括号明确的区分出初始化数据的归类,改正的方法如下例子: struct chinese_12_12 // 12*12汉字字模数据结构 { unsigned char Index[2]; uns转载 2012-07-26 10:32:51 · 1198 阅读 · 0 评论 -
format not a string literal and no format arguments
最近在linux下编译过程中,遇到如下问题,在网上也没有找到很好的解决方案,不过在做了一些尝试后,问题终于解决了,在此做个笔记~~~编译报错: error: format not a string literal and no format arguments产生该错误的环境:关键点:被编译的文件中有如下形式的代码:char *pTestStr = " this is a te转载 2012-08-09 16:18:40 · 3829 阅读 · 0 评论 -
常用GDB调试命令简表
本文转自 http://hi.baidu.com/aquaspace/blog/item/b152bfcc0dc4da1501e928d6.html 命令说明备注file 文件名在gdb中载入某可执行文件 break设置断点支持如下形式:break 行号;break 函数名称;break 行号/函数名称 if 条件转载 2012-07-24 10:03:17 · 490 阅读 · 0 评论 -
warning: pointer targets in passing argument 3 of ‘accept’ differ in signedness
The first warning tells you you have the wrong type for parameter 3 of accept. It wants a 'socklen_t *', but you are giving it an 'int *'. Declare client_length to be the right type. socklen_t l原创 2012-08-07 09:49:09 · 3040 阅读 · 0 评论 -
LINK : 没有找到 *.exe 或上一个增量链接没有生成它;正在执行完全链接
今天在编译一个程序的时候,总是出现“或上一个增量链接没有生成它;正在执行完全链接”这样的错误,到Debug目录中始终找不到生成的程序,但是在VS2005中调试执行的时候还能通过,百思不得其解。到网上查了半天也没有一个人清晰的解答出来,而且很多人都是说了一半就不说了。感觉起来应该是一个比较容易解决的问题,我想我可能犯了一个比较初级的错误,没办法,既然网上没有明晰的答案,只好自己找。结果还真的比较简单转载 2012-07-20 10:13:10 · 3559 阅读 · 1 评论 -
fatal error C1083: 无法打开包含文件:“atlapp.h”:No such file or directory
上几天下了一个VC++程序,使用VS2008打开直接编译,提示: fatal error C1083: 无法打开包含文件:“atlapp.h”:No such file or directory上网查了一下,说是没有配置第三方WTL库。WTL是什么呢?Windows Template Library (WTL) is a C++ library fo转载 2012-07-20 11:40:35 · 4363 阅读 · 0 评论 -
Ubuntu 编译程序出现/usr/bin/ld……Is a directory解决方法
http://hi.baidu.com/zhuangzi200323/blog/item/34f4f2bfa8b54d0619d81f8a.htmlUbuntu编译程序时出现下面错误/usr/bin/ld: cannot open output file browser: Is a directorycollect2: ld returned 1 exit status转载 2012-07-03 14:17:24 · 4555 阅读 · 0 评论 -
UniCode 下CString 转 char*,利用WideCharToMultiByte进行转换,中文乱码的解决方案
http://www.cnblogs.com/junyuz/archive/2011/08/24/2151857.htmlUniCode 下 CString 转 char* 的方法的文章有很多,但是大部分都是在互相转载,看了那么多资料,仍然没有解决乱码的问题,后来从一个论坛的一条回复里面找到了正确的方法,特此拿出来与大家分享。先总结一下网上找到的三种转换的方法:转载 2012-06-25 17:26:45 · 907 阅读 · 0 评论 -
VS2005中报错:cannot convert parameter 2 from 'char *' to 'LPCWSTR'
VS2005设置UNICODE或ASCII字符集问题 VS2005开发程序时,默认的字符集是Unicode。所以如果程序中使用字符常量一定要显示转换为Unicode型,否则编译时报错。如果你不希望程序支持Unicode字符集,更改项目设置就可以了。project->properties->configurations Properties -> General ->Project De转载 2012-06-25 14:55:43 · 1286 阅读 · 0 评论 -
warning: control reaches end of non-void function
用gcc编译一个程序的时候出现这样的警告:warning: control reaches end of non-void function它的意思是:控制到达非void函数的结尾。就是说你的一些本应带有返回值的函数到达结尾后可能并没有返回任何值。这时候,最好检查一下是否每个控制流都会有返回值。转载 2012-07-26 15:05:59 · 1004 阅读 · 1 评论 -
implicit declaration of function
新浪微博百度搜藏人人网腾讯微博开心网腾讯朋友更多...百度分享implicit declaration of function头文件不是可有可无的我看到有些程序员用C语言写程序的时候,不太了解头文件的作用。他们对编译器提出的警告不在乎,仅以编译、连接通过为目标,这可能会有潜在的危害。头文件定义了数据结构和函数接口头文件定义转载 2012-08-13 16:48:48 · 2676 阅读 · 0 评论 -
collect2: ld returned 1 exit status问题
用ubuntu经常会遇到这样的问题,一般检查一下也就发现问题了,但是一直没总结,今天又出现了,于是就趁机赶紧抓住机会好好研究发现。 原来,出现这个错误就是一个很简单的原因:声明的函数没有实现。也就是说,你在头文件中定义了一个函数,却没有在.cpp文件中写出函数的实现,于是就出现这样的问题了。 当然,也有可能其他情况会出现这个错误提示,等我发现时再完善吧。转载 2012-08-14 16:38:37 · 1495 阅读 · 0 评论 -
向大家推荐一个C/C++通用Makefile
http://www.iteye.com/topic/774919 本文推荐了一个用于对 C/C++ 程序进行编译和连接以产生可执行程序的通用 Makefile。 在使用 Makefile 之前,只需对它进行一些简单的设置即可;而且一经设置,即使以后对源程序文件有所增减一般也不再需要改动 Makefile。因此,即便是一个没有学习过 Makefile 书写规则的人,也可以为转载 2012-08-23 11:48:17 · 1066 阅读 · 0 评论 -
编译提示: warning C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
解决办法:把bool改成大写的BOOL后就没有警告的提示了原因:BOOL型在windef.h头文件中被定义,其实际类型为int,换句话说,BOOL其实就是int型变量,与布尔型bool没有什么关系。原创 2012-08-30 15:50:09 · 3132 阅读 · 0 评论 -
vc6.0工程转成vs2008出现的问题及结局办法(转)
直接用Visual Studio 2008的打开VC6的工作区文件和项目文件(dsw和dsp),并将其升级为VS2008的解决方案格式和项目格式(sln和vcproj),VC9的编译器相对于VC6有了很大的变化,一些编译参数和链接参数被废弃(比如/map:line),有一些改变了名称,还有新增的选项,不过不用担心,升级过程会自动对其进行转换,最终都会得到一个正确的解决方案和VC项目文件,这个过程不转载 2012-08-30 16:23:38 · 1192 阅读 · 0 评论 -
error LNK2005
转自:http://blog.sina.com.cn/s/blog_5db7b05a0100bek3.html造成LNK2005错误主要有以下几种情况: 1.重复定义全局变量。可能存在两种情况: A、对于一些初学编程的程序员,有时候会以为需要使用全局变量的地方就可以使用定义申明一下。其实这是错误的,全局变量是针对整个工程的。正确的应该是在一个CPP文件中定义如下转载 2012-08-30 15:51:23 · 921 阅读 · 0 评论