我正在尝试使用makefile来编译其他人使用cygwin编写的程序。我收到很多错误消息,其中很多人抱怨error: template with C linkage
。
在搜索了一下之后,似乎问题与extern "C"
. 此行包含在文件cygwin/usr/include/pthread.h中,该文件包含#include < pthread.h >
在其中一个标题中。当我删除此行时,大多数错误消息都会消失。但是还剩下一些,如下所示:
/usr/include/pthread.h:67:5: error: previous declaration of ‘int pthread_atfork(void (* )(),void ( *)(), void ( *)())’ with ‘C++’ linkage
/usr/include/sys/unistd.h:136:5: error: conflicts with new declaration with ‘C’ linkage
有谁知道如何解决这一问题?我很想坐下来详细学习所有这些东西,但是在我需要运行这个程序之前我没有时间。