在WindowsXP(32位)的系统上编译64位的应用程序,出现了下面这行错误:
nafxcwd.lib(nolib.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'说明:可以排除没装64位编译器的问题,因为在某些工程中编译成功了
还有这个工程是Static的,并且不能更改为Share的。我个人觉得与nafxcwd.lib有很大关系,这个lib文件是32位用的,但我没有在环境中找到对应的64位lib文件。Microsoft SDK也装了,其中的x64目录下也没有类似的文件名。编译器的Platform已设为 x64,是否还需其他设置?这个问题在网上找了半天,方法都试了,不管用,请大家不吝赐教。

解决方案 »

  1.   

    LZ看看这个
    http://topic.csdn.net/u/20080806/15/7c0ed492-2736-4161-af16-bc1b669c3e23.html
      

  2.   

    这个帖子我看过了,没什么帮助
    Platform设置为x64之后,link中会自己转为64位的
      

  3.   

    我的程序是DLL的工程,有64位编译器就可以了吧,并不在本机看执行结果。
      

  4.   

    你的VC是哪个版本,64位编译器是怎么安装的?看起来是没有安装x64的MFC静态库。
      

  5.   

    问题解决了,原来是安装时,没有选择x64的库,所以导致了找不到合适的lib文件谢谢大家参与,结帖啦!