xTIMEcomposer xpcaobj: error: Cannot open *pca.xml.decouple

Technical questions regarding the XTC tools and programming with XMOS.
Post Reply
ffomich
Experienced Member
Posts: 119
Joined: Mon Sep 15, 2014 1:32 pm

xTIMEcomposer xpcaobj: error: Cannot open *pca.xml.decouple

Post by ffomich »

Hi,

I try to add ASRC from lib_src to the sw_usb_audio_6.15.2rc1 project.
I use xTIMEcomposer 14.2.4 and get build error:

Code: Select all

xmake CONFIG=2ioxs_swSRC all 
Checking build modules
Using build modules: module_dfu lib_i2c(4.0.0) module_spdif_rx module_spdif_tx module_usb_audio module_usb_device module_usb_shared module_xud lib_otpinfo(2.0.1) lib_src(1.1.0) lib_xassert(3.0.0) lib_logging(2.1.0)
...
Analyzing XUD_EpFuncs.S
Analyzing src_ff3_fir_inner_loop_asm.S
Analyzing src_ff3v_fir.S
Analyzing src_ff3v_ds3_voice.S
xpcaobj: error: Cannot open "../.build_2ioxs_swSRC/_l_src/src/fixed_factor_of_3_voice/ds3_voice/src_ff3v_ds3_voice.S.pca.xml.decouple"
xmake[1]: *** [.build_2ioxs_swSRC/_l_src/src/fixed_factor_of_3_voice/ds3_voice/src_ff3v_ds3_voice.S.pca.xml.decouple] Error 1
xmake: *** [analyze] Error 2
How can I fix this error?

There is no errors wnen I build original example: lib_src/examples/AN00231_ASRC_SPDIF_TO_DAC/.


robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

Hi ffomich,
1. Are you getting the error even after running 'xmake clean' (or even deleting the .build* directory manually).
2. Also, what OS are you using? - it looks like non windows... so not the MAX_PATH=260 problem.
3. Does the file exist if you look for it?
(I don't believe 'all' has any affect - it is the implicit rule...)

Here's a explanation of what this file is:
The <source.ext>.pca.xml file is a build artefact that stores meta info (viz Analyzing) about a source file - and this is used during whole-file-optimisation.
By default 'make' uses timestamps rather than checking that file content have changed - we decouple non-change-updates by comparing the contents of <source.ext>.pca.xml with <source.ext>.pca.xml.decouple!
Without this decoupling, there would be needless rebuilding of 'other files' - it is the content of the <>.pca.xml that is important, not it's timestamp.

Could you add '-v' to your Makefile XCC_FLAGS & module_build_info MODULE_ XCC_FLAGS and rebuild.
From the verbose listing, it should be possible to trace the creation of artefacts... or the lack of creation.
(running xmake serveral times before capturing the trace may result in a shorter trace)

robert
p.s. have you tried 14.3?
ffomich
Experienced Member
Posts: 119
Joined: Mon Sep 15, 2014 1:32 pm

Post by ffomich »

robertxmos wrote: p.s. have you tried 14.3?
Yes,
I got another error description

Code: Select all

xcc1: internal compiler error
Failed in ..\FrontEnd\Lowering\lower_combined_pars.cpp, line 187
	info->stateObj
For bug reporting instructions, please see:
http://www.xmos.com/support
xmake[1]: *** [.build_2ioxs_swSRC/_m_usb_audio/main.xc.o] Error 1
xmake: *** [bin/2ioxs_swSRC/app_xe2x3x24_v2_2ioxs_swSRC.xe] Error 2
robertxmos wrote: 1. Are you getting the error even after running 'xmake clean' (or even deleting the .build* directory manually).
Yes, I tried xTc menu->Project->Clean & delete .build* directory manually. In both cases I got build error.
robertxmos wrote: 2. Also, what OS are you using? - it looks like non windows... so not the MAX_PATH=260 problem.
Windows 7 x64 Pro SP1
Full path length of .build_2ioxs_swSRC\_l_src\src\fixed_factor_of_3_voice\ds3_voice\ has 140 symbols.
robertxmos wrote: 3. Does the file exist if you look for it?
(I don't believe 'all' has any affect - it is the implicit rule...)
Yes, file exists.
Could you add '-v' to your Makefile XCC_FLAGS & module_build_info MODULE_ XCC_FLAGS and rebuild.
With '-v' in Makefile and module_build_info xcc1llvm.exe crashes.

Code: Select all

Compiling debug_printf.c
 "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\libexec/xcc2clang.exe" -E --target=xcore -march=xs2a -xc "-DFLASH_MAX_UPGRADE_SIZE=64*1024" "-Wall" "-DXSCOPE" "-DXUD_SERIES_SUPPORT=4" "-DUSB_TILE=tile[1]" "-DADAT_TX_USE_SHARED_BUFF=1" "-DQUAD_SPI_FLASH=1" "-DCONFIG_VER=0x10" "-DAUDIO_CLASS=2" "-DDFU=1" "-DMIDI=0" "-DSPDIF_TX=1" "-DSPDIF_RX=1" "-DMAX_FREQ=192000" "-DI2S_CHANS_DAC=4" "-DI2S_CHANS_ADC=2" "-DNUM_USB_CHAN_OUT=6" "-DNUM_USB_CHAN_IN=4" "-DMIXER=0" "-DMAX_MIX_COUNT=4" "-DMIXER_ROUTING=0" "-DDS_BOARD=1" "-DDAC_HW=1" "-DCLK_LED=1" "-DHW_SRC=1" "-DINPUT_SW_SRC=1" "-DCONFIG=2ioxs_swSRC" "-std=gnu99" "-Wall" "-O3" "-gdwarf-3" "-Os"  -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/clang" -DXCC_VERSION_YEAR=14 -DXCC_VERSION_MONTH=3 -DXCC_VERSION_MAJOR=1403 -DXCC_VERSION_MINOR=0 -D__XCC_HAVE_FLOAT__ "-D_PLATFORM_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xe2x3x24_v2.h\"" "-D_XSCOPE_PROBES_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xscope_probes.h\"" "@_iflag.rsp" -o "debug_printf.i" "C:/Users/Admin/Desktop/XMOS/ws_xTIME_14_2/USB Audio Network/lib_logging/src/debug_printf.c"
 "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\libexec/xcc2clang.exe" -S --target=xcore -march=xs2a -xc "-DFLASH_MAX_UPGRADE_SIZE=64*1024" "-Wall" "-DXSCOPE" "-DXUD_SERIES_SUPPORT=4" "-DUSB_TILE=tile[1]" "-DADAT_TX_USE_SHARED_BUFF=1" "-DQUAD_SPI_FLASH=1" "-DCONFIG_VER=0x10" "-DAUDIO_CLASS=2" "-DDFU=1" "-DMIDI=0" "-DSPDIF_TX=1" "-DSPDIF_RX=1" "-DMAX_FREQ=192000" "-DI2S_CHANS_DAC=4" "-DI2S_CHANS_ADC=2" "-DNUM_USB_CHAN_OUT=6" "-DNUM_USB_CHAN_IN=4" "-DMIXER=0" "-DMAX_MIX_COUNT=4" "-DMIXER_ROUTING=0" "-DDS_BOARD=1" "-DDAC_HW=1" "-DCLK_LED=1" "-DHW_SRC=1" "-DINPUT_SW_SRC=1" "-DCONFIG=2ioxs_swSRC"  -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/clang"  -DXCC_VERSION_YEAR=14 -DXCC_VERSION_MONTH=3 -DXCC_VERSION_MAJOR=1403 -DXCC_VERSION_MINOR=0 -D__XCC_HAVE_FLOAT__ "-D_PLATFORM_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xe2x3x24_v2.h\"" "-D_XSCOPE_PROBES_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xscope_probes.h\"" "-std=gnu99" "-Wall" "-O3" "-gdwarf-3" "-Os" "@_iflag.rsp" -o "debug_printf.s" "C:/Users/Admin/Desktop/XMOS/ws_xTIME_14_2/USB Audio Network/lib_logging/src/debug_printf.c"
 xas.exe -march=xs2a -o "../.build_2ioxs_swSRC/_l_logging/src/debug_printf.c.o" "-g" "debug_printf.s"
Compiling 3wire.xc
 "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\libexec/xcc1llvm.exe" -E -march=xs2a "-DFLASH_MAX_UPGRADE_SIZE=64*1024" "-Wall" "-DXSCOPE" "-DXUD_SERIES_SUPPORT=4" "-DUSB_TILE=tile[1]" "-DADAT_TX_USE_SHARED_BUFF=1" "-DQUAD_SPI_FLASH=1" "-DCONFIG_VER=0x10" "-DAUDIO_CLASS=2" "-DDFU=1" "-DMIDI=0" "-DSPDIF_TX=1" "-DSPDIF_RX=1" "-DMAX_FREQ=192000" "-DI2S_CHANS_DAC=4" "-DI2S_CHANS_ADC=2" "-DNUM_USB_CHAN_OUT=6" "-DNUM_USB_CHAN_IN=4" "-DMIXER=0" "-DMAX_MIX_COUNT=4" "-DMIXER_ROUTING=0" "-DDS_BOARD=1" "-DDAC_HW=1" "-DCLK_LED=1" "-DHW_SRC=1" "-DINPUT_SW_SRC=1" "-DCONFIG=2ioxs_swSRC"  -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/xc" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/clang" -D__xcore__ -D__XS2A__ -DXCC_VERSION_YEAR=14 -DXCC_VERSION_MONTH=3 -DXCC_VERSION_MAJOR=1403 -DXCC_VERSION_MINOR=0 -D__XCC_HAVE_FLOAT__ "-D_PLATFORM_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xe2x3x24_v2.h\"" "-D_XSCOPE_PROBES_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xscope_probes.h\"" "@_iflag.rsp" -o "3wire.xi" "../src/extensions/3wire.xc"
 "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\libexec/xcc1llvm.exe" "-DFLASH_MAX_UPGRADE_SIZE=64*1024" "-Wall" "-DXSCOPE" "-DXUD_SERIES_SUPPORT=4" "-DUSB_TILE=tile[1]" "-DADAT_TX_USE_SHARED_BUFF=1" "-DQUAD_SPI_FLASH=1" "-DCONFIG_VER=0x10" "-DAUDIO_CLASS=2" "-DDFU=1" "-DMIDI=0" "-DSPDIF_TX=1" "-DSPDIF_RX=1" "-DMAX_FREQ=192000" "-DI2S_CHANS_DAC=4" "-DI2S_CHANS_ADC=2" "-DNUM_USB_CHAN_OUT=6" "-DNUM_USB_CHAN_IN=4" "-DMIXER=0" "-DMAX_MIX_COUNT=4" "-DMIXER_ROUTING=0" "-DDS_BOARD=1" "-DDAC_HW=1" "-DCLK_LED=1" "-DHW_SRC=1" "-DINPUT_SW_SRC=1" "-DCONFIG=2ioxs_swSRC"  -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/xc" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include" -isystem "C:\Program Files (x86)\XMOS\xTIMEcomposer\Community_14.3.0\target/include/clang"  -D__xcore__ -D__XS2A__ -DXCC_VERSION_YEAR=14 -DXCC_VERSION_MONTH=3 -DXCC_VERSION_MAJOR=1403 -DXCC_VERSION_MINOR=0 -D__XCC_HAVE_FLOAT__ "-D_PLATFORM_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xe2x3x24_v2.h\"" "-D_XSCOPE_PROBES_INCLUDE_FILE=\"C:\\Users\\Admin\\Desktop\\XMOS\\ws_xTIME_14_2\\USB Audio Network\\app_xe2x3x24_v2\\.build_2ioxs_swSRC\\xscope_probes.h\"" "-fcomment-asm" "-Wall" "-O3" "-fsubword-select" "-g" "-version" "-analysis" "../.build_2ioxs_swSRC/pca.xml" -march=xs2a "@_iflag.rsp" -o "3wire.s" "../src/extensions/3wire.xc"
xmake[1]: *** [.build_2ioxs_swSRC/src/extensions/3wire.xc.o] Error 1
xmake: *** [bin/2ioxs_swSRC/app_xe2x3x24_v2_2ioxs_swSRC.xe] Error 2
robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

Hi ffomich,
xcc1: internal compiler error
Failed in ..\FrontEnd\Lowering\lower_combined_pars.cpp, line 187
info->stateObj
sorry - that is a known bug due to cyclical specialization in the compiler - not nice.
It can be side-stepped by turning off the analysis:

Code: Select all

# In makefile add...
ENABLE_STAGED_BUILD=0
Back to your original issue:
There are two limits under windows:
  • MAX_PATH=260
    maximum command line length (8191 characters)
I am now considering if you are getting truncation of a command line generated by the makefile
(and yes, projects pulling in lots of modules can get very long)

I notice the command line posted is for 14.3.0 tools (where the command line is shorted by using "@_iflag.rsp").
Could you check the failing '-v' command line for 14.2.4 tools is less than 8191 characters.

The fix in both cases is the same - reduce path lengths by placing your project near to a drive/mount.
viz create a mount at your project root directory and then work from the mount letter (I would need to google for how to do this).

robert
ffomich
Experienced Member
Posts: 119
Joined: Mon Sep 15, 2014 1:32 pm

Post by ffomich »

robertxmos wrote: I notice the command line posted is for 14.3.0 tools (where the command line is shorted by using "@_iflag.rsp").
Could you check the failing '-v' command line for 14.2.4 tools is less than 8191 characters.
In 14.2.4 tool xcc1llvm.exe command line length is 7552 symbols.
robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

...but you may find an earlier command line, that should have generated an artefact, was a little bit longer - hence truncated.
Without looking at the full trace (sorting the lines by line length to identify truncation and its affects) it is difficult to comment further (or is this the longest?)
I would advise shorting your paths by shortening the projects absolute path would be a good things even if this does not fix this problem.
ffomich
Experienced Member
Posts: 119
Joined: Mon Sep 15, 2014 1:32 pm

Post by ffomich »

Hi robertxmos,
thanks for your advice.

I have tried shorter path but it haven't solved problem.

I use lib_src-1.1.0rc1 from git/xcore. My project Makefile has some build configuration. All of them exept the new one with SRC have no build errors. But errors appear when I add lib_src to the USED_MODULES in the project Makefile and build project.
So I suppose problem is in the lib_src.

I downgrade to the XMOS release lib_src-1.0.0 and it solve build problem.
robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

Without the full trace it is impossible to diagnose your issue.
But I am happy that you have a solution.
robert
Post Reply