看我有像
这样的代码#include<stdio.h>
#include<pthread.h>
#include<string.h>
void* thread_function(void)
{
printf ("This is thread %d \n",pthread_self())
}
int main(int argc,char *argv[])
{
pthread_t thread_id[argc-1];
int i;
int status;
printf("argc is %d ",argc-1);
for(i=0;i<argc-1;i++)
{
pthread_create (&thread_id[i], NULL , &thread_function, NULL);
}
for(i=0;i<argc-1;i++)
pthread_join(thread_id[i],NULL);
}
现在我已经通过 MinGw编译器gcc.exe 4.6.1 编译并获取a.exe现在我想问你这个a.exe是否可以在其他Windows机器上运行MinGW没有安装?
修改: 当我通过Cygwin编译器编译这个代码并在没有cygwin的其他Windows机器上运行它的二进制文件时它不会运行..那些cygwin.dll缺少类似的错误
答案 0 :(得分:4)
如果我没记错的话,它应该只依赖于Microsoft CRT(msvcrt.dll,可能是Windows上最老的版本之一)和其他系统标准dll(kernel32.dll&amp; co。),但你可以很容易地通过使用Dependency Walker检查可执行文件,自行检查。