[comp.os.msdos.programmer] Semicolons in environment variables, how to get?

naga@wet.UUCP (Peter Davidson) (09/09/90)

[Ban vi!]  When using two function libraries the Microsoft compiler
manual says to set the LIB environment variable to include both
paths separated by a semicolon.  But when one tries to 
SET LIB=\C\LIB;\C\OTHERLIB DOS (as usual) treats the semicolon
as a command separator and rejects the second part.  Is this
another Microsoft linker feature, or is there some way to set
up the LIB variable (from the DOS command line) as required?

browns@iccgcc.decnet.ab.com (Stan Brown, Oak Road Systems) (09/10/90)

In article <1510@wet.UUCP>, naga@wet.UUCP (Peter Davidson) writes:
>                                  But when one tries to 
> SET LIB=\C\LIB;\C\OTHERLIB DOS (as usual) treats the semicolon
> as a command separator and rejects the second part.

The behavior you describe is _not_ MS-DOS.  MS-DOS doesn't have a
command separator.  Some thoughts:

1. Are you running some command shell?  Look in its manual to find out
change the command separator to something like ^ or & that isn't used in
valid commands.

2. If that's the actual command you typed, it won't work in any event.
Disk letters are not set off with backslashes; they are followed with
colons.  The correct form of the command would be
	SET LIB=C:\LIB;C:\OTHERLIB

3. Are you in fact certain that the SET command was not executed
correctly? Type "SET" as a command by itself to display the current
environment settings.

For future postings, you might want to include the exact error message
you get with a problem.  That would help you get a more focused answer.

Stan Brown, Oak Road Systems, Cleveland, Ohio, U.S.A.         (216) 371-0043
The opinions expressed are mine. Mine alone!  Nobody else is responsible for
them or even endorses them--except my cat Dexter, and he signed the power of
attorney only under my threat to cut off his Cat Chow!

mlord@bwdls58.bnr.ca (Mark Lord) (09/10/90)

In article <1510@wet.UUCP> naga@wet.UUCP (Peter Davidson) writes:
>[Ban vi!]  When using two function libraries the Microsoft compiler
>manual says to set the LIB environment variable to include both
>paths separated by a semicolon.  But when one tries to 
>SET LIB=\C\LIB;\C\OTHERLIB DOS (as usual) treats the semicolon
>as a command separator and rejects the second part.  Is this
>another Microsoft linker feature, or is there some way to set
>up the LIB variable (from the DOS command line) as required?

Eh?  DOS does not usually come with a "command separator" capability.

Do you have ANARKEY or 4DOS loaded?  If so, then that's likely where
the problem is.

DOS uses semicolons in the PATH variable, and millions of DOS users have
no problems setting this variable.  If you are using 4DOS, then switch your
command separator character to ^ (the default?).  With ANARKEY, you are 
more out of luck.  I think you have to prefix it with something each time..
This is mentioned in the .DOC file somewhere.
-- 
 ___Mark S. Lord__________________________________________
| ..uunet!bnrgate!mlord%bmerh724 | Climb Free Or Die (NH) |
| MLORD@BNR.CA   Ottawa, Ontario | Personal views only.   |
|________________________________|________________________|