compiling panda3d without python

Huh, no, there’s no reason to compile ppython.cxx. I don’t know why makepanda’s trying to compile it.

Ah, I see. At around line 3655 it says:

  if (not RTDIST and not RUNTIME):
    DefSymbol("BUILDING:PACKPANDA", "IMPORT_MODULE", "direct.directscripts.packpanda")
    TargetAdd('packpanda.obj', opts=OPTS+['BUILDING:PACKPANDA'], input='ppython.cxx')

Remove or comment out this entire condition. This is attempting to build packpanda.exe and eggcacher.exe, which you don’t need.

David

Thank you very much David
it works
but after that i have this error too:

[ 56%] Building C++ object built/tmp/heapq_heapq.obj
heapq.cxx
direct/src/heapq/heapq.cxx(12) : fatal error C1083: Cannot open include file: 'P
ython.h': No such file or directory
Storing dependency cache.
Elapsed Time: 1 min 3 sec

Build terminated.

Thank you for your help.
Are these removing codes make error at developing?

You don’t need heapq; that’s a Python utility. Go ahead and put the condition on Python back into makepanda for this directory (or remove these lines altogether).

Thanks for your help! We’ll fold what you’re learning back into makepanda for future people.

David

Thank you David
We did it.
i compiled panda in debug mode and ran the “Intervals and Sequences” sample successfully.
but my other problem is not solved: i can’t use directX hardware acceleration. my debug Panda3D only knows tinydisplay as a display driver and it is very slow because of software acceleration.i compile Panda3D with --use-dx9 but i can’t see libpandadx9_d.dll in the bin directory.i have libpandagl_d.dll in bin directory but because of windows seven’s WDDM 1.1 display driver i can’t use opengl hardware acceleration.
how can i compile libpandadx9_d.dll . is this problem relative to --no-python?

Are you sure you had the DirectX 9 SDK installed before you started building? When it started, did you see a message about it not finding the DirectX9 SDK and automatically adding --no-dx9? Or did you instead see a message confirming it is using the DX9 SDK?

Incidentally, virtually every graphics card driver comes with a replacement for the default Windows OpenGL driver. If you download an appropriate graphics driver you should also be able to use hardware-accelerated OpenGL.

Can you post your modified makepanda.py somewhere for me? (Don’t post it into the forums, it’s too large for that.)

David

BTW.
just in case you’ll be using the latest DirectX SDK, ie june 2010. You’ll have to edit makepandacore.py if you want to have libpandadx9 generated!

def SdkLocateDirectX():
    if (sys.platform != "win32"): return
    GetSdkDir("directx8", "DX8")
    GetSdkDir("directx9", "DX9")
    ## We first try to locate the SDK in 64 bits, then 32.
    if ("DX9" not in SDK):
        dir = GetRegistryKey("SOFTWARE\\Wow6432Node\\Microsoft\\DirectX\\Microsoft DirectX SDK (June 2010)", "InstallPath")
        if (dir != 0):
            SDK["DX9"] = dir.replace("\\", "/").rstrip("/")
            SDK["GENERIC_DXERR_LIBRARY"] = 1;
    if ("DX9" not in SDK):
        dir = GetRegistryKey("SOFTWARE\\Microsoft\\DirectX\\Microsoft DirectX SDK (June 2010)", "InstallPath")
        if (dir != 0):
            SDK["DX9"] = dir.replace("\\", "/").rstrip("/")
            SDK["GENERIC_DXERR_LIBRARY"] = 1;

You may need too ddraw.lib since Microsoft no longer include this library in the latest version of DirectX SDK…

Have a look at [url]Build Panda3D with optimized Intel C++ Compiler]

PS. Eventually you may end up having to deal with --no-directcam… let me know

By the way, depending on Windows SDK you may want to modify too

def SdkLocateMSPlatform():
    if (sys.platform != "win32"): return
    platsdk = GetRegistryKey("SOFTWARE\\Microsoft\\Microsoft SDKs\\Windows\\v7.1", "InstallationFolder")

It seems that makepandacore.py (and makepanda.py?) is not updated regularly to take into account latest sdks.

hello my friends
thank you for reply
i installed Microsoft DirectX SDK (June 2010).
i have no problem in release mode of panda3d that i downloaded from site. in that folder i have libpandadx9.dll and libpandadx8.dll and all of them work fine.
what is the ddraw.lib?how can i found it?is there any easy solution?
i upload my makepanda.py to
http://www.sendspace.com/file/el474u

ok, I’ll try to simplify you life.
Here it is: https://rapidshare.com/files/1363143434/ddraw.lib

Thank you jean-claude
i installed Microsoft DirectX SDK (August 2009) and recompile panda3d and solved the problem.
i want to say to Panda3D developers “Please Update the Panda”
we are in 2011 and visual studio and directx are updated and everyone wants to work with these softwares.

Please send us your working makepanda.py, and we’ll be happy to integrate the changes.

David

Hi David
here is my makepanda:
http://www.4shared.com/file/5f78I409/makepanda.html
please update panda3D soon.we’re waiting…

You’re waiting? But why? You already have a working makepanda.py. What are you waiting for?

Thanks for the modified file.

David