no such file or directory: @_iflag.rsp

Technical questions regarding the XTC tools and programming with XMOS.
User avatar
data
Active Member
Posts: 43
Joined: Wed Apr 06, 2011 8:02 pm

no such file or directory: @_iflag.rsp

Post by data »

I have just tried 14.3.0 for the first time on some code which has been compiling under 14.2.4. Under 14.3.0, with
ENABLE_STAGED_BUILD = 0
, the build emits the following error many times:

Code: Select all

xcc2clang: error: no such file or directory: '@_iflag.rsp'
and the build seems to go in an infinite loop.

With
ENABLE_STAGED_BUILD = 1
, the above error appears once, when analyzing a certain C++ file, and the build fails.

Does anyone have any idea what this might be?
robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

Hi

The way sub tools (e.g. xcc2clang) are run has changed (the command line) between 14.2 and 14.3.
Some of the arguments (viz include files flags) are now listed in a file (_iflag.rsp) and an argument to this file sent to the sub tool (@_iflag.rsp).
The problem you have is that the _iflag.rsp has not been created by the build script and xcc2clang is complaining as it expected to fine it!
You need to start afresh by doing

Code: Select all

make clean
to remove the artefacts created under 14.2 before recreating them under 14.3.

robert
User avatar
data
Active Member
Posts: 43
Joined: Wed Apr 06, 2011 8:02 pm

Post by data »

Thanks for this information! I have tried "make clean" and also manually removing the .build directory, but the result is the same.

Perhaps the build flags are interfering? Here is the top-level Makefile (superfluous comments and certain module references removed):

Code: Select all

XCOMMON_DISABLE_AUTO_MODULE_SEARCH = 1
XMOS_MODULE_PATH = ..
ENABLE_STAGED_BUILD = 1
VERBOSE = 0

TARGET = sys
APP_NAME =
INCLUDE_DIRS =
OPTIONAL_HEADERS =

XCC_FLAGS = $(BUILD_FLAGS) -DFLASH_MAX_UPGRADE_SIZE=64*1024 -fcomment-asm -Wall -Os -fsubword-select -save-temps -g -DXUD_SERIES_SUPPORT=4 -march=xs2a #-DUSB_TILE=sys_usb_tile
XCC_CPP_FLAGS = $(XCC_FLAGS) -std=c++11 -Wno-c++11-extensions -fno-rtti
XCC_MAP_FLAGS = $(XCC_FLAGS) -Xmapper --map -Xmapper MAPFILE -report -lflash
USED_MODULES = # ... (removed)
MODULE_LIBRARIES =

XMOS_MAKE_PATH ?= ../..
include $(XMOS_MAKE_PATH)/xcommon/module_xcommon/build/Makefile.common
robertxmos
XCore Addict
Posts: 169
Joined: Fri Oct 23, 2015 10:23 am

Post by robertxmos »

Doh!
Are you running 'make' or 'xmake'?
Most computers are shipped with an earlier version of make than is required.

Try:

Code: Select all

xmake clean
xmake
(my mistake above too!)

The next release (14.3.1) will report if you try to use 'make' instead of 'xmake'!

robert

p.s. if you are still having trouble, please add '-v' into the list of flags and post the command line output (hopefully not too long)
User avatar
data
Active Member
Posts: 43
Joined: Wed Apr 06, 2011 8:02 pm

Post by data »

Robert -- that was it! I have been in the very regrettable habit of running 'make' instead of 'xmake'.

Now the build proceeds, but fails with an internal compiler error, on a file which 10.2.4 compiles successfully:

Code: Select all

xcc1: internal compiler error
Failed in /Users/Shared/buildbot/slave/tools/osx_10_9_nightly_rel_14_3/build/sb/tools_xcc1_c_llvm/BackEnd/LLVM/llvmgen.cpp, line 1833
	!isTypeTileRef(outgoingType)
but that is perhaps off-topic.

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

Post by robertxmos »

That's not good.
I would be pleased to receive example code - I assume it will be code containing 'on tile[]' expressions.
Hopefully there will be a trivial work around.
Indeed it looks like it should have been syntactically disallowed - but it would be interesting to see why the compiler has failed you.
robert