Redirection fail to generate to proper folder

Hi everyone,

Something that I find strange, I’ll like to know if anyone has come across to this situation with the redirection file when the IDE is generating code to the wrong folder. All the files of the binary and source are generated to the Source folder instead towards the desired folder assign in the redirection file. Is there any other place where the redirection is set? Why is Clarion generating code to a location where it is not assigned in the redirection file?
Within the Clarion110.red In the release section, this is what I’ve assigned. I should see all the CLW and INC files within _Source, the OBJ RSC LIB *.FileList.xml and RES in obj\release in map\release. How come it does not?

[Release]
– Directories only used when building with Release configuration

*.obj = obj\release
*.res = obj\release
*.rsc = obj\release
*.lib = obj\release
*.FileList.xml = obj\release
*.map = map\release
*.inc = ._Source
*.clw = ._Source

Have you tried not using the underscore?

Have you got a template which is changing the output destination?

Whats the full order of your redirection file?

I should know this because I have a template which edits the redirection file and moves the output to different locations, but some hackers who like to troll me in public have buggered it up so without repairing the template I cant say for sure!

1 Like

Possibly the leading period “.” is confusing things and being seen as current folder. Not all code supports files and folders with no name, just an extension “.xxx”

If you remove the period does it send it to “_Source”?

You could try: .\._Source

The help on RED does discuss periods.

The redirection system also supports transforming ’ . ’ and ’ ’ syntax into directory names based on the location where the redirection file was opened (not based on the current directory). The redirection file needs to know what ’ . ’ means because you can have one red file in use in a project that is compiling on one thread while you have a different red file in use on a different thread for an app that is in a different directory.

https://clarion.help/doku.php?id=redirection_file.htm

1 Like

Well for the underscore I’ve been using it for the past 15 years it always did work.

For the second question regarding a template I think you are giving a good hint, I do use in one of my template, it generates source files from the global embed area where I have created a template for derive classes. Each derive class is generating its own include file with the extension “inc” and definition file “clw”. I have checked the template if I define a target folder in the path, I do not. I’m wondering what will cause this to happen.

Thank you for your fast response Richard very nice of you.

I have checked the option I only have one redirection file. I’m learning today that we can have multiple redirection files, this is good to know. I will check this out. In the option we still get the Clarion 11.1 redirection file even though it has been uninstalled. Do you think it has something to do with the generated code done from the designer ?

Thank you very much Carl

For the full order of the redirection file here it is.

– Default Redirection for Clarion 11.0

[Copy]
– Directories only used when copying dlls
*.dll = %BIN%;%BIN%\AddIns\BackendBindings\ClarionBinding\Common;%ROOT%\Accessory\bin;%libpath%\bin%configuration%

[Debug]
– Directories only used when building with Debug configuration

*.obj = obj\debug
*.res = obj\debug
*.rsc = obj\debug
*.lib = obj\debug
*.FileList.xml = obj\debug
*.map = map\debug
*.inc = _Source;.\LibSrc
*.clw = _Source;.\LibSrc

[Release]
– Directories only used when building with Release configuration

*.obj = obj\release
*.res = obj\release
*.rsc = obj\release
*.lib = obj\release
*.FileList.xml = obj\release
*.map = map\release
*.inc = _Source
*.clw = _Source

[Common]
*.chm = %BIN%;%ROOT%\Accessory\bin
*.tp? = %ROOT%\template\win
*.trf = %ROOT%\template\win
*.txs = %ROOT%\template\win
*.stt = %ROOT%\template\win
. = .;%ROOT%\libsrc\win; %ROOT%\images; %ROOT%\template\win
*.ico = .\Images;%ROOT%\Images;%ROOT%\Accessory\Images
*.lib = %ROOT%\lib
*.obj = %ROOT%\lib
*.res = %ROOT%\lib
*.hlp = %BIN%;%ROOT%\Accessory\bin
*.dll = %BIN%;%ROOT%\Accessory\bin
*.exe = %BIN%;%ROOT%\Accessory\bin
*.tp? = %ROOT%\Accessory\template\win
*.txs = %ROOT%\Accessory\template\win
*.stt = %ROOT%\Accessory\template\win
*.lib = %ROOT%\Accessory\lib
*.obj = %ROOT%\Accessory\lib
*.res = %ROOT%\Accessory\lib
*.dll = %ROOT%\Accessory\bin
. = %ROOT%\Accessory\images; %ROOT%\Accessory\resources; %ROOT%\Accessory\libsrc\win; %ROOT%\Accessory\template\win