我正在使用Wind River Workbench 3.3和VxWorks 6.8。当从命令行使用构建时一切正常,但是当我尝试在Workbench中构建时,我会收到错误。在尝试跟踪它时,我已确定使用我们的板支持包和gnu工具链创建新的VxWorks图像项目时会出现同样的问题。
我创建了一个新项目,并尝试在default_romCompress构建规范中构建它。我收到以下错误。
romInit.o: In function `delay_100us': C:/WindRiver/vxworks-6.8/target/config/mrim/romInit.s:649: undefined reference to `romStart' C:/WindRiver/vxworks-6.8/target/config/mrim/romInit.s:650: undefined reference to `romStart' make.exe[1]: *** [vxWorks_romCompress] Error 1 rm ipcom_ipdomain make.exe[1]: Leaving directory `D:/WindRiverWorkbench/Test/default_romCompress' C:\WindRiver\utilities-1.0\x86-win32\bin\make.exe: *** [target_vxWorks] Error 2 Build Failed in Project 'Test' (Process Exit Value was 2): 2014-01-14 17:22:11 (Elapsed Time: 00:06)
符号romStart在romStart.c中定义,它是项目的一部分。当我尝试只编译romStart.c时,我得到以下输出。
Build Started in Project 'Test': 2014-01-15 08:57:25 Generation of makefiles started. Generation of makefiles finished (Elapsed Time: 00:00). Platform: Wind River VxWorks 6.8 Command: make BUILD_SPEC=default_romCompress DEBUG_MODE=0 TRACE=1 default_romCompress/romStart.o Working Directory: D:/WindRiverWorkbench/Test make.exe[1]: Entering directory `D:/WindRiverWorkbench/Test' make.exe[2]: Entering directory `D:/WindRiverWorkbench/Test/default_romCompress' ccppc -c -DCPU_VARIANT=_ppc860 -g -msoft-float -mstrict-align -ansi -fno-builtin -Wall -D_VSB_CONFIG_FILE=\"C:/WindRiver/vxworks-6.8/target/lib/h/config/vsbConfig.h\" -mcpu=860 -I.. -IC:/WindRiver/vxworks-6.8/target/config/mrim -IC:/WindRiver/vxworks-6.8/target/h -IC:/WindRiver/vxworks-6.8/target/config/comps/src -IC:/WindRiver/vxworks-6.8/target/h/wrn/coreip -IC:/WindRiver/vxworks-6.8/target/src/drv -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=sfgnu -DPRJ_BUILD -D_WRS_KERNEL -IC:/WindRiver/components/windml-5.3/h -IC:/WindRiver/components/webservices-1.7/h -IC:/WindRiver/components/webcli-4.8/target/h -IC:/WindRiver/components/opc-3.2/h -IC:/WindRiver/components/dcom-2.3/h -IC:/WindRiver/components/windml-5.3/osconfig/vxworks/src -IC:/WindRiver/components/ip_net2-6.8/osconfig/vxworks/src -IC:/WindRiver/components/windml-5.3/osconfig/vxworks/h -IC:/WindRiver/components/ip_net2-6.8/osconfig/vxworks/h -IC:/WindRiver/vxworks-6.8/target/src/hwif -IC:/WindRiver/vxworks-6.8/target/src/hwif/h @./ipcom_ipdomain -DIP_PORT_VXWORKS=68 -DINET -UCPU -DCPU=PPC860 -I. -MD -fvolatile -G8 -msdata=eabi -DROM_COMPRESS -DRAM_DATA_ADRS=0x00e00000 -DRAM_DST_ADRS=0x00010000 C:/WindRiver/vxworks-6.8/target/config/comps/src/romStart.c -o romStart.o ccppc: @./ipcom_ipdomain: No such file or directory make.exe[2]: *** [romStart.o] Error 1 make.exe[2]: Leaving directory `D:/WindRiverWorkbench/Test/default_romCompress' make.exe[1]: *** [compile_romStart.o] Error 2 make.exe[1]: Leaving directory `D:/WindRiverWorkbench/Test' C:\WindRiver\utilities-1.0\x86-win32\bin\make.exe: *** [default_romCompress/romStart.o] Error 2 Build Failed in Project 'Test' (Process Exit Value was 2): 2014-01-15 08:57:26 (Elapsed Time: 00:01)
但是,如果我第二次尝试编译romStart.c,那么它就会成功
如果我再次尝试构建项目(不干净而不是重建),那么它会再次失败并输出以下内容。
Build Started in Project 'Test': 2014-01-15 08:58:36 Generation of makefiles started. Generation of makefiles finished (Elapsed Time: 00:00). Platform: Wind River VxWorks 6.8 Command: make BUILD_SPEC=default_romCompress DEBUG_MODE=0 TRACE=1 Working Directory: D:/WindRiverWorkbench/Test building default vxWorks image of D:/WindRiverWorkbench/Test make.exe[1]: Entering directory `D:/WindRiverWorkbench/Test/default_romCompress' cp vxWorks vxWorks.o true vxWorks.o objcopyppc -O binary --binary-without-bss vxWorks.o tmp.bin VX_CPU_FAMILY=ppc C:/WindRiver/vxworks-6.8/host/x86-win32/bin/deflate < tmp.bin > tmp.Z Deflation: 53.98% VX_CPU_FAMILY=ppc C:/WindRiver/vxworks-6.8/host/x86-win32/bin/binToAsm tmp.Z > vxWorks.Z.s ccppc -c -DCPU_VARIANT=_ppc860 -g -msoft-float -mstrict-align -ansi -fno-builtin -xassembler-with-cpp -D_VSB_CONFIG_FILE=\"C:/WindRiver/vxworks-6.8/target/lib/h/config/vsbConfig.h\" -mcpu=860 -I.. -IC:/WindRiver/vxworks-6.8/target/config/mrim -IC:/WindRiver/vxworks-6.8/target/h -IC:/WindRiver/vxworks-6.8/target/config/comps/src -IC:/WindRiver/vxworks-6.8/target/h/wrn/coreip -IC:/WindRiver/vxworks-6.8/target/src/drv -DCPU=PPC32 -DTOOL_FAMILY=gnu -DTOOL=sfgnu -DPRJ_BUILD -D_WRS_KERNEL -IC:/WindRiver/components/windml-5.3/h -IC:/WindRiver/components/webservices-1.7/h -IC:/WindRiver/components/webcli-4.8/target/h -IC:/WindRiver/components/opc-3.2/h -IC:/WindRiver/components/dcom-2.3/h -IC:/WindRiver/components/windml-5.3/osconfig/vxworks/src -IC:/WindRiver/components/ip_net2-6.8/osconfig/vxworks/src -IC:/WindRiver/components/windml-5.3/osconfig/vxworks/h -IC:/WindRiver/components/ip_net2-6.8/osconfig/vxworks/h -IC:/WindRiver/vxworks-6.8/target/src/hwif -IC:/WindRiver/vxworks-6.8/target/src/hwif/h @./ipcom_ipdomain -DIP_PORT_VXWORKS=68 -DINET -UCPU -DCPU=PPC860 -I. -MD vxWorks.Z.s -o vxWorks.Z.o ccppc: @./ipcom_ipdomain: No such file or directory make.exe[1]: *** [vxWorks_romCompress] Error 1 make.exe[1]: Leaving directory `D:/WindRiverWorkbench/Test/default_romCompress' C:\WindRiver\utilities-1.0\x86-win32\bin\make.exe: *** [target_vxWorks] Error 2 Build Failed in Project 'Test' (Process Exit Value was 2): 2014-01-15 08:58:37 (Elapsed Time: 00:01)
有人可以建议我如何解决这些问题吗?