Page 1 of 1

helloworld build, makedir error,v2.1.0.3584

Posted: Fri Mar 05, 2010 12:05 pm
by funtopee
Hi, I want to create a helloworld gui, first i create a new workspace and project either with gizmo or through 'create new project' operation, there's a build error, build message is as below:

Code: Select all

----------Build Started--------
C:\Windows\system32\cmd.exe /c ""mingw32-make.exe"  -j 2 -f "HelloWorld_wsp.mk""
----------Building project:[ HelloWorld - Debug ]----------
process_begin: CreateProcess(NULL, wx-config --cxxflags --unicode=yes --static=no --universal=no --debug=yes, ...) failed.
process_begin: CreateProcess(NULL, wx-config --rcflags, ...) failed.
process_begin: CreateProcess(NULL, wx-config --debug=yes --libs --unicode=yes --static=no --universal=no, ...) failed.
mingw32-make.exe[1]: Entering directory `E:/program/Cpp_practice/HelloWorld/HelloWorld'
'makedir' is not recognized as an internal or external command,
operable program or batch file.
'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[1]: *** Waiting for unfinished jobs....
mingw32-make.exe[1]: *** [Debug/helloworld.o.d] Error 1
mingw32-make.exe: *** [All] Error 2
mingw32-make.exe[1]: Leaving directory `E:/program/Cpp_practice/HelloWorld/HelloWorld'
----------Build Ended----------
0 errors, 0 warnings
I'm a beginner of C++, but i noticed makedir is not a valid command at all, i checked the project makefile and found the so-called 'makedir' part, meanwhile i noticed this part of my makefile is different from the one i found in another post, is there something wrong with makefile generator or this is a stupid mistake of myself...?

here is the project makefile:

Code: Select all

##
## Auto Generated makefile, please do not edit
##
UNIT_TEST_PP_SRC_DIR:=C:\UnitTest++-1.3
SHELL:=CMD.EXE
PATH:=C:\MinGW-4.4.0\bin;C:\MinGW-4.4.0\libexec\gcc\mingw32\4.4.0;C:\msys\1.0\bin
WXWIN:=C:\wxWidgets-2.8.10
WXCFG:=gcc_dll\mswu
ProjectName:=HelloWorld

## Debug
ConfigurationName      :=Debug
IntermediateDirectory  :=./Debug
OutDir                 := $(IntermediateDirectory)
WorkspacePath          := "E:\program\Cpp_practice\HelloWorld"
ProjectPath            := "E:\program\Cpp_practice\HelloWorld\HelloWorld"
CurrentFileName        :=
CurrentFulePath        :=
CurrentFileFullPath    :=
User                   :=GXJ
Date                   :=03/05/10
CodeLitePath           :="C:\Program Files\CodeLite"
LinkerName             :=g++
ArchiveTool            :=ar rcus
SharedObjectLinkerName :=g++ -shared -fPIC
ObjectSuffix           :=.o
DependSuffix           :=.o.d
PreprocessSuffix       :=
DebugSwitch            :=-gstab
IncludeSwitch          :=-I
LibrarySwitch          :=-l
OutputSwitch           :=-o 
LibraryPathSwitch      :=-L
PreprocessorSwitch     :=-D
SourceSwitch           :=-c 
CompilerName           :=g++
OutputFile             :=$(IntermediateDirectory)/HelloWorld
Preprocessors          :=$(PreprocessorSwitch)__WX__ 
ObjectSwitch           :=-o 
ArchiveOutputSwitch    := 
PreprocessOnlySwitch   :=
CmpOptions             := -g  $(shell wx-config --cxxflags --unicode=yes --static=no --universal=no --debug=yes ) $(Preprocessors)
RcCmpOptions           := $(shell wx-config --rcflags)
RcCompilerName         :=windres
LinkOptions            :=  $(shell wx-config --debug=yes --libs --unicode=yes --static=no --universal=no ) -mwindows
IncludePath            := "$(IncludeSwitch)C:/wxWidgets-2.8.10/include"  "$(IncludeSwitch)." 
RcIncludePath          :=
Libs                   :=
LibPath                :="$(LibraryPathSwitch)C:/wxWidgets-2.8.10/lib"  "$(LibraryPathSwitch)." 


Objects=$(IntermediateDirectory)/helloworld$(ObjectSuffix) $(IntermediateDirectory)/resources.rc$(ObjectSuffix) 

##
## Main Build Tragets 
##
all: $(OutputFile)

$(OutputFile): makeDirStep $(Objects)
	@makedir $(@D)
	$(LinkerName) $(OutputSwitch)$(OutputFile) $(Objects) $(LibPath) $(Libs) $(LinkOptions)

makeDirStep:
	@makedir "./Debug"

PreBuild:


##
## Objects
##
$(IntermediateDirectory)/helloworld$(ObjectSuffix): helloworld.cpp $(IntermediateDirectory)/helloworld$(DependSuffix)
	@makedir "./Debug"
	$(CompilerName) $(SourceSwitch) "E:/program/Cpp_practice/HelloWorld/HelloWorld/helloworld.cpp" $(CmpOptions) $(ObjectSwitch)$(IntermediateDirectory)/helloworld$(ObjectSuffix) $(IncludePath)
$(IntermediateDirectory)/helloworld$(DependSuffix): helloworld.cpp
	@makedir "./Debug"
	@$(CompilerName) $(CmpOptions) $(IncludePath) -MT$(IntermediateDirectory)/helloworld$(ObjectSuffix) -MF$(IntermediateDirectory)/helloworld$(DependSuffix) -MM "E:/program/Cpp_practice/HelloWorld/HelloWorld/helloworld.cpp"

$(IntermediateDirectory)/resources.rc$(ObjectSuffix): resources.rc
	@makedir "./Debug"
	$(RcCompilerName) -i "E:/program/Cpp_practice/HelloWorld/HelloWorld/resources.rc" $(RcCmpOptions)   $(ObjectSwitch)$(IntermediateDirectory)/resources.rc$(ObjectSuffix) $(RcIncludePath)
##
## Clean
##
clean:
	$(RM) $(IntermediateDirectory)/helloworld$(ObjectSuffix)
	$(RM) $(IntermediateDirectory)/helloworld$(DependSuffix)
	$(RM) $(IntermediateDirectory)/helloworld$(PreprocessSuffix)
	$(RM) $(IntermediateDirectory)/resources.rc$(ObjectSuffix)
	$(RM) $(OutputFile)
	$(RM) $(OutputFile).exe

-include $(IntermediateDirectory)/*$(DependSuffix)



thanks ahead for any help...

Re: helloworld build, makedir error,v2.1.0.3584

Posted: Fri Mar 05, 2010 12:14 pm
by eranif
funtopee wrote:but i noticed makedir is not a valid command at all
Indeed. However, 'makedir' is a utility provided by codelite (it is installed where you installed your codelite)

The main problem that I can see here is that your PATH variable is too small.
Did you modify your PATH environment variable from within codelite? (from settings -> environment variables or from the compiler settings)?

Eran

Re: helloworld build, makedir error,v2.1.0.3584

Posted: Fri Mar 05, 2010 2:30 pm
by funtopee
eranif wrote:
funtopee wrote:but i noticed makedir is not a valid command at all
Indeed. However, 'makedir' is a utility provided by codelite (it is installed where you installed your codelite)

The main problem that I can see here is that your PATH variable is too small.
Did you modify your PATH environment variable from within codelite? (from settings -> environment variables or from the compiler settings)?

Eran
wow,i finally find the makedir.exe(it's weired that windows search didn't find that before).
i add the dir to my PATH and now the PATH is:C:\MinGW-4.4.0\bin;C:\MinGW-4.4.0\libexec\gcc\mingw32\4.4.0;C:\msys\1.0\bin;C:\Program Files\CodeLite;C:\wxWidgets-2.8.10\lib\gcc_dll. Project was successfully built then, but when i run the activate project, a modal dialog jumps: cant find wxmsw28ud_gcc_custom.dll, then i find it in C:\wxWidgets-2.8.10\lib\gcc_dll and this dir was added to PATH as you see. and now the whole thing finally works. But, what dir should be added to PATH in environment variable? I know this question is naive,but still want to ask ...:?

thanks Eran, thanks for excellent work and great patience!

Re: helloworld build, makedir error,v2.1.0.3584

Posted: Fri Mar 05, 2010 2:40 pm
by eranif
By default: none.

If you plan on modifying PATH environment variable from within codelite, make sure you edit it like this:

New value: /some/new/path;$(PATH)

this will make sure that the original content of PATH is appended to the new path. I suspect that you set the new path without the $(PATH) - so some paths were removed.

Also note that on the Windows, the path separator is ';' (semi-colon) while on link it is colons (':')

Eran