How to get Direct X 8 in Dev-CPP
Hi, compilation is successful, but after that, the linker reports:
C:\DEV-CPP\BIN\DLLWRAP.EXE: Must provide at least one of -o or --dllname options...
but that option is given to the linker, as far as i can see:
dllwrap.exe --output-def libIrrlicht.def --driver-name c++ --implib libIrrlicht.a CAnimatedMeshMD2.o [...] CGUICheckBox.o -L"C:/DEV-CPP/lib" -L"jpeglib" -L"zlib" --no-export-all-symbols --add-stdcall-alias -lgdi32 -lglu32 -lopengl32 -ljpeg -lz -d3dx8d -o Irrlicht.dll
i'm not so familiar with devcpp, maybe someone knows what do...
thanks for your help,
rincewind
(btw, excuse my bad english, last time i wrote in english was in school some
years ago )
C:\DEV-CPP\BIN\DLLWRAP.EXE: Must provide at least one of -o or --dllname options...
but that option is given to the linker, as far as i can see:
dllwrap.exe --output-def libIrrlicht.def --driver-name c++ --implib libIrrlicht.a CAnimatedMeshMD2.o [...] CGUICheckBox.o -L"C:/DEV-CPP/lib" -L"jpeglib" -L"zlib" --no-export-all-symbols --add-stdcall-alias -lgdi32 -lglu32 -lopengl32 -ljpeg -lz -d3dx8d -o Irrlicht.dll
i'm not so familiar with devcpp, maybe someone knows what do...
thanks for your help,
rincewind
(btw, excuse my bad english, last time i wrote in english was in school some
years ago )
Well, I don't get DX into the dll !!!
I followed the instructions exactly.
All object files where compiled withot any errors.
At the end of the compilation dllwrap.exe causes an error (line to long, or something like that - I'm german and don't know the english messages) !!!
I am at the end to my wisdom...
please help me !!!
maybe someone can send me the dll and libs, compiled with DX for Dev-C++ ???
my eMail adress: A_Buschhueter@gmx.de
CU
I followed the instructions exactly.
All object files where compiled withot any errors.
At the end of the compilation dllwrap.exe causes an error (line to long, or something like that - I'm german and don't know the english messages) !!!
I am at the end to my wisdom...
please help me !!!
maybe someone can send me the dll and libs, compiled with DX for Dev-C++ ???
my eMail adress: A_Buschhueter@gmx.de
CU
-
- Posts: 602
- Joined: Sat Aug 23, 2003 2:03 am
- Location: Pottstown, PA
- Contact:
Glad to see the DLL worked Acki.
In any case I run Windows 2000 and that comment about the line being too long was the clue. Windows 2000 (and probably XP too) has a limit to the number of characters which can be on a command line (and for all it's windows IDE the compiler is still command line driven). What you have to do is find the makefile created by dev-cpp and copy it to a new file. Name it Irrlicht.mak (or something else so long as you remember it.
Then in DevCpp, under Project- Project options- Makefile, select "Use Custom Makefile......" browse to the where you have Irrlicht.mak and select it.
Now you have to edit the Irrlicht.mak file. The Linker line is too long, so you have to replace the linker line (guessing now "-LIrrlkichttest.o -LIrrlichtgui.o................") with a line looking something like -L*.o. You may have to point explicitly to the directory -Lc:\Irrlicht\source\*.o.
I may be wrong about the -L part but have a look at the makefile created for the project, you will see one part with a great number of .o files. This line needs changing.
Another option is this: (from the DevCpp forum)
I am sorry that I didn't see this when I read your message previously, but are you running Windows 2000? or XP?Acki wrote:Well, I don't get DX into the dll !!!
I followed the instructions exactly.
All object files where compiled withot any errors.
At the end of the compilation dllwrap.exe causes an error (line to long, or something like that - I'm german and don't know the english messages) !!!
In any case I run Windows 2000 and that comment about the line being too long was the clue. Windows 2000 (and probably XP too) has a limit to the number of characters which can be on a command line (and for all it's windows IDE the compiler is still command line driven). What you have to do is find the makefile created by dev-cpp and copy it to a new file. Name it Irrlicht.mak (or something else so long as you remember it.
Then in DevCpp, under Project- Project options- Makefile, select "Use Custom Makefile......" browse to the where you have Irrlicht.mak and select it.
Now you have to edit the Irrlicht.mak file. The Linker line is too long, so you have to replace the linker line (guessing now "-LIrrlkichttest.o -LIrrlichtgui.o................") with a line looking something like -L*.o. You may have to point explicitly to the directory -Lc:\Irrlicht\source\*.o.
I may be wrong about the -L part but have a look at the makefile created for the project, you will see one part with a great number of .o files. This line needs changing.
Another option is this: (from the DevCpp forum)
1) download MSYS (www.mingw.org) and install
2) configure after install (don't know if thats critical)
3) edit config.sys (add line that says: SHELL=c:\path_to_msys_dir\bin\sh.exe )
3) edit autoexec.bat (add line that says: set COMSPEC=c:\path_to_msys_dir\bin\sh.exe )
4) reboot
5) try to compile a huge project with many object files
-
- Posts: 386
- Joined: Thu Sep 25, 2003 12:43 pm
- Contact:
I haven't yet found a way to compile it in one pass under Win2000:
I did:
Compile it until it says it can't dllwrap.
Copy makefile.win to irrlicht.mak or any name you want.
In Irrlicht.mak change linkobj line so it has only LINKOBJ = <path>/*.o $(RES)
Change the project options -> makefile so it will use the mak file,
Now say compile, wait ..., you should get a sucessfull compiled libIrrlicht.a and .dll...
I did:
Compile it until it says it can't dllwrap.
Copy makefile.win to irrlicht.mak or any name you want.
In Irrlicht.mak change linkobj line so it has only LINKOBJ = <path>/*.o $(RES)
Change the project options -> makefile so it will use the mak file,
Now say compile, wait ..., you should get a sucessfull compiled libIrrlicht.a and .dll...
Here is what I did when I recompiled it with dev c++. I downloaded the directx dev pack from http://gproductions.dazart.de/ and installed it. Then I followed exactly what is stated at the beginning of this thread but I added the directx9 to it too. What I got was a successful compile. I was able to use opengl and directx8 flawlessly or at least from what I could tell. With directx9 I do have the problem with mip map creation not being done for some reason which I can't figure out but for dx8 it worked. I didn't try the compile with the dx dev pack that is downloaded through the update so I don't know if it works or not but I know the devpak that the people at the address above created - it seems to work.
I'm not sure about the dllwrap thing but when I compiled it I loaded the irrlicht.dev file or what it is into the ide and changed the folder locations to the right one and added those compiler defines and it worked. I haven't tryied it with the command line so I can't say if it works or not.
I'm not sure about the dllwrap thing but when I compiled it I loaded the irrlicht.dev file or what it is into the ide and changed the folder locations to the right one and added those compiler defines and it worked. I haven't tryied it with the command line so I can't say if it works or not.
-
- Posts: 386
- Joined: Thu Sep 25, 2003 12:43 pm
- Contact:
-
- Posts: 237
- Joined: Thu May 27, 2004 3:18 pm
- Location: Canada
...
I tried to do exactly what you said in the tutorial, but I always get the following error:
c:\Benoit\mingw32\bin\make.exe: *** No rule to make target `pp', needed by `CSceneNodeAnimatorCollisionResponse.o'. Stop
c:\Benoit\mingw32\bin\make.exe: *** No rule to make target `pp', needed by `CSceneNodeAnimatorCollisionResponse.o'. Stop
-
- Posts: 237
- Joined: Thu May 27, 2004 3:18 pm
- Location: Canada
I cant seem to get this right!!!
then it crashes I did what was said.....
Code: Select all
Irrlicht Engine version 0.6
Microsoft Windows 2000 Professional Service Pack 4 (Build 2195)
DirectX8 Renderer
Intel Corporation 810 Graphics Controller Hub i81xdnt5.dll 5.11.1.133
Loaded texture: #DefaultFont
Could not find texture in Q3 .bsp: textures/common/caulk
JPEG parameter struct mismatch: library thinks size is 464, caller expects 432