[squeak-dev] Relative paths on windoze: fail.

Levente Uzonyi leves at elte.hu
Sun Aug 15 12:15:28 UTC 2010


On Sun, 15 Aug 2010, Igor Stasenko wrote:

> FileDirectory default / '../'
>
> Prints:
>
> DosFileDirectory on 'F:\projects\squeak\!trunk\..#'
>
>
> FileDirectory default / '../vvv'
>
> DosFileDirectory on 'F:\projects\squeak\!trunk\..#vvv'
>
> i wonder, where this '#' getting from. Looks like some code trying to
> convert subpath into a symbol (for whatever reason),
> and then using #printString.
> Otherwise, i have no idea, how else this noise can appear.

On windows you have to use \ instead of /, like:

FileDirectory default / '..\vvv'

But IMO it's better to let Squeak do the right thing:

FileDirectory default / '..' / 'vvv'
or
FileDirectory default containingDirectory / 'vvv'

>
> Or, maybe i'm unlucky?
>
> I discovered it when tried to generate sources for Cog, from doit in
> Cog-vmmaker image.
> (VMMaker
> 		generate: CoInterpreter
> 		to: (FileDirectory default / '../src') fullName
> 		platformDir: (FileDirectory default / '../platforms') fullName
> 		excluding:#(BrokenPlugin IA32ABIPluginSimulator SlangTestPlugin TestOSAPlugin
> 					FFIPlugin ReentrantARMFFIPlugin ReentrantFFIPlugin
> ReentrantPPCBEFFIPlugin))

Try this (note that this is for Cog 17, so the excluded plugins list 
should be updated for newer versions):

| rootDirectory |
rootDirectory := FileDirectory default containingDirectory.
(VMMaker
 	generate: CoInterpreter
 	to: (rootDirectory / 'src') fullName
 	platformDir: (rootDirectory / 'platforms') fullName
 	excluding:#(BrokenPlugin IA32ABIPluginSimulator SlangTestPlugin TestOSAPlugin))


Levente

>
> I am also checked other 4.1 image i have - same problem.
>
> -- 
> Best regards,
> Igor Stasenko AKA sig.
>
>



More information about the Squeak-dev mailing list