1

I have set up a Cygwin environment on my machine (Windows 8.1).

pol@pol-lap1 ~/Downloads/software/database/firebird/Firebird-2.5.4.26856-0

$ `set | grep unknown`
BASH_VERSINFO=([0]="4" [1]="3" [2]="33" [3]="1" [4]="release" [5]="x86_64-unknown-cygwin")
                echo "bash: $FUNCNAME(): \`${!OPTIND}': unknown argument" 1>&2;
                194,10xCelsius 194,unknown 198,offlinescanuncsectorct \

However, when I do env | grep -i unknown, nothing is returned.

pol@pol-lap1 ~/Downloads/software/database/firebird/Firebird-2.5.4.26856-0
$ env | grep -i unknown

pol@pol-lap1 ~/Downloads/software/database/firebird/Firebird-2.5.4.26856-0

Notice, the environmental variable's value is 4

pol@pol-lap1 ~/Downloads/software/database/firebird
$ echo $BASH_VERSINFO
4

Now, what I want to do is change the value of $BASH_VERSINFO[5] to x86_64-redhat-linux-gnu in order to "fool" the system into compiling a programme that I want.

I tried to export BASH_VERSINFO[5]=x86_64-redhat-linux-info, but that changed nothing.

Maybe I don't fully understand the difference between the set and the env commands in Linux. Why do I get a different value with set as with env?

I would be grateful if anyone could shed any light on these issue and let me know what I can do to change my variable.

1
 BASH_VERSINFO[5]=x86_64-redhat-linux-info

Output:

bash: BASH_VERSINFO: readonly variable

Btw. see: Hacky method to unset readonly variable with gdb

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.