ProjectPhysX / FluidX3D

The fastest and most memory efficient lattice Boltzmann CFD software, running on all GPUs via OpenCL. Free for non-commercial use.
https://youtube.com/@ProjectPhysX
Other
3.77k stars 300 forks source link

Trouble testing any set ups that are not BENCHMARK #137

Closed MitchChild closed 6 months ago

MitchChild commented 8 months ago

Hello, I am trying to set up my M1Pro Mac and have gotten everything working until I try to test any of the other *void main_setup()

After running ./make.sh I see:

` In file included from ./src/graphics.cpp:562: ./src/X11/include/X11/Xlib.h:44:10: fatal error: 'X11/X.h' file not found

include <X11/X.h>

` even though the file is in the directory.

it will continue to run and pop up a number of warnings, then I get:

./src/setup.cpp:1286:2: error: expected unqualified-id *void main_setup() { // thermal convection; required extensions in defines.hpp: FP16S, VOLUME_FORCE, TEMPERATURE, INTERACTIVE_GRAPHICS ^ 34 warnings and 1 error generated. ./make.sh: line 12: ./bin/FluidX3D: No such file or directory

ProjectPhysX commented 8 months ago

Hi @MitchChild,

I don't know if interactive graphics with X11 work on macOS. If the Linux compile command does not work, you can try (and please tell me if this works!):

g++ ./src/*.cpp -o ./bin/FluidX3D -std=c++17 -pthread -I./src/OpenCL/include -framework OpenCL -I./src/X11/include -framework X11

And if this does not work, use the headless GRAPHICS mode (and comment out INTERACTIVE_GRAPHICS). This runs FluidX3D in the console and stores images in the hard drive as specified in the main_setup() function.

Unfortunately I can't test X11 graphics on macOS this myself, as I don't own an expensive Mac.

Kind regards, Moritz

jansol commented 6 months ago

AFAIK macOS deprecated & removed XQuartz (their X11 implementation) many releases ago.