Build System can't find 'makedir'

General questions regarding the usage of CodeLite
saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 1:46 pm

I am encountering the following error using CodeLite v1.0.2893 and MinGW5.1.4 to build a simple workspace (attached).
------------------------------------------------------------------------------
----------Build Started--------
"mingw32-make.exe" -j 1 -f "trycodelite_wsp.mk"
----------Building project:[ core - Debug ]----------
Executing Pre Build commands ...
WorkspacePath is
ProjectPath is
ProjectName is core
IntermediateDirectory is ./Debug
ConfigurationName is Debug
OutDir is ./Debug
CurrentFileName is
CurrentFilePath is
CurrentFileFullPath is
User is
Date is
CodeLitePath is
Done
'makedir' is not recognized as an internal or external command,
operable program or batch file.
mingw32-make.exe[1]: *** [Debug/core.o.d] Error 1
mingw32-make.exe: *** [All] Error 2
----------Build Ended----------
0 errors, 0 warnings
------------------------------------------------------------------------------

If I try to build the generated project files at a command prompt, I get this:
------------------------------------------------------------------------------
F:\work\trycodelite>mingw32-make -f trycodelite_wsp.mk
----------Building project:[ core - Debug ]----------
"core": bad directory
mingw32-make: *** [All] Error 255
------------------------------------------------------------------------------

Does anyone know what could be going wrong? Its probably not a CodeLite problem, but people here may have some experience with MinGW.

Thanks,
Saurav.
You do not have the required permissions to view the files attached to this post.
Last edited by saurav on Tue Sep 01, 2009 1:55 pm, edited 2 times in total.

User avatar
eranif
CodeLite Plugin
Posts: 6110
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Build System can't find 'makedir'

Post by eranif » Tue Sep 01, 2009 2:23 pm

This is because you are running the make from outside codelite.

When codelite starts, it adds the installation path to the system PATH so makedir is recognized.

When you are running the makefile from CMD shell, it is not recognized. You can simply add 'C:\Program Files\CodeLite' (assuming that this is where you have installed codelite) to your PATH variable and it will work for you.

Eran
Make sure you have read the HOW TO POST thread

saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Re: Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 2:43 pm

In the first instance, where I got the 'makedir' related error, I was running make from CodeLite. I pasted the output from the Build tab.

In the second case, I was running mingw32-make directly in a command prompt. When I added CodeLite's path to PATH, mingw32-make crashed like below:

--------------------------------------------------------------------------------------
F:\work\trycodelite>mingw32-make -f trycodelite_wsp.mk
----------Building project:[ core - Debug ]----------
"core": bad directory
mingw32-make: *** [All] Error 255

F:\work\trycodelite>set path=%path%;"e:\Program Files\CodeLite"

F:\work\trycodelite>mingw32-make -f trycodelite_wsp.mk
mingw32-make: Interrupt/Exception caught (code = 0xc0000005, addr = 0x41f97e)
--------------------------------------------------------------------------------------

User avatar
eranif
CodeLite Plugin
Posts: 6110
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Build System can't find 'makedir'

Post by eranif » Tue Sep 01, 2009 2:47 pm

There is something very wrong with your installation.

Try downloading and installing codelite WITH MinGW from here:

http://sourceforge.net/projects/codelit ... e/download

and see if it solves the problem

Eran
Make sure you have read the HOW TO POST thread

saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Re: Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 2:56 pm

It seems to work after I added the CodeLite folder to PATH in "Settings -> Environment Variables". I also had to add the MinGW/bin folder to PATH there. It doesn't seem to matter that I set them both in control panel -> systems (and verified using Process Explorer that PATH in CodeLite process actually contained both of them).

Now, I am getting this:
------------------------------------------------------
----------Build Started--------
"mingw32-make.exe" -j 1 -f "trycodelite_wsp.mk"
----------Building project:[ core - Debug ]----------
process_begin: CreateProcess(NULL, makedir Debug, ...) failed.
make (e=2): The system cannot find the file specified.

mingw32-make.exe[1]: *** [Debug/libcore.a] Error 2
mingw32-make.exe: *** [All] Error 2
----------Build Ended----------
0 errors, 0 warnings
------------------------------------------------------

Should I post this to MinGW forum?

Thanks,
Saurav.

User avatar
eranif
CodeLite Plugin
Posts: 6110
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Build System can't find 'makedir'

Post by eranif » Tue Sep 01, 2009 3:56 pm

saurav wrote:process_begin: CreateProcess(NULL, makedir Debug, ...) failed.
make (e=2): The system cannot find the file specified.
Why is it still calling 'make' and mingw32-make? (the generated makefiles are NOT refering to make explicitly, but as $(MAKE)) - it seems to me that there is still a problem with the installation and mix of toolchains.

How did you edit the PATH from within codelite? can u please send me the following files:
- environment_variables.xml
- build_settings.xml

Booth are located under the codelite installation directory of codelite/config (e.g. C:\Program Files\CodeLIte\config)
Thanks,
Eran
Make sure you have read the HOW TO POST thread

saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Re: Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 4:35 pm

I added to PATH in CodeLite from the Settings menu -> "Environment Variables".

Attached both files you asked for.

Thanks,
Saurav.
You do not have the required permissions to view the files attached to this post.

User avatar
eranif
CodeLite Plugin
Posts: 6110
Joined: Wed Feb 06, 2008 9:29 pm
Genuine User: Yes
IDE Question: C++
Contact:

Re: Build System can't find 'makedir'

Post by eranif » Tue Sep 01, 2009 4:50 pm

You edited the environment variable wrong.

Instead of:

Code: Select all

%path%;"e:\program files\codelite";g:\Saurav\Softwares\MinGW\bin
set it to:

Code: Select all

$(PATH);"e:\program files\codelite";g:\Saurav\Softwares\MinGW\bin
In addition, change the variable name from 'path' (lowercase) to 'PATH' (not sure if it makes a different, but still)

CodeLite uses its own syntax (since it is a crossplaform IDE, I decided to not using the Windows way %VARIAVLE% but rather $(VARIABLE)

Eran
Make sure you have read the HOW TO POST thread

saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Re: Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 5:01 pm

Ok, that did make some difference, but now I'm getting this:

Code: Select all

----------Build Started--------
"mingw32-make.exe"  -j 1 -f "trycodelite_wsp.mk"
----------Building project:[ core - Debug ]----------
"core": bad directory
mingw32-make.exe: *** [All] Error 255
----------Build Ended----------
0 errors, 0 warnings
I get this both in the IDE and the command prompt window.

Also, the case matters. PATH must be in CAPS in both places, as in the pic attached.

Thanks,
Saurav.
You do not have the required permissions to view the files attached to this post.

saurav
CodeLite Enthusiast
Posts: 14
Joined: Sun Aug 23, 2009 10:24 pm
Contact:

Re: Build System can't find 'makedir'

Post by saurav » Tue Sep 01, 2009 5:24 pm

The above problem was due to some sh.exe getting picked up by a process_begin() routine, because it was in the PATH . I fixed that, and ended up with some other problems. Will post again once I have debugged that.

Post Reply