Building PhysX for Linux

I’m trying to build PhysX for Linux from here but I cannot find Makefiles:
https://github.com/EpicGames/UnrealEngine/tree/master/Engine/Source/ThirdParty/PhysX/PhysX-3.3

PhysX-3.3.3_EPIC (19301989)

On the official PhysX github, there are Makefiles for Linux but for a different revision of the UE4 PhysX codebase:
https://github.com/NVIDIAGameWorks/PhysX/tree/master/PhysXSDK/Source/compiler/linux64

PhysX-3.3.3 (19239350)

What’s the difference between the two repositories? Are there any Epic changes to the vanilla PhysX?

Hi Mostafa,

I’m not an expert at all but I have been working on becoming more familiar with the build process. It is a little different because you don’t use the Makefiles directly with each of the third party sources. The Unreal Build System will build it when one of the editor components requires PhysX. If you want to modify how Physx is built then check out this file.

If I understand it correctly the Makefile is generated by operating on these “.cs” files and I am unaware of how to build just one of the targets. Hopefully, someone will come here and correct me or provide more information.

Sorry I couldn’t answer your questions directly but I wanted to provide you with some resources that might help you and other people who might see this.

The makefiles are created by the xpj tool, look for create_projects.* scripts. The way we build PhysX is a bit involved since we cross-compile it (which is especially essential when building for ARM as build time would suffer otherwise).

I’m also interested in rebuilding Physx for Linux, it appears the latest code (https://github.com/EpicGames/UnrealEngine/tree/master/Engine/Source/ThirdParty/PhysX/PhysX-3.3/Source/compiler) side steps all the create projects scripts. Is there a way to get access to them for 3.3.1 (Physx version I’m using currently)? If not what about access to them for the latest, or the makefiles themselves?

The github version doesn’t contain make files or mentioned create_projects.* scripts