Linux 调试错误

1.  fatal error C1189: #error :  "eh.h is only for C++!" 

.c文件转换为.cpp文件就可以了

2. error C2065: 'queue' : undeclared identifier

  需要加上 using namespace std;

3.undefined reference to 'pthread_create'

   (http://blog.csdn.net/llqkk/article/details/2854558)

 问题原因:
  pthread 库不是 Linux 系统默认的库,连接时需要使用静态库 libpthread.a,所以在使用pthread_create()创建线程,以及调用 pthread_atfork()函数建立fork处理程序时,需要链接该库。

 问题解决:
    在编译中要加 -lpthread参数
    gcc thread.c -o thread -lpthread
    thread.c为你些的源文件,不要忘了加上头文件#include<pthread.h>

4. Makefile:8: *** 遗漏分隔符 。 停止。

在Makefile文件中,另起一行时候用空格代替tab 或者没有使用tab,下面的Makefile中rm前面加上tab就好了

hello:hello.o
	gcc -o hello hello.o
hello.o:
	gcc -c hello.c
.PHONY:clean
clean:
rm hello hello.o 




posted @ 2014-06-23 09:56  StevenSuo  阅读(208)  评论(0编辑  收藏  举报