Page 1 of 2

'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 1:40 am
by Roey
Hi,

I've been following the steps in the quick overview tutorial (is it up to date? I didn't actually had to add any compiler). When building the hello world application I'm getting the following output:
Building: "mingw32-make.exe" -j 1 -f "Hello World 01_wsp.mk" type=Debug
----------Building project:[ Test 01 - Debug ]----------
'makedir' is not recognized as an internal or external command,
operable program or batch file.
mingw32-make.exe[1]: *** [makeDirStep] Error 1
mingw32-make.exe: *** [All] Error 2
----------Build Ended----------
Any ideas?
Thanks in advance,
Roey

Re: 'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 1:59 am
by eranif
Hi Roey,

First, please state your OS and CodeLite's revision (the revision can be seen at the startup splashscreen or from Help -> About ... menu)
Roey wrote:is it up to date?
Not really, it was a while ago and it needs to be updated - thanks for reminding me
Roey wrote:'makedir' is not recognized as an internal or external command,
Two things to try here:

1. Under path/to/codelite/installation/ you should see 'makedir' exe, copy it to somewhere in your path or better, add 'path/to/codelite/installation to your system PATH environment variable.
2. If you dont want to modify your system path, the next best thing to do is: open 'Settings -> Environment Variables..' and add new variable:
Variable Name: PATH
Variable Value: $(PATH);path/to/codelite/installation

Click OK and close the dialog.

Try again.

Some other comments:
Once you pass this 'makedir' issue, I recommend the following:
Dont place any spaces in the workspace names (e.g. 'Hello World 01')
Dont place any spaces in the project names (e.g. 'Test 01')


Eran

Re: 'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 3:07 am
by Roey
Yeah, that did the trick.

I have chosen the Settings -> Environment Variables.. method and since I already had a PATH variable pointing to the mingw folder I had to change it to 'H:\Program Files\CodeLite;H:\Program Files\MinGW5\bin'.

You were also write about the space in project and workspace names - it did not compile with the previous names I had (I assume this is a bug need fixing). Anyway, I've changed the name to have no spaces and then everything build alright.

I could Run Active Project alright, but failed to start the debugger as I did not have any debugger configured under Settings > Debugger Settings > Loaded Debuggers > Debugger Path. So I've downloaded the debugger from here, and now it seems to work alright.

This seems to be an extremely valuable project. A powerful open-source cross-platform IDE could make a really big difference on the development community and such a tool has been requested for many years. I wish that there would be a wiki access for registered users so other can contribute as well, at least in documentation.

Thanks,
Roey

Re: 'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 4:24 am
by Roey
By the way, setting the environment variables via CodeLite override those of Windows. So for example, you can't use SVN via command line any longer...

Re: 'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 9:54 am
by eranif
Roey wrote:By the way, setting the environment variables via CodeLite override those of Windows. So for example, you can't use SVN via command line any longer...
And this is why exactly why makedir did not work for you. You set it worongly.

In my earlier post:
eranif wrote:Variable Name: PATH
Variable Value: $(PATH);path/to/codelite/installation
Notice the $(PATH), this is what was missing. You override Windows's PATH

By defining it like this:
Roey wrote:I had to change it to 'H:\Program Files\CodeLite;H:\Program Files\MinGW5\bin'.
Changing it to:

Code: Select all

$(PATH);H:\Program Files\MinGW5\bin
Would have solve it without overriding Windows PATH, but appending into it.

Eran

Re: 'makedir' is not recognized as an internal or external...

Posted: Fri Aug 22, 2008 11:20 pm
by eranif
Roey wrote:This seems to be an extremely valuable project. A powerful open-source cross-platform IDE could make a really big difference on the development community and such a tool has been requested for many years. I wish that there would be a wiki access for registered users so other can contribute as well, at least in documentation.
I dont know if you noticed, but the entire codelite site is Wiki...

If you want write access to the wiki, send me PM or send me an email.

Eran

Re: 'makedir' is not recognized as an internal or external...

Posted: Sat Aug 23, 2008 7:25 pm
by Roey
eranif wrote: 1. Under path/to/codelite/installation/ you should see 'makedir' exe, copy it to somewhere in your path or better, add 'path/to/codelite/installation to your system PATH environment variable.
2. If you dont want to modify your system path, the next best thing to do is: open 'Settings -> Environment Variables..' and add new variable:
Variable Name: PATH
Variable Value: $(PATH);path/to/codelite/installation
If I understand correctly. Every Windows user will need to follow these steps. If this is correct, it might be wise to let the application add this automatically under wxMSW (done either behind the scenes, or just this would be a default variable under Environment Variables). What do you think?

Re: 'makedir' is not recognized as an internal or external...

Posted: Sat Aug 23, 2008 7:51 pm
by eranif
It *is* added at startup. But you overrided it by setting it incorrectly to:

PATH='H:\Program Files\CodeLite;H:\Program Files\MinGW5\bin'

While you should have set it to:
PATH=$(PATH);H:\Program Files\MinGW5\bin

Note that I am using here $(PATH), this tells codelite to set PATH with the current value of PATH *AND* append it the path to MinGW 'H:\Program Files\MinGW5\bin'


Eran

Re: 'makedir' is not recognized as an internal or external...

Posted: Sun Aug 24, 2008 2:33 pm
by Roey
I see. Thanks.

So then I'm left to ask: Can we just have $(PATH) added behind the scenes, to prevent others from doing the same mistake I did?

Re: 'makedir' is not recognized as an internal or external...

Posted: Sun Aug 24, 2008 10:26 pm
by eranif
Roey wrote:So then I'm left to ask: Can we just have $(PATH) added behind the scenes, to prevent others from doing the same mistake I did?
You mean something like adding a check that when setting PATH with new value which does not include $(PATH), add it automatically?
If this is the case, then yes, I can do this, it sounds like a good idea
Eran