8125|21

76

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

将原来是Pocket PC2003(ARMV4)的代码改为Windows CE(x86)并用VS2005(vc++)编译出错:fatal error LNK11 [复制链接]

公司要求:
要把原来用来放在Pocket PC 2003(ARMV4)的代码重新编译成Windows CE 5.0(x86)程序,
并需要放在Windows CE 5.0 Emulator(模拟器)里运行,

先安装Windows CE 5.0 STANDARD_SDK,
然后,重新用VS2005(vc++)重新建立一个project:  
New Project, Visual C++ -->  Smart Device -->  Win32 Smart Device Project
--> Select platform SDK(STANDARDSDK_500  Instruction sets:  ARMV4I, x86, SH4, MIPSII, MIPSII_FP, MIPSIV, MIPSIV_FP)
--> 选择Empty Project
建立空工程,并把原来的source/header/resource文件加载过来,

编译,
出错:
fatal error LNK1112: module machine type 'ARM' conflicts with target machine type 'X86'

在网上找了这个错误相关的问题,
但是还是解决不了,特向大家求教,
希望高手不吝赐教!!!


也可以在这个帖子里领分:http://topic.eeworld.net/u/20080308/12/dceabb96-e6c2-4c41-9d84-0e4cff0413d8.html
此帖出自ARM技术论坛

最新回复

看来除了重新编译lib文件是没办法了, http://msdn2.microsoft.com/en-us/library/ms911383.aspx 揭帖,散分!  详情 回复 发表于 2008-3-12 10:16
点赞 关注
 

回复
举报

94

帖子

0

TA的资源

一粒金砂(初级)

沙发
 
CPU类型不匹配,说明LZ的工程中有已经是ARM的目标文件
此帖出自ARM技术论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
要怎样改为X86的呢?

此帖出自ARM技术论坛
 
 
 

回复

82

帖子

0

TA的资源

一粒金砂(初级)

4
 
的确,

链接的时候错误信息如下:

1>------ Build started: Project: SDP_DBRApp, Configuration: Debug STANDARDSDK_500 (x86) ------
1>Linking...
1>DBRLib.lib(LocationMsg.obj) : fatal error LNK1112: module machine type 'ARM' conflicts with target machine type 'X86'
1>Build log was saved at "file://d:\TestDBRLib\SDP_DBRApp\SDP_DBRApp\STANDARDSDK_500 (x86)\Debug\BuildLog.htm"
1>SDP_DBRApp - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


我查了一下,没发现LocationMsg.obj这个文件。
此帖出自ARM技术论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

5
 
Project properties > Linker > Advanced and choose the target machine as MachineX86 (/MACHINE:X86)
这样也不行,
还是提示错误。


关键是这样的,
这个源代码是从ARM工程里取出来原封不动的放在x86工程里的,

就相当于把原来是Pocket PC 2003(ARMV4)的工程直接改为STANDARDSDK_500(x86)

不知道这样改行不?
我感觉会不会有指令集不符等问题,所以链接的时候vs2005报错。
此帖出自ARM技术论坛
 
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

6
 
没有人回呢?
此帖出自ARM技术论坛
 
 
 

回复

75

帖子

0

TA的资源

一粒金砂(初级)

7
 
Project properties >  Linker >  Command line里把底下的附加选项内容去掉
此帖出自ARM技术论坛
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

8
 
谢谢,我明天去公司试试bzjing所说的方法!

大家也可以看看这个链接:
http://topic.eeworld.net/u/20080308/12/dceabb96-e6c2-4c41-9d84-0e4cff0413d8.html
此帖出自ARM技术论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

9
 
bzjing,试了你的方法,
还是一样的效果!

(LocationMsg.obj) : fatal error LNK1112: module machine type 'ARM' conflicts with target machine type 'X86'
此帖出自ARM技术论坛
 
 
 

回复

71

帖子

0

TA的资源

一粒金砂(初级)

10
 
其实,简单地说,就是把原来用于PPC(ARMV4)的代码改为WinCE5.00(x86),
并使编译后的exe文件可以在模拟器(Emulator Windows CE)上运行,
此帖出自ARM技术论坛
 
 
 

回复

67

帖子

0

TA的资源

一粒金砂(初级)

11
 
所有项目的模块都需要重新编译成x86的。

我估计是你还用到了别的dll。但是该dll没有重新编译。
此帖出自ARM技术论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

12
 
那就只有DBRLib.lib
此帖出自ARM技术论坛
 
 
 

回复

62

帖子

0

TA的资源

一粒金砂(初级)

13
 
所有的东西都需要在X86下重新编译才可以。
此帖出自ARM技术论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

14
 
这样的话看来是不行了,

DBRLib.lib是原本带的包,
我这里没办法重新编译,

看来除了重新编译DBRLib.lib是没办法了,
此帖出自ARM技术论坛
 
 
 

回复

69

帖子

0

TA的资源

一粒金砂(初级)

15
 
好像没有其他办法了。

此帖出自ARM技术论坛
 
 
 

回复

78

帖子

0

TA的资源

一粒金砂(中级)

16
 
有没有Windows CE Emulator支持ARM的?

目前在网上找到Emulator for Windows CE 5.00只支持x86,

不支持PPC(ARMV4)下编译的程序。
此帖出自ARM技术论坛
 
 
 

回复

65

帖子

0

TA的资源

一粒金砂(初级)

17
 
lenux,
你是做WinCE哪方面开发的?

像我这种菜鸟有公司招吗,
此帖出自ARM技术论坛
 
 
 

回复

89

帖子

0

TA的资源

一粒金砂(初级)

18
 
ce 5.0 的emulator是可以支持armv4i的。
也不支持armv4?

此帖出自ARM技术论坛
 
 
 

回复

66

帖子

0

TA的资源

一粒金砂(初级)

19
 
是这个吗?
/*******************************************
Emulator for Windows CE

Virtual x86 Hardware Reference Board
Provided by Microsoft Corporation

Version 5.3.0.26

*******************************************/

我目前装的就是这个,
很多可以在PPC下运行的程序在这里都不行,
此帖出自ARM技术论坛
 
 
 

回复

80

帖子

0

TA的资源

一粒金砂(初级)

20
 
上面的那个信息是在“About”里的。
此帖出自ARM技术论坛
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表