Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Error: "cp: target 'Routines' is not a directory"
#1
Hi all,
- I work with IDE release 2.0.2.16 on a PC under Windows 8.1.
- I create new project on disk C: a with the template "PowerPmac"
- I modify the properties of "usercode.c" from "content" to "compile"
- I only "build" the project and i got: no error, all is OK.

I quit IDE and copy this simple project to the disk D:
- When i built it, i got the error: "cp: target 'Routines' is not a directory"

Any idea ?

PS: Same problem with or without device connected.
PS: I saw the forum thread 1787, but here partitions C: and D: are on the local disk.
PS: In the Disk-management of the PC, disks C: and D: are of type "Dynamic" (?)
Reply
#2
After copying to D:, can you try issuing a Clean and then Build again? Does this fix the problem?
Reply
#3
Thank you for your answer Charles.

I done the "clean", (it writes: Clean: 1 succeeded, ...),
and after the "build" :
I got the same error, nothing has changed.

(Note: The same test on my old PC under Seven x64, has never error.)
Reply
#4
This problem is not an IDE problem, it is a windows issue. To compile a usralgo, we need to get the short path of a folder. On some machines, if you create a folder in the windows explorer, the windows fails to create a short path for that folder. To check your problem, you can open a command prompt, then CD to the directory that contains your project folder and then issue Dir /X command. It will show you the directories with their short path, I am pretty sure your project folder does not have a short path. To check to see if your D: drive have the short path mode enabled do the following command in a command prompt window:

fsutil 8dot3name query D:

if you get the following response:

The volume state for Disable8dot3 is 0 (8dot3 name creation is enabled).
The registry state of NtfsDisable8dot3NameCreation is 2, the default (Volume lev
el setting).
Based on the above two settings, 8dot3 name creation is enabled on d:

then your d: drive is enabled for short path naming convention. 8dot3 represents the short path naming convention.

To make your project compile (at lease this works for me), zip your project folder, and then unzip it in the D: drive. For some reason if the directory creation is not done manually then windows generates the short paths. After unzipping do the Dir /X command again and check to see if the short path is created, if it is, then you can go to the IDE and it should compile your Realtime Routines
Reply
#5
Thank you Dro for your answer.
You have fully right, the problem is here.

On: fsutil 8dot3name query D:
the answer is :
The volume state is: 1 (8dot3 name creation is disabled).
The registry state is: 2 (Per volume setting - the default).
Based on the above two settings, 8dot3 name creation is disabled on d:


Short names are disable on D: (on C: they are enable)
As i am not an expert,
Do you know the command to make short name enable on D:
Is it the command :
fsutil 8dot3name set 0 D: (or fsutil behavior set disable8dot3 0 D:) ?
Reply
#6
start the command prompt in the administrator mode and use the following command to set the 8dot3 naming convention globally

fsutil behavior set disable8dot3 0

restart the windows and check to see if it is enabled.
the following is a link to an article that explains the use of fsutil in more detail
http://www.terabyteunlimited.com/kb/article.php?id=245
Reply
#7
Thank you very much Dro,
All the project compiles very well now.

I never found this problem without your help.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)