Code::Blocks Forums

User forums => Using Code::Blocks => Topic started by: Jordar on October 31, 2006, 05:48:46 pm

Title: Need to use $
Post by: Jordar on October 31, 2006, 05:48:46 pm
Hi,

This is probably a silly question but I am trying to configure my linker options to add "@test.r$p" to the command line.  However the program interprets the "$p" as a macro and all that gets placed is "@test.r"
How do I get around this?  I have tried "@test.r$$p" and it displays "@test.r$".  No matter what else I try I can't get this to work

the file test.r$p is a file that is automatically named when I change project options.  So if I can't figure this out I can always just manually rename the file everytime I change the project..... :(

Thanks for any help.

X
Title: Re: Need to use $
Post by: thomas on October 31, 2006, 07:48:36 pm
Currently, there is no way to escape $ in compiler/linker paths etc, sorry.

This is a known issue and will be fixed some day, but it requires rewriting quite a bit of code, unluckily.
Title: Re: Need to use $
Post by: lonesock on October 31, 2006, 11:21:21 pm
just some random thoughts:

* can you define the macro $p to be equal to the text "$p"?
* can you use the "pre-build steps" build option for the project to automatically rename the file for you?
Title: Re: Need to use $
Post by: thomas on November 01, 2006, 09:23:06 am
* can you define the macro $p to be equal to the text "$p"?
Don't! This means terribly bad Karma. You will cause an infinite recursion.
That's the reason why we have trouble implementing an escape sequence, too.
Title: Re: Need to use $
Post by: lonesock on November 01, 2006, 06:26:16 pm
* can you define the macro $p to be equal to the text "$p"?
Don't! This means terribly bad Karma. You will cause an infinite recursion.
That's the reason why we have trouble implementing an escape sequence, too.
Doh!!  [8^)
Title: Re: Need to use $
Post by: Game_Ender on November 01, 2006, 09:24:12 pm
What about a pass on the string that converts \$ to a non printable character then, run through the rest of the macro expansions, and just before outputing have a final pass on the string that converts the non-printable character back to "$".
Title: Re: Need to use $
Post by: thomas on November 02, 2006, 10:27:04 am
Did that a month ago, doesn't work (see other thread).
Title: Re: Need to use $
Post by: rjmyst3 on November 14, 2006, 01:21:28 pm
Quote
This is probably a silly question but I am trying to configure my linker options to add "@test.r$p" to the command line.  However the program interprets the "$p" as a macro and all that gets placed is "@test.r"

I've used backticks as a workaround successfully.

Try
Code
@test.r$``p

The backticks resolve to empty, and the $ lives (only tested on linux - but could work on windows)