OpenCL is working now
parent
74967c11b6
commit
0982101ec7
Binary file not shown.
|
@ -1,92 +1,57 @@
|
||||||
# ninja log v5
|
# ninja log v5
|
||||||
2825 4518 1668662940083143902 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o dc4b23b5e01a8208
|
2460 4278 1669050856144108784 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o 920916506d18de2c
|
||||||
3 880 1668662936443037503 CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o 7e874136640e6898
|
3 873 1669050852736015051 CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o c243981994ce0811
|
||||||
1876 3670 1668662939215118530 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o cf522ea42b0f8fd3
|
1980 3391 1669050855256084360 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o dc0c8b425019900b
|
||||||
2 2871 1668662938435095731 CMakeFiles/Step_3.dir/src/engine/world.cpp.o fa088ebdd4dea6cb
|
1 2071 1669055771390332839 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
||||||
2 1876 1668662937439066616 CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o d5972a669671ede
|
1 2149 1669053613634177628 CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o 41c6f1bdaa5e38f5
|
||||||
1 3805 1668662939367122973 CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o 4ca9d05ad8f3d295
|
2 3533 1669050817911057707 CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o 74ebce9e3746476
|
||||||
3 1522 1668662937087056328 CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o 6b49c8b248d04bb6
|
2 2398 1669053613882184663 CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o 738602a72b552e04
|
||||||
2445 2959 1668662938523098302 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o 6f5a39b3d5d543ae
|
2402 2909 1669050854776071157 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o 8002180f0368d0ae
|
||||||
1 2363 1668662937927080881 CMakeFiles/Step_3.dir/src/engine/globals.cpp.o 3e7c95bef1d0ddaa
|
1 1967 1669053613450172408 CMakeFiles/Step_3.dir/src/engine/globals.cpp.o 8fd37dd250c0c57b
|
||||||
1 1873 1668662937439066616 CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o 12778f168a75833b
|
2 1948 1669050853816044755 CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o 49528379fc85b78
|
||||||
2 2199 1668662937763076087 CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o f8031520e846a554
|
2 2460 1669050854324058727 CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o cb39ce8c856d1d8c
|
||||||
1873 5877 1668662941439183540 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o f152a6b2309aba93
|
1948 5556 1669050857420143883 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o f512f3e5a828153f
|
||||||
2042 2246 1668663040150068303 Step_3 9e280153ba9a237b
|
2624 2877 1669055772194355273 Step_3 f7680d786a7d5c95
|
||||||
2363 2613 1668662938179088246 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o 35f01a0bb2fddead
|
2209 2402 1669050854268057187 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o 310c2607009eba21
|
||||||
1 3613 1668662939175117361 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o 39bc1042baf06dcd
|
1 2200 1669055771518336410 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
||||||
2959 4103 1668662939667131743 CMakeFiles/Step_3.dir/src/graphics/input.cpp.o 10752ac78f398bdb
|
2603 3662 1669050855528091841 CMakeFiles/Step_3.dir/src/graphics/input.cpp.o 572a0a724d80e2d3
|
||||||
2199 4867 1668662940431154076 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o 707f99c685c75a0f
|
2102 4555 1669050856420116379 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o 8b0c755c9ee468e9
|
||||||
2871 5817 1668662941379181785 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o d81abd5f968f8f53
|
2474 5294 1669050857160136734 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o fe3a1955d79f977a
|
||||||
1786 4424 1668662939987141097 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 53ce7d6ed877d888
|
1 2129 1669055771450334513 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
||||||
880 3295 1668662938859108124 CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o c67f39c07aae8f1c
|
3 2209 1669050854076051904 CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o 27ebeccd2f38d7f7
|
||||||
2613 2825 1668662938391094445 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o 45a2ee53269bffeb
|
2423 2603 1669050854468062689 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o f69d69f5fadcde41
|
||||||
1522 3864 1668662939411124260 CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o 67f44a482b45cec6
|
3 1980 1669050853844045523 CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o cdbe2fcc55d335a9
|
||||||
1 2445 1668662938007083220 CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o 2818d3869cd677e8
|
2 2748 1669050854612066649 CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o c8d4462e974892bb
|
||||||
1 2042 1668663039946062342 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9281ecbfd964c525
|
1 2623 1669055771942348242 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
||||||
2 1786 1668662937351064044 CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o e9e3fe6fe9a4de66
|
|
||||||
9 2217 1669050816595021546 CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o 80ee4e1261cd645e
|
9 2217 1669050816595021546 CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o 80ee4e1261cd645e
|
||||||
6 2328 1669050816707024623 CMakeFiles/Step_3.dir/src/engine/util/loaders.cpp.o c81f0f24f2ebce49
|
6 2328 1669050816707024623 CMakeFiles/Step_3.dir/src/engine/util/loaders.cpp.o c81f0f24f2ebce49
|
||||||
2 3533 1669050817911057707 CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o 74ebce9e3746476
|
2 1613 1669143915984555117 CMakeFiles/Step_3.dir/src/engine/mpi.cpp.o a59e814306d7978
|
||||||
3 873 1669050852736015051 CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o c243981994ce0811
|
2 2065 1669143916436567852 CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o 49528379fc85b78
|
||||||
2 1948 1669050853816044755 CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o 49528379fc85b78
|
3 2106 1669143916476568980 CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o 80ee4e1261cd645e
|
||||||
3 1980 1669050853844045523 CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o cdbe2fcc55d335a9
|
3 2428 1669143916796577997 CMakeFiles/Step_3.dir/src/engine/util/loaders.cpp.o c81f0f24f2ebce49
|
||||||
1 2102 1669050853968048936 CMakeFiles/Step_3.dir/src/engine/globals.cpp.o 8fd37dd250c0c57b
|
1 2477 1669143916848579462 CMakeFiles/Step_3.dir/src/engine/globals.cpp.o 8fd37dd250c0c57b
|
||||||
3 2209 1669050854076051904 CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o 27ebeccd2f38d7f7
|
3 2658 1669143917024584425 CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o cb39ce8c856d1d8c
|
||||||
2209 2402 1669050854268057187 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o 310c2607009eba21
|
3 2904 1669143917272591413 CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o 41c6f1bdaa5e38f5
|
||||||
2 2423 1669050854288057735 CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o 41c6f1bdaa5e38f5
|
2 3016 1669143917384594567 CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o c8d4462e974892bb
|
||||||
2 2460 1669050854324058727 CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o cb39ce8c856d1d8c
|
2065 3173 1669143917540598963 CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o c243981994ce0811
|
||||||
2 2474 1669050854340059168 CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o 738602a72b552e04
|
3 3465 1669143917832607191 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
||||||
2423 2603 1669050854468062689 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o f69d69f5fadcde41
|
3174 3483 1669143917852607754 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o 310c2607009eba21
|
||||||
2 2748 1669050854612066649 CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o c8d4462e974892bb
|
3484 3726 1669143918096614633 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o f69d69f5fadcde41
|
||||||
2402 2909 1669050854776071157 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o 8002180f0368d0ae
|
2 3871 1669143918240618691 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
||||||
2 2986 1669050854848073140 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
3465 4015 1669143918384622746 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o 8002180f0368d0ae
|
||||||
2 3325 1669050855188082492 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
2 4046 1669143918412623536 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
||||||
1980 3391 1669050855256084360 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o dc0c8b425019900b
|
1614 4368 1669143918736632665 CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o 738602a72b552e04
|
||||||
2 3524 1669050855388087992 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
1 4373 1669143918740632779 CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o 74ebce9e3746476
|
||||||
2603 3662 1669050855528091841 CMakeFiles/Step_3.dir/src/graphics/input.cpp.o 572a0a724d80e2d3
|
2106 4455 1669143918824635146 CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o 27ebeccd2f38d7f7
|
||||||
873 3669 1669050855536092064 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
2904 4590 1669143918960638977 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o dc0c8b425019900b
|
||||||
2460 4278 1669050856144108784 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o 920916506d18de2c
|
2429 4641 1669143919012640444 CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o cdbe2fcc55d335a9
|
||||||
2102 4555 1669050856420116379 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o 8b0c755c9ee468e9
|
4015 5091 1669143919460653068 CMakeFiles/Step_3.dir/src/graphics/input.cpp.o 572a0a724d80e2d3
|
||||||
2748 4681 1669050856548119900 CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o 45b82f6048f98464
|
3726 5450 1669143919820663215 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o 920916506d18de2c
|
||||||
2474 5294 1669050857160136734 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o fe3a1955d79f977a
|
2477 5452 1669143919820663215 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
||||||
1948 5556 1669050857420143883 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o f512f3e5a828153f
|
3016 5493 1669143919860664340 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o 8b0c755c9ee468e9
|
||||||
5556 5839 1669050857704151695 Step_3 f7680d786a7d5c95
|
4046 5917 1669143920288676403 CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o 45b82f6048f98464
|
||||||
1 1967 1669051269279518448 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
2658 6335 1669143920700688013 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o f512f3e5a828153f
|
||||||
1968 2275 1669051269587526981 Step_3 f7680d786a7d5c95
|
3871 6494 1669143920864692632 CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o fe3a1955d79f977a
|
||||||
2 1984 1669053527179723700 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
6494 6795 1669143921164701085 Step_3 809bda9fd3dad622
|
||||||
1 2481 1669053527675737789 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
1 1592 1669144042940131734 CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o 45b82f6048f98464
|
||||||
2481 2725 1669053527919744719 Step_3 f7680d786a7d5c95
|
1592 1847 1669144043192138832 Step_3 809bda9fd3dad622
|
||||||
1 1872 1669053555796536345 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
1872 2161 1669053556084544523 Step_3 f7680d786a7d5c95
|
|
||||||
1 1967 1669053613450172408 CMakeFiles/Step_3.dir/src/engine/globals.cpp.o 8fd37dd250c0c57b
|
|
||||||
1 2149 1669053613634177628 CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o 41c6f1bdaa5e38f5
|
|
||||||
2 2398 1669053613882184663 CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o 738602a72b552e04
|
|
||||||
2 2488 1669053613970187158 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
2 2571 1669053614054189543 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 2867 1669053614350197938 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
1 3097 1669053614582204520 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
3097 3355 1669053614838211781 Step_3 f7680d786a7d5c95
|
|
||||||
1 2137 1669053859941153113 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 2146 1669053859949153340 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
1 2639 1669053860441167256 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
2 2134 1669053873165527108 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
1 2043 1669053933727239285 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
1 2074 1669053933759240190 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 2232 1669053933915244600 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
1 2532 1669053934215253079 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
2532 2779 1669053934463260090 Step_3 f7680d786a7d5c95
|
|
||||||
1 1948 1669053973612366442 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
2 1968 1669053973632367007 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 2382 1669053974044378649 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
1 2334 1669053984328669229 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
2334 2667 1669053984660678609 Step_3 f7680d786a7d5c95
|
|
||||||
2 1957 1669055694936199936 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 1983 1669055694960200605 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
1 2158 1669055695136205515 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
1 2453 1669055695428213659 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
2453 2734 1669055695712221581 Step_3 f7680d786a7d5c95
|
|
||||||
1 2071 1669055771390332839 CMakeFiles/Step_3.dir/src/engine/world.cpp.o 7d8b0912b2dcd105
|
|
||||||
1 2129 1669055771450334513 CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o 8f22bfe01b4af85f
|
|
||||||
1 2200 1669055771518336410 CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o afb5968833aed95e
|
|
||||||
1 2623 1669055771942348242 CMakeFiles/Step_3.dir/src/engine/main.cpp.o 9026a4a98b896ce1
|
|
||||||
2624 2877 1669055772194355273 Step_3 f7680d786a7d5c95
|
|
||||||
|
|
|
@ -28,7 +28,7 @@ The CXX compiler identification is GNU, found in "/home/brett/Documents/Brock/CS
|
||||||
Detecting C compiler ABI info compiled with the following output:
|
Detecting C compiler ABI info compiled with the following output:
|
||||||
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
||||||
|
|
||||||
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_349db && [1/2] Building C object CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o
|
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_b45b2 && [1/2] Building C object CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o
|
||||||
Using built-in specs.
|
Using built-in specs.
|
||||||
COLLECT_GCC=/usr/bin/cc
|
COLLECT_GCC=/usr/bin/cc
|
||||||
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
||||||
|
@ -38,8 +38,8 @@ Configured with: ../src/configure -v --with-pkgversion='Debian 12.2.0-9' --with-
|
||||||
Thread model: posix
|
Thread model: posix
|
||||||
Supported LTO compression algorithms: zlib zstd
|
Supported LTO compression algorithms: zlib zstd
|
||||||
gcc version 12.2.0 (Debian 12.2.0-9)
|
gcc version 12.2.0 (Debian 12.2.0-9)
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/'
|
||||||
/usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_349db.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/cc5U7NyU.s
|
/usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_b45b2.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/ccTi24ll.s
|
||||||
GNU C17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
GNU C17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
||||||
compiled by GNU C version 12.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.25-GMP
|
compiled by GNU C version 12.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.25-GMP
|
||||||
|
|
||||||
|
@ -59,13 +59,13 @@ GNU C17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
||||||
|
|
||||||
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
|
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
|
||||||
Compiler executable checksum: 456cf8f87808ee978ef37b7e90e56bfa
|
Compiler executable checksum: 456cf8f87808ee978ef37b7e90e56bfa
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/'
|
||||||
as -v --64 -o CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o /tmp/cc5U7NyU.s
|
as -v --64 -o CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o /tmp/ccTi24ll.s
|
||||||
GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39
|
GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39
|
||||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.'
|
||||||
[2/2] Linking C executable cmTC_349db
|
[2/2] Linking C executable cmTC_b45b2
|
||||||
Using built-in specs.
|
Using built-in specs.
|
||||||
COLLECT_GCC=/usr/bin/cc
|
COLLECT_GCC=/usr/bin/cc
|
||||||
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
|
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
|
||||||
|
@ -78,9 +78,9 @@ Supported LTO compression algorithms: zlib zstd
|
||||||
gcc version 12.2.0 (Debian 12.2.0-9)
|
gcc version 12.2.0 (Debian 12.2.0-9)
|
||||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_349db' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_349db.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_b45b2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b45b2.'
|
||||||
/usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuzFyOk.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_349db /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o
|
/usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccNSFN4Y.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_b45b2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_349db' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_349db.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_b45b2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b45b2.'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -103,7 +103,7 @@ Parsed C implicit link information from above output:
|
||||||
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
|
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
|
||||||
ignore line: [Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp]
|
ignore line: [Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp]
|
||||||
ignore line: []
|
ignore line: []
|
||||||
ignore line: [Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_349db && [1/2] Building C object CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o]
|
ignore line: [Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_b45b2 && [1/2] Building C object CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o]
|
||||||
ignore line: [Using built-in specs.]
|
ignore line: [Using built-in specs.]
|
||||||
ignore line: [COLLECT_GCC=/usr/bin/cc]
|
ignore line: [COLLECT_GCC=/usr/bin/cc]
|
||||||
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
|
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
|
||||||
|
@ -113,8 +113,8 @@ Parsed C implicit link information from above output:
|
||||||
ignore line: [Thread model: posix]
|
ignore line: [Thread model: posix]
|
||||||
ignore line: [Supported LTO compression algorithms: zlib zstd]
|
ignore line: [Supported LTO compression algorithms: zlib zstd]
|
||||||
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/']
|
||||||
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_349db.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/cc5U7NyU.s]
|
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1 -quiet -v -imultiarch x86_64-linux-gnu /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_b45b2.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/ccTi24ll.s]
|
||||||
ignore line: [GNU C17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)]
|
ignore line: [GNU C17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)]
|
||||||
ignore line: [ compiled by GNU C version 12.2.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.25-GMP]
|
ignore line: [ compiled by GNU C version 12.2.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.25-GMP]
|
||||||
ignore line: []
|
ignore line: []
|
||||||
|
@ -134,13 +134,13 @@ Parsed C implicit link information from above output:
|
||||||
ignore line: []
|
ignore line: []
|
||||||
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
|
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
|
||||||
ignore line: [Compiler executable checksum: 456cf8f87808ee978ef37b7e90e56bfa]
|
ignore line: [Compiler executable checksum: 456cf8f87808ee978ef37b7e90e56bfa]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/']
|
||||||
ignore line: [ as -v --64 -o CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o /tmp/cc5U7NyU.s]
|
ignore line: [ as -v --64 -o CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o /tmp/ccTi24ll.s]
|
||||||
ignore line: [GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39]
|
ignore line: [GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39]
|
||||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.']
|
||||||
ignore line: [[2/2] Linking C executable cmTC_349db]
|
ignore line: [[2/2] Linking C executable cmTC_b45b2]
|
||||||
ignore line: [Using built-in specs.]
|
ignore line: [Using built-in specs.]
|
||||||
ignore line: [COLLECT_GCC=/usr/bin/cc]
|
ignore line: [COLLECT_GCC=/usr/bin/cc]
|
||||||
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper]
|
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper]
|
||||||
|
@ -153,13 +153,13 @@ Parsed C implicit link information from above output:
|
||||||
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
||||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_349db' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_349db.']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_b45b2' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_b45b2.']
|
||||||
link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccuzFyOk.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_349db /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
|
link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccNSFN4Y.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_b45b2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore
|
||||||
arg [-plugin] ==> ignore
|
arg [-plugin] ==> ignore
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore
|
||||||
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore
|
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore
|
||||||
arg [-plugin-opt=-fresolution=/tmp/ccuzFyOk.res] ==> ignore
|
arg [-plugin-opt=-fresolution=/tmp/ccNSFN4Y.res] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
|
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
|
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lc] ==> ignore
|
arg [-plugin-opt=-pass-through=-lc] ==> ignore
|
||||||
|
@ -175,7 +175,7 @@ Parsed C implicit link information from above output:
|
||||||
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
||||||
arg [-pie] ==> ignore
|
arg [-pie] ==> ignore
|
||||||
arg [-o] ==> ignore
|
arg [-o] ==> ignore
|
||||||
arg [cmTC_349db] ==> ignore
|
arg [cmTC_b45b2] ==> ignore
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o]
|
||||||
|
@ -187,7 +187,7 @@ Parsed C implicit link information from above output:
|
||||||
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
|
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
|
||||||
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
|
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
|
||||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..]
|
arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..]
|
||||||
arg [CMakeFiles/cmTC_349db.dir/CMakeCCompilerABI.c.o] ==> ignore
|
arg [CMakeFiles/cmTC_b45b2.dir/CMakeCCompilerABI.c.o] ==> ignore
|
||||||
arg [-lgcc] ==> lib [gcc]
|
arg [-lgcc] ==> lib [gcc]
|
||||||
arg [--push-state] ==> ignore
|
arg [--push-state] ==> ignore
|
||||||
arg [--as-needed] ==> ignore
|
arg [--as-needed] ==> ignore
|
||||||
|
@ -221,7 +221,7 @@ Parsed C implicit link information from above output:
|
||||||
Detecting CXX compiler ABI info compiled with the following output:
|
Detecting CXX compiler ABI info compiled with the following output:
|
||||||
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
||||||
|
|
||||||
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_a2b68 && [1/2] Building CXX object CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o
|
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_e5829 && [1/2] Building CXX object CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o
|
||||||
Using built-in specs.
|
Using built-in specs.
|
||||||
COLLECT_GCC=/usr/bin/c++
|
COLLECT_GCC=/usr/bin/c++
|
||||||
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
|
||||||
|
@ -231,8 +231,8 @@ Configured with: ../src/configure -v --with-pkgversion='Debian 12.2.0-9' --with-
|
||||||
Thread model: posix
|
Thread model: posix
|
||||||
Supported LTO compression algorithms: zlib zstd
|
Supported LTO compression algorithms: zlib zstd
|
||||||
gcc version 12.2.0 (Debian 12.2.0-9)
|
gcc version 12.2.0 (Debian 12.2.0-9)
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/'
|
||||||
/usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_a2b68.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/ccS6h7hU.s
|
/usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_e5829.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/cco27jYd.s
|
||||||
GNU C++17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
GNU C++17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
||||||
compiled by GNU C version 12.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.25-GMP
|
compiled by GNU C version 12.2.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.25-GMP
|
||||||
|
|
||||||
|
@ -256,13 +256,13 @@ GNU C++17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)
|
||||||
|
|
||||||
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
|
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
|
||||||
Compiler executable checksum: 9a37031908c61f144d4ac19d5f618c7f
|
Compiler executable checksum: 9a37031908c61f144d4ac19d5f618c7f
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/'
|
||||||
as -v --64 -o CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccS6h7hU.s
|
as -v --64 -o CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o /tmp/cco27jYd.s
|
||||||
GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39
|
GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39
|
||||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.'
|
||||||
[2/2] Linking CXX executable cmTC_a2b68
|
[2/2] Linking CXX executable cmTC_e5829
|
||||||
Using built-in specs.
|
Using built-in specs.
|
||||||
COLLECT_GCC=/usr/bin/c++
|
COLLECT_GCC=/usr/bin/c++
|
||||||
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
|
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper
|
||||||
|
@ -275,9 +275,9 @@ Supported LTO compression algorithms: zlib zstd
|
||||||
gcc version 12.2.0 (Debian 12.2.0-9)
|
gcc version 12.2.0 (Debian 12.2.0-9)
|
||||||
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/
|
||||||
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a2b68' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_a2b68.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e5829' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_e5829.'
|
||||||
/usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccSsNNer.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_a2b68 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o
|
/usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccxXQdv2.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_e5829 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o
|
||||||
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a2b68' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_a2b68.'
|
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e5829' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_e5829.'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -306,7 +306,7 @@ Parsed CXX implicit link information from above output:
|
||||||
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
|
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
|
||||||
ignore line: [Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp]
|
ignore line: [Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp]
|
||||||
ignore line: []
|
ignore line: []
|
||||||
ignore line: [Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_a2b68 && [1/2] Building CXX object CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o]
|
ignore line: [Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_e5829 && [1/2] Building CXX object CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o]
|
||||||
ignore line: [Using built-in specs.]
|
ignore line: [Using built-in specs.]
|
||||||
ignore line: [COLLECT_GCC=/usr/bin/c++]
|
ignore line: [COLLECT_GCC=/usr/bin/c++]
|
||||||
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
|
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
|
||||||
|
@ -316,8 +316,8 @@ Parsed CXX implicit link information from above output:
|
||||||
ignore line: [Thread model: posix]
|
ignore line: [Thread model: posix]
|
||||||
ignore line: [Supported LTO compression algorithms: zlib zstd]
|
ignore line: [Supported LTO compression algorithms: zlib zstd]
|
||||||
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/']
|
||||||
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_a2b68.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/ccS6h7hU.s]
|
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /opt/netbrains/clion/clion-2022.1.3/bin/cmake/linux/share/cmake-3.23/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_e5829.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -o /tmp/cco27jYd.s]
|
||||||
ignore line: [GNU C++17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)]
|
ignore line: [GNU C++17 (Debian 12.2.0-9) version 12.2.0 (x86_64-linux-gnu)]
|
||||||
ignore line: [ compiled by GNU C version 12.2.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.25-GMP]
|
ignore line: [ compiled by GNU C version 12.2.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.25-GMP]
|
||||||
ignore line: []
|
ignore line: []
|
||||||
|
@ -341,13 +341,13 @@ Parsed CXX implicit link information from above output:
|
||||||
ignore line: []
|
ignore line: []
|
||||||
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
|
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
|
||||||
ignore line: [Compiler executable checksum: 9a37031908c61f144d4ac19d5f618c7f]
|
ignore line: [Compiler executable checksum: 9a37031908c61f144d4ac19d5f618c7f]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/']
|
||||||
ignore line: [ as -v --64 -o CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccS6h7hU.s]
|
ignore line: [ as -v --64 -o CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o /tmp/cco27jYd.s]
|
||||||
ignore line: [GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39]
|
ignore line: [GNU assembler version 2.39 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 2.39]
|
||||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.']
|
||||||
ignore line: [[2/2] Linking CXX executable cmTC_a2b68]
|
ignore line: [[2/2] Linking CXX executable cmTC_e5829]
|
||||||
ignore line: [Using built-in specs.]
|
ignore line: [Using built-in specs.]
|
||||||
ignore line: [COLLECT_GCC=/usr/bin/c++]
|
ignore line: [COLLECT_GCC=/usr/bin/c++]
|
||||||
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper]
|
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper]
|
||||||
|
@ -360,13 +360,13 @@ Parsed CXX implicit link information from above output:
|
||||||
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
ignore line: [gcc version 12.2.0 (Debian 12.2.0-9) ]
|
||||||
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/]
|
||||||
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/]
|
||||||
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_a2b68' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_a2b68.']
|
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_e5829' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_e5829.']
|
||||||
link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccSsNNer.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_a2b68 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
|
link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccxXQdv2.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_e5829 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore
|
||||||
arg [-plugin] ==> ignore
|
arg [-plugin] ==> ignore
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore
|
||||||
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore
|
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore
|
||||||
arg [-plugin-opt=-fresolution=/tmp/ccSsNNer.res] ==> ignore
|
arg [-plugin-opt=-fresolution=/tmp/ccxXQdv2.res] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
|
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
|
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
|
||||||
arg [-plugin-opt=-pass-through=-lc] ==> ignore
|
arg [-plugin-opt=-pass-through=-lc] ==> ignore
|
||||||
|
@ -382,7 +382,7 @@ Parsed CXX implicit link information from above output:
|
||||||
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
|
||||||
arg [-pie] ==> ignore
|
arg [-pie] ==> ignore
|
||||||
arg [-o] ==> ignore
|
arg [-o] ==> ignore
|
||||||
arg [cmTC_a2b68] ==> ignore
|
arg [cmTC_e5829] ==> ignore
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o]
|
||||||
arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o]
|
arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o]
|
||||||
|
@ -394,7 +394,7 @@ Parsed CXX implicit link information from above output:
|
||||||
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
|
arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu]
|
||||||
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
|
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
|
||||||
arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..]
|
arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..]
|
||||||
arg [CMakeFiles/cmTC_a2b68.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
|
arg [CMakeFiles/cmTC_e5829.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
|
||||||
arg [-lstdc++] ==> lib [stdc++]
|
arg [-lstdc++] ==> lib [stdc++]
|
||||||
arg [-lm] ==> lib [m]
|
arg [-lm] ==> lib [m]
|
||||||
arg [-lgcc_s] ==> lib [gcc_s]
|
arg [-lgcc_s] ==> lib [gcc_s]
|
||||||
|
@ -424,13 +424,13 @@ Parsed CXX implicit link information from above output:
|
||||||
Determining if the CL_VERSION_2_2 exist passed with the following output:
|
Determining if the CL_VERSION_2_2 exist passed with the following output:
|
||||||
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
Change Dir: /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp
|
||||||
|
|
||||||
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_0749f && [1/2] Building C object CMakeFiles/cmTC_0749f.dir/CheckSymbolExists.c.o
|
Run Build Command(s):/opt/netbrains/clion/clion-2022.1.3/bin/ninja/linux/ninja cmTC_8702e && [1/2] Building C object CMakeFiles/cmTC_8702e.dir/CheckSymbolExists.c.o
|
||||||
In file included from /usr/include/CL/cl.h:20,
|
In file included from /usr/include/CL/cl.h:20,
|
||||||
from /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:
|
from /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c:2:
|
||||||
/usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
|
/usr/include/CL/cl_version.h:22:9: note: ‘#pragma message: cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)’
|
||||||
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
|
22 | #pragma message("cl_version.h: CL_TARGET_OPENCL_VERSION is not defined. Defaulting to 300 (OpenCL 3.0)")
|
||||||
| ^~~~~~~
|
| ^~~~~~~
|
||||||
[2/2] Linking C executable cmTC_0749f
|
[2/2] Linking C executable cmTC_8702e
|
||||||
|
|
||||||
|
|
||||||
File /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
|
File /home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug/CMakeFiles/CMakeTmp/CheckSymbolExists.c:
|
||||||
|
|
Binary file not shown.
|
@ -1,3 +1,3 @@
|
||||||
Start testing: Nov 21 13:36 EST
|
Start testing: Nov 22 14:07 EST
|
||||||
----------------------------------------------------------
|
----------------------------------------------------------
|
||||||
End testing: Nov 21 13:36 EST
|
End testing: Nov 22 14:07 EST
|
||||||
|
|
|
@ -89,6 +89,14 @@ build CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o: CXX_COMPILER__Step_
|
||||||
OBJECT_DIR = CMakeFiles/Step_3.dir
|
OBJECT_DIR = CMakeFiles/Step_3.dir
|
||||||
OBJECT_FILE_DIR = CMakeFiles/Step_3.dir/src/engine/math
|
OBJECT_FILE_DIR = CMakeFiles/Step_3.dir/src/engine/math
|
||||||
|
|
||||||
|
build CMakeFiles/Step_3.dir/src/engine/mpi.cpp.o: CXX_COMPILER__Step_3_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 3/src/engine/mpi.cpp || cmake_object_order_depends_target_Step_3
|
||||||
|
DEFINES = -DCL_TARGET_OPENCL_VERSION=220
|
||||||
|
DEP_FILE = CMakeFiles/Step_3.dir/src/engine/mpi.cpp.o.d
|
||||||
|
FLAGS = -fsanitize=address -g -march=native -g -fsanitize=address -std=gnu++20
|
||||||
|
INCLUDES = -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 3/cmake-build-debug" -I"/home/brett/Documents/Brock/CS 3P93/Project/Step 3/include"
|
||||||
|
OBJECT_DIR = CMakeFiles/Step_3.dir
|
||||||
|
OBJECT_FILE_DIR = CMakeFiles/Step_3.dir/src/engine
|
||||||
|
|
||||||
build CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o: CXX_COMPILER__Step_3_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 3/src/engine/raytracing.cpp || cmake_object_order_depends_target_Step_3
|
build CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o: CXX_COMPILER__Step_3_Debug /home/brett/Documents/Brock/CS$ 3P93/Project/Step$ 3/src/engine/raytracing.cpp || cmake_object_order_depends_target_Step_3
|
||||||
DEFINES = -DCL_TARGET_OPENCL_VERSION=220
|
DEFINES = -DCL_TARGET_OPENCL_VERSION=220
|
||||||
DEP_FILE = CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o.d
|
DEP_FILE = CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o.d
|
||||||
|
@ -265,7 +273,7 @@ build CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o: CXX_COMPILER__Step_3_Debug /hom
|
||||||
#############################################
|
#############################################
|
||||||
# Link the executable Step_3
|
# Link the executable Step_3
|
||||||
|
|
||||||
build Step_3: CXX_EXECUTABLE_LINKER__Step_3_Debug CMakeFiles/Step_3.dir/src/engine/globals.cpp.o CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o CMakeFiles/Step_3.dir/src/engine/main.cpp.o CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o CMakeFiles/Step_3.dir/src/engine/util/loaders.cpp.o CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o CMakeFiles/Step_3.dir/src/engine/world.cpp.o CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o CMakeFiles/Step_3.dir/src/graphics/input.cpp.o CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o | /usr/lib/x86_64-linux-gnu/libGLU.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libglfw.so.3.3 /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
|
build Step_3: CXX_EXECUTABLE_LINKER__Step_3_Debug CMakeFiles/Step_3.dir/src/engine/globals.cpp.o CMakeFiles/Step_3.dir/src/engine/image/image.cpp.o CMakeFiles/Step_3.dir/src/engine/main.cpp.o CMakeFiles/Step_3.dir/src/engine/math/bvh.cpp.o CMakeFiles/Step_3.dir/src/engine/math/colliders.cpp.o CMakeFiles/Step_3.dir/src/engine/mpi.cpp.o CMakeFiles/Step_3.dir/src/engine/raytracing.cpp.o CMakeFiles/Step_3.dir/src/engine/util/debug.cpp.o CMakeFiles/Step_3.dir/src/engine/util/loaders.cpp.o CMakeFiles/Step_3.dir/src/engine/util/models.cpp.o CMakeFiles/Step_3.dir/src/engine/util/parser.cpp.o CMakeFiles/Step_3.dir/src/engine/world.cpp.o CMakeFiles/Step_3.dir/src/graphics/debug_gui.cpp.o CMakeFiles/Step_3.dir/src/graphics/gl/gl.c.o CMakeFiles/Step_3.dir/src/graphics/gl/gl.cpp.o CMakeFiles/Step_3.dir/src/graphics/gl/shader.cpp.o CMakeFiles/Step_3.dir/src/graphics/graphics.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_demo.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_draw.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_glfw.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_opengl3.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_impl_x11.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_tables.cpp.o CMakeFiles/Step_3.dir/src/graphics/imgui/imgui_widgets.cpp.o CMakeFiles/Step_3.dir/src/graphics/input.cpp.o CMakeFiles/Step_3.dir/src/opencl/cl.cpp.o | /usr/lib/x86_64-linux-gnu/libGLU.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libglfw.so.3.3 /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
|
||||||
FLAGS = -fsanitize=address -g -march=native -g
|
FLAGS = -fsanitize=address -g -march=native -g
|
||||||
LINK_FLAGS = -fsanitize=address
|
LINK_FLAGS = -fsanitize=address
|
||||||
LINK_LIBRARIES = -lpthread /usr/lib/x86_64-linux-gnu/libGLU.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libglfw.so.3.3 /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
|
LINK_LIBRARIES = -lpthread /usr/lib/x86_64-linux-gnu/libGLU.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libglfw.so.3.3 /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libOpenCL.so /usr/lib/x86_64-linux-gnu/libGLX.so /usr/lib/x86_64-linux-gnu/libOpenGL.so
|
||||||
|
|
|
@ -66,7 +66,11 @@ namespace Raytracing {
|
||||||
// debug ints.
|
// debug ints.
|
||||||
int index, hit = 0;
|
int index, hit = 0;
|
||||||
BVHNode(std::vector<BVHObject> objs, AABB aabb, BVHNode* left, BVHNode* right): objs(std::move(objs)), aabb(std::move(aabb)),
|
BVHNode(std::vector<BVHObject> objs, AABB aabb, BVHNode* left, BVHNode* right): objs(std::move(objs)), aabb(std::move(aabb)),
|
||||||
left(left), right(right) {index = count++;}
|
left(left), right(right) {
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
|
index = count++;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
~BVHNode() {
|
~BVHNode() {
|
||||||
delete (left);
|
delete (left);
|
||||||
delete (right);
|
delete (right);
|
||||||
|
@ -138,7 +142,11 @@ namespace Raytracing {
|
||||||
int index, hit = 0;
|
int index, hit = 0;
|
||||||
BVHHitData firstHitRayIntersectTraversal(const Ray& r, PRECISION_TYPE min, PRECISION_TYPE max);
|
BVHHitData firstHitRayIntersectTraversal(const Ray& r, PRECISION_TYPE min, PRECISION_TYPE max);
|
||||||
TriangleBVHNode(std::vector<TriangleBVHObject> objs, AABB aabb, TriangleBVHNode* left, TriangleBVHNode* right)
|
TriangleBVHNode(std::vector<TriangleBVHObject> objs, AABB aabb, TriangleBVHNode* left, TriangleBVHNode* right)
|
||||||
: objs(std::move(objs)), aabb(std::move(aabb)), left(left), right(right) {index = count++;}
|
: objs(std::move(objs)), aabb(std::move(aabb)), left(left), right(right) {
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
|
index = count++;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
~TriangleBVHNode() {
|
~TriangleBVHNode() {
|
||||||
delete (left);
|
delete (left);
|
||||||
delete (right);
|
delete (right);
|
||||||
|
@ -159,8 +167,8 @@ namespace Raytracing {
|
||||||
auto aabbVertexData = Shapes::cubeVertexBuilder{};
|
auto aabbVertexData = Shapes::cubeVertexBuilder{};
|
||||||
if (aabbVAO == nullptr)
|
if (aabbVAO == nullptr)
|
||||||
aabbVAO = std::make_shared<VAO>(aabbVertexData.cubeVerticesRaw, aabbVertexData.cubeUVs);
|
aabbVAO = std::make_shared<VAO>(aabbVertexData.cubeVerticesRaw, aabbVertexData.cubeUVs);
|
||||||
#endif
|
|
||||||
index = count++;
|
index = count++;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void addObjects(const std::vector<TriangleBVHObject>& objects);
|
void addObjects(const std::vector<TriangleBVHObject>& objects);
|
||||||
|
|
|
@ -0,0 +1,25 @@
|
||||||
|
//
|
||||||
|
// Created by brett on 22/11/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#ifndef STEP_3_MPI_H
|
||||||
|
#define STEP_3_MPI_H
|
||||||
|
|
||||||
|
#include<config.h>
|
||||||
|
|
||||||
|
#ifdef USE_MPI
|
||||||
|
#include <mpi.h>
|
||||||
|
|
||||||
|
namespace Raytracing {
|
||||||
|
|
||||||
|
extern int numberOfProcesses;
|
||||||
|
extern int currentProcessID;
|
||||||
|
|
||||||
|
class MPI {
|
||||||
|
public:
|
||||||
|
static void init();
|
||||||
|
};
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif //STEP_3_MPI_H
|
|
@ -112,9 +112,11 @@ namespace Raytracing {
|
||||||
struct WorldConfig {
|
struct WorldConfig {
|
||||||
bool useBVH = true;
|
bool useBVH = true;
|
||||||
bool padding[7]{};
|
bool padding[7]{};
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
Shader& worldShader;
|
Shader& worldShader;
|
||||||
|
|
||||||
explicit WorldConfig(Shader& shader): worldShader(shader) {}
|
explicit WorldConfig(Shader& shader): worldShader(shader) {}
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
|
|
||||||
class World {
|
class World {
|
||||||
|
@ -139,8 +141,10 @@ namespace Raytracing {
|
||||||
|
|
||||||
inline void add(Object* object) {
|
inline void add(Object* object) {
|
||||||
objects.push_back(object);
|
objects.push_back(object);
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
if (object->getBVHTree().bvhTree != nullptr && !object->getBVHTree().isRegular)
|
if (object->getBVHTree().bvhTree != nullptr && !object->getBVHTree().isRegular)
|
||||||
new DebugBVH{(TriangleBVHTree*) object->getBVHTree().bvhTree, m_config.worldShader};
|
new DebugBVH{(TriangleBVHTree*) object->getBVHTree().bvhTree, m_config.worldShader};
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
inline void add(const std::string& materialName, Material* mat) { materials.insert({materialName, mat}); }
|
inline void add(const std::string& materialName, Material* mat) { materials.insert({materialName, mat}); }
|
||||||
|
|
|
@ -202,6 +202,7 @@ class Texture {
|
||||||
void bind() const;
|
void bind() const;
|
||||||
void unbind();
|
void unbind();
|
||||||
void enableGlTextures(int textureCount);
|
void enableGlTextures(int textureCount);
|
||||||
|
[[nodiscard]] inline unsigned int getTextureID() const { return textureID; }
|
||||||
};
|
};
|
||||||
|
|
||||||
class VAO {
|
class VAO {
|
||||||
|
|
|
@ -70,6 +70,7 @@ namespace Raytracing {
|
||||||
bool isMouseGrabbed();
|
bool isMouseGrabbed();
|
||||||
[[nodiscard]] inline int displayWidth() const {return m_displayWidth;}
|
[[nodiscard]] inline int displayWidth() const {return m_displayWidth;}
|
||||||
[[nodiscard]] inline int displayHeight() const {return m_displayHeight;}
|
[[nodiscard]] inline int displayHeight() const {return m_displayHeight;}
|
||||||
|
[[nodiscard]] inline GLFWwindow* getWindow() const {return window;}
|
||||||
|
|
||||||
void closeWindow();
|
void closeWindow();
|
||||||
~XWindow();
|
~XWindow();
|
||||||
|
|
|
@ -8,11 +8,19 @@
|
||||||
|
|
||||||
// OpenCL includes
|
// OpenCL includes
|
||||||
#include <CL/cl.h>
|
#include <CL/cl.h>
|
||||||
|
#include <CL/cl_gl.h>
|
||||||
|
#include <config.h>
|
||||||
|
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#include <engine/util/std.h>
|
#include <engine/util/std.h>
|
||||||
|
|
||||||
namespace Raytracing {
|
namespace Raytracing {
|
||||||
|
|
||||||
|
|
||||||
class CLProgram {
|
class CLProgram {
|
||||||
private:
|
private:
|
||||||
cl_int m_CL_ERR{};
|
cl_int m_CL_ERR{};
|
||||||
|
@ -26,6 +34,7 @@ namespace Raytracing {
|
||||||
std::unordered_map<std::string, cl_mem> buffers;
|
std::unordered_map<std::string, cl_mem> buffers;
|
||||||
std::unordered_map<std::string, cl_kernel> kernels;
|
std::unordered_map<std::string, cl_kernel> kernels;
|
||||||
|
|
||||||
|
void checkBasicErrors() const;
|
||||||
public:
|
public:
|
||||||
explicit CLProgram(const std::string& file);
|
explicit CLProgram(const std::string& file);
|
||||||
void loadCLShader(cl_context context, cl_device_id deviceID);
|
void loadCLShader(cl_context context, cl_device_id deviceID);
|
||||||
|
@ -33,11 +42,16 @@ namespace Raytracing {
|
||||||
void createKernel(const std::string& kernelName);
|
void createKernel(const std::string& kernelName);
|
||||||
void createBuffer(const std::string& bufferName, cl_mem_flags flags, size_t bytes);
|
void createBuffer(const std::string& bufferName, cl_mem_flags flags, size_t bytes);
|
||||||
void createBuffer(const std::string& bufferName, cl_mem_flags flags, size_t bytes, void* ptr);
|
void createBuffer(const std::string& bufferName, cl_mem_flags flags, size_t bytes, void* ptr);
|
||||||
|
void createImage(const std::string& imageName, int width, int height);
|
||||||
|
|
||||||
void setKernelArgument(const std::string& kernel, const std::string& buffer, int argIndex);
|
void setKernelArgument(const std::string& kernel, const std::string& buffer, int argIndex);
|
||||||
|
|
||||||
|
void runKernel(const std::string& kernel, size_t globalWorkSize, size_t localWorkSize, const size_t* globalWorkOffset = NULL);
|
||||||
|
void runKernel(const std::string& kernel, size_t* globalWorkSize, size_t* localWorkSize, cl_uint workDim = 1, const size_t* globalWorkOffset = NULL);
|
||||||
|
|
||||||
void writeBuffer(const std::string& buffer, size_t bytes, void* ptr, cl_bool blocking = CL_TRUE, size_t offset = 0);
|
void writeBuffer(const std::string& buffer, size_t bytes, void* ptr, cl_bool blocking = CL_TRUE, size_t offset = 0);
|
||||||
void readBuffer(const std::string& buffer, size_t bytes, void* ptr, cl_bool blocking = CL_TRUE, size_t offset = 0);
|
void readBuffer(const std::string& buffer, size_t bytes, void* ptr, cl_bool blocking = CL_TRUE, size_t offset = 0);
|
||||||
|
void readImage(const std::string& imageName, size_t width, size_t height, void* ptr, cl_bool blocking = CL_TRUE, size_t x = 0, size_t y = 0);
|
||||||
|
|
||||||
void flushCommands();
|
void flushCommands();
|
||||||
void finishCommands();
|
void finishCommands();
|
||||||
|
@ -57,13 +71,18 @@ namespace Raytracing {
|
||||||
cl_device_id m_deviceID{};
|
cl_device_id m_deviceID{};
|
||||||
cl_uint m_numOfDevices{};
|
cl_uint m_numOfDevices{};
|
||||||
|
|
||||||
|
cl_uint m_computeUnits;
|
||||||
|
cl_uint m_deviceClockFreq;
|
||||||
|
|
||||||
cl_context m_context;
|
cl_context m_context;
|
||||||
|
|
||||||
static void printDeviceInfo(cl_device_id device);
|
void printDeviceInfo(cl_device_id device);
|
||||||
public:
|
public:
|
||||||
explicit OpenCL(int platformID = 0, int deviceID = 0);
|
explicit OpenCL(int platformID = 0, int deviceID = 0);
|
||||||
static void init();
|
static void init();
|
||||||
static void createCLProgram(CLProgram& program);
|
static void createCLProgram(CLProgram& program);
|
||||||
|
static cl_uint activeDeviceComputeUnits();
|
||||||
|
static cl_uint activeDeviceFrequency();
|
||||||
|
|
||||||
~OpenCL();
|
~OpenCL();
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
__kernel void vector_add(__global const int *A, __global const int *B, __global int *C) {
|
||||||
|
|
||||||
|
// Get the index of the current element to be processed
|
||||||
|
int i = get_global_id(0);
|
||||||
|
|
||||||
|
// Do the operation
|
||||||
|
C[i] = A[i] + B[i];
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
|
||||||
|
__kernel void drawImage(__write_only image2d_t output) {
|
||||||
|
|
||||||
|
// Get the index of the current element to be processed
|
||||||
|
int i = get_global_id(0);
|
||||||
|
int j = get_global_id(1);
|
||||||
|
|
||||||
|
float color = sin(i / 10.0) * sin (j / 10.0);
|
||||||
|
|
||||||
|
write_imagef(output, (int2)(i, j), (float4)(color, color, color, 1.0));
|
||||||
|
}
|
|
@ -19,4 +19,8 @@ namespace Raytracing {
|
||||||
int count = 0;
|
int count = 0;
|
||||||
int selected = 0;
|
int selected = 0;
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef USE_MPI
|
||||||
|
int numberOfProcesses;
|
||||||
|
int currentProcessID;
|
||||||
|
#endif
|
||||||
}
|
}
|
|
@ -7,11 +7,17 @@
|
||||||
#include "engine/util/debug.h"
|
#include "engine/util/debug.h"
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <csignal>
|
#include <csignal>
|
||||||
|
|
||||||
|
#ifdef USE_MPI
|
||||||
|
|
||||||
|
#include <engine/mpi.h>
|
||||||
|
|
||||||
|
#endif
|
||||||
//#include <sys/time.h>
|
//#include <sys/time.h>
|
||||||
//#include <sys/resource.h>
|
//#include <sys/resource.h>
|
||||||
|
|
||||||
#ifdef COMPILE_GUI
|
#ifdef COMPILE_GUI
|
||||||
|
|
||||||
#include <graphics/graphics.h>
|
#include <graphics/graphics.h>
|
||||||
#include <graphics/gl/gl.h>
|
#include <graphics/gl/gl.h>
|
||||||
#include <graphics/gl/shader.h>
|
#include <graphics/gl/shader.h>
|
||||||
|
@ -19,7 +25,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef COMPILE_OPENCL
|
#ifdef COMPILE_OPENCL
|
||||||
|
|
||||||
#include <opencl/cl.h>
|
#include <opencl/cl.h>
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@ -30,149 +36,13 @@
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace Raytracing{
|
namespace Raytracing {
|
||||||
extern Signals* RTSignal;
|
extern Signals* RTSignal;
|
||||||
}
|
}
|
||||||
|
|
||||||
using namespace Raytracing;
|
using namespace Raytracing;
|
||||||
|
|
||||||
typedef unsigned long binsType;
|
|
||||||
|
|
||||||
std::queue<binsType> sort(std::queue<binsType>& q, bool dir = false){
|
|
||||||
std::queue<binsType> ret;
|
|
||||||
auto size = q.size();
|
|
||||||
binsType vals[size];
|
|
||||||
for (int i = 0; i < size; i++){
|
|
||||||
vals[i] = q.front();
|
|
||||||
q.pop();
|
|
||||||
}
|
|
||||||
for (int i = 0; i < size; i++){
|
|
||||||
for (int j = i; j < size; j++){
|
|
||||||
if (dir) {
|
|
||||||
if (vals[j] < vals[i]) {
|
|
||||||
auto temp = vals[j];
|
|
||||||
vals[j] = vals[i];
|
|
||||||
vals[i] = temp;
|
|
||||||
}
|
|
||||||
} else{
|
|
||||||
if (vals[j] > vals[i]) {
|
|
||||||
auto temp = vals[j];
|
|
||||||
vals[j] = vals[i];
|
|
||||||
vals[i] = temp;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
for (int i = 0; i < size; i++){
|
|
||||||
ret.push(vals[i]);
|
|
||||||
}
|
|
||||||
return ret;
|
|
||||||
};
|
|
||||||
|
|
||||||
int main(int argc, char** args) {
|
int main(int argc, char** args) {
|
||||||
/*int numOfObjects = 50000;
|
|
||||||
binsType binCapacity = 100.0;
|
|
||||||
|
|
||||||
Random rnd1{0, binCapacity};
|
|
||||||
|
|
||||||
binsType objects[numOfObjects];
|
|
||||||
std::vector<binsType> bins;
|
|
||||||
|
|
||||||
for (int i = 0; i < numOfObjects; i++)
|
|
||||||
objects[i] = (rnd1.getULong());
|
|
||||||
|
|
||||||
std::queue<binsType> less;
|
|
||||||
std::queue<binsType> more;
|
|
||||||
|
|
||||||
for (int i = 0; i < numOfObjects; i++){
|
|
||||||
if (objects[i] >= binCapacity){
|
|
||||||
bins.push_back(objects[i]);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
if (objects[i] < binCapacity/2)
|
|
||||||
less.push(objects[i]);
|
|
||||||
else
|
|
||||||
more.push(objects[i]);
|
|
||||||
}
|
|
||||||
|
|
||||||
//less = sort(less, true);
|
|
||||||
//more = sort(more, false);
|
|
||||||
|
|
||||||
binsType currentBin = 0;
|
|
||||||
|
|
||||||
|
|
||||||
while (true){
|
|
||||||
if (!more.empty()) {
|
|
||||||
auto moreVal = more.front();
|
|
||||||
while (!more.empty() && moreVal + currentBin <= binCapacity){
|
|
||||||
currentBin += moreVal;
|
|
||||||
more.pop();
|
|
||||||
moreVal = more.front();
|
|
||||||
}
|
|
||||||
ilog << currentBin << "\n";
|
|
||||||
auto lessVal = less.front();
|
|
||||||
while (!less.empty() && lessVal + currentBin <= binCapacity){
|
|
||||||
currentBin += lessVal;
|
|
||||||
less.pop();
|
|
||||||
lessVal = less.front();
|
|
||||||
}
|
|
||||||
dlog << currentBin << " " << lessVal << "\n";
|
|
||||||
} else {
|
|
||||||
if (less.empty())
|
|
||||||
break;
|
|
||||||
auto lessVal = less.front();
|
|
||||||
while (!less.empty() && lessVal + currentBin <= binCapacity){
|
|
||||||
currentBin += lessVal;
|
|
||||||
less.pop();
|
|
||||||
lessVal = less.front();
|
|
||||||
}
|
|
||||||
wlog << currentBin << " " << lessVal << "\n";
|
|
||||||
}
|
|
||||||
if (currentBin <= 0)
|
|
||||||
break;
|
|
||||||
bins.push_back(currentBin);
|
|
||||||
currentBin = 0;
|
|
||||||
}*/
|
|
||||||
|
|
||||||
/*while (!more.empty()) {
|
|
||||||
currentBin = more.front();
|
|
||||||
more.pop();
|
|
||||||
double lessVal = less.front();
|
|
||||||
while (!less.empty() && currentBin + lessVal < binCapacity){
|
|
||||||
currentBin += lessVal;
|
|
||||||
less.pop();
|
|
||||||
lessVal = less.front();
|
|
||||||
}
|
|
||||||
if (currentBin > 0)
|
|
||||||
bins.push_back(currentBin);
|
|
||||||
currentBin = 0;
|
|
||||||
if (less.empty()) {
|
|
||||||
double moreVal = more.front();
|
|
||||||
while (!more.empty()){
|
|
||||||
while (!more.empty() && currentBin + moreVal < binCapacity) {
|
|
||||||
currentBin += moreVal;
|
|
||||||
more.pop();
|
|
||||||
moreVal = more.front();
|
|
||||||
}
|
|
||||||
if (currentBin > 0)
|
|
||||||
bins.push_back(currentBin);
|
|
||||||
currentBin = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}*/
|
|
||||||
/*int goodCount = 0;
|
|
||||||
int greatCount = 0;
|
|
||||||
for (binsType bin : bins) {
|
|
||||||
tlog << bin << "\n";
|
|
||||||
if (bin >= (binsType)((double)binCapacity * 0.95))
|
|
||||||
goodCount++;
|
|
||||||
if (bin >= (binsType)((double)binCapacity * 0.99))
|
|
||||||
greatCount++;
|
|
||||||
}
|
|
||||||
tlog << "We made " << bins.size() << " bins!\n";
|
|
||||||
tlog << "With " << goodCount << " good bins and " << greatCount << " great bins!\n";
|
|
||||||
|
|
||||||
return 0;*/
|
|
||||||
// since this is linux only we can easily set our process priority to be high with a syscall
|
// since this is linux only we can easily set our process priority to be high with a syscall
|
||||||
// requires root. TODO: find way to doing this without root even if asking for user privilege escalation
|
// requires root. TODO: find way to doing this without root even if asking for user privilege escalation
|
||||||
//setpriority(PRIO_PROCESS, 0, -20);
|
//setpriority(PRIO_PROCESS, 0, -20);
|
||||||
|
@ -196,8 +66,7 @@ int main(int argc, char** args) {
|
||||||
// not implemented yet
|
// not implemented yet
|
||||||
parser.addOption({{"--gpu"},
|
parser.addOption({{"--gpu"},
|
||||||
{"-c"}}, "Enables GPU Compute\n"
|
{"-c"}}, "Enables GPU Compute\n"
|
||||||
"\tRequires the --gui/-g flag enabled,\n"
|
"\tWill use OpenCL compute to render the image\n");
|
||||||
"\tWill use OpenGL compute shaders to render the image\n");
|
|
||||||
parser.addOption("--output", "Output Directory\n"
|
parser.addOption("--output", "Output Directory\n"
|
||||||
"\tSet the output directory for the rendered image. Defaults to the local directory.\n", "./");
|
"\tSet the output directory for the rendered image. Defaults to the local directory.\n", "./");
|
||||||
parser.addOption("--format", "Output Format\n"
|
parser.addOption("--format", "Output Format\n"
|
||||||
|
@ -219,21 +88,28 @@ int main(int argc, char** args) {
|
||||||
if (parser.parse(args, argc))
|
if (parser.parse(args, argc))
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
if (signal(SIGTERM, [] (int sig) -> void {
|
if (signal(SIGTERM, [](int sig) -> void {
|
||||||
ilog<<"Computations complete.\nHalting now...\n";
|
ilog << "Computations complete.\nHalting now...\n";
|
||||||
RTSignal->haltExecution = true;
|
RTSignal->haltExecution = true;
|
||||||
})==SIG_ERR) { elog<<"Unable to change signal handler.\n"; return 1; }
|
}) == SIG_ERR) {
|
||||||
if (signal(SIGINT, [] (int sig) -> void {
|
elog << "Unable to change signal handler.\n";
|
||||||
ilog<<"Computations complete.\nHalting now...\n";
|
return 1;
|
||||||
|
}
|
||||||
|
if (signal(SIGINT, [](int sig) -> void {
|
||||||
|
ilog << "Computations complete.\nHalting now...\n";
|
||||||
RTSignal->haltExecution = true;
|
RTSignal->haltExecution = true;
|
||||||
})==SIG_ERR) { elog<<"Unable to change signal handler.\n"; return 1; }
|
}) == SIG_ERR) {
|
||||||
|
elog << "Unable to change signal handler.\n";
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
tlog << "Parsing complete! Starting raytracer with options:" << std::endl;
|
tlog << "Parsing complete! Starting raytracer with options:" << std::endl;
|
||||||
// not perfect (contains duplicates) but good enough.
|
// not perfect (contains duplicates) but good enough.
|
||||||
parser.printAllInInfo();
|
parser.printAllInInfo();
|
||||||
|
|
||||||
#ifdef COMPILE_OPENCL
|
#ifdef USE_MPI
|
||||||
OpenCL::init();
|
Raytracing::MPI::init();
|
||||||
|
if (currentProcessID == 0) {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef COMPILE_GUI
|
#ifdef COMPILE_GUI
|
||||||
|
@ -243,6 +119,12 @@ int main(int argc, char** args) {
|
||||||
Shader worldShader("../resources/shaders/world.vs", "../resources/shaders/world.fs");
|
Shader worldShader("../resources/shaders/world.vs", "../resources/shaders/world.fs");
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifdef COMPILE_OPENCL
|
||||||
|
OpenCL::init();
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Raytracing::Image image(1440, 720);
|
Raytracing::Image image(1440, 720);
|
||||||
//Raytracing::Image image(std::stoi(parser.getOptionValue("-w")), std::stoi(parser.getOptionValue("-h")));
|
//Raytracing::Image image(std::stoi(parser.getOptionValue("-w")), std::stoi(parser.getOptionValue("-h")));
|
||||||
|
@ -253,10 +135,14 @@ int main(int argc, char** args) {
|
||||||
camera.lookAt({0, 0, 0});
|
camera.lookAt({0, 0, 0});
|
||||||
|
|
||||||
|
|
||||||
WorldConfig worldConfig {worldShader};
|
#ifdef COMPILE_GUI
|
||||||
|
WorldConfig worldConfig{worldShader};
|
||||||
|
#else
|
||||||
|
WorldConfig worldConfig;
|
||||||
|
#endif
|
||||||
worldConfig.useBVH = true;
|
worldConfig.useBVH = true;
|
||||||
|
|
||||||
Raytracing::World world {worldConfig};
|
Raytracing::World world{worldConfig};
|
||||||
|
|
||||||
// assumes you are running it from a subdirectory, "build" or "cmake-build-release", etc.
|
// assumes you are running it from a subdirectory, "build" or "cmake-build-release", etc.
|
||||||
Raytracing::ModelData spider = Raytracing::OBJLoader::loadModel(parser.getOptionValue("--resources") + "spider.obj");
|
Raytracing::ModelData spider = Raytracing::OBJLoader::loadModel(parser.getOptionValue("--resources") + "spider.obj");
|
||||||
|
@ -288,25 +174,49 @@ int main(int argc, char** args) {
|
||||||
|
|
||||||
if (parser.hasOption("--gui") || parser.hasOption("-g")) {
|
if (parser.hasOption("--gui") || parser.hasOption("-g")) {
|
||||||
#ifdef COMPILE_GUI
|
#ifdef COMPILE_GUI
|
||||||
Raytracing::Raycaster raycaster {camera, image, world, parser};
|
Raytracing::Raycaster raycaster{camera, image, world, parser};
|
||||||
Texture mainImage(&image);
|
Texture mainImage(&image);
|
||||||
Shader shader("../resources/shaders/basic.vs", "../resources/shaders/basic.fs");
|
|
||||||
Raytracing::DisplayRenderer renderer {*window, mainImage, world, shader, worldShader, raycaster, parser, camera};
|
CLProgram program(parser.getOptionValue("--resources") + "opencl/image.cl");
|
||||||
while (!window->shouldWindowClose()) {
|
OpenCL::createCLProgram(program);
|
||||||
window->beginUpdate();
|
program.createKernel("drawImage");
|
||||||
renderer.draw();
|
program.createImage("mainImage", image.getWidth(), image.getHeight());
|
||||||
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
program.setKernelArgument("drawImage", "mainImage", 0);
|
||||||
world.drawBVH(worldShader);
|
|
||||||
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
size_t works[2] {(size_t) image.getWidth(), (size_t) image.getHeight()};
|
||||||
window->endUpdate();
|
size_t localWorks[2] {64, 64};
|
||||||
|
|
||||||
|
unsigned char bytes[image.getWidth() * image.getHeight() * 4];
|
||||||
|
for (int i = 0; i < image.getWidth() * image.getHeight() * 4; i++)
|
||||||
|
bytes[i] = 0;
|
||||||
|
|
||||||
|
Shader shader("../resources/shaders/basic.vs", "../resources/shaders/basic.fs");
|
||||||
|
Raytracing::DisplayRenderer renderer{*window, mainImage, world, shader, worldShader, raycaster, parser, camera};
|
||||||
|
while (!window->shouldWindowClose()) {
|
||||||
|
window->beginUpdate();
|
||||||
|
renderer.draw();
|
||||||
|
program.runKernel("drawImage", works, NULL, 2);
|
||||||
|
program.readImage("mainImage", image.getWidth(), image.getHeight(), bytes);
|
||||||
|
const PRECISION_TYPE colorFactor = 1.0 / 255.0;
|
||||||
|
for (int i = 0; i < image.getWidth(); i++){
|
||||||
|
for (int j = 0; j < image.getHeight(); j++){
|
||||||
|
const auto pixelData = bytes + (j * 4 * image.getWidth() + i * 4);
|
||||||
|
//tlog << (int)pixelData[0] << " " << (int)pixelData[1] << " " << (int)pixelData[2] << "\n";
|
||||||
|
image.setPixelColor(i, j, {pixelData[0] * colorFactor, pixelData[1] * colorFactor, pixelData[2] * colorFactor});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
RTSignal->haltExecution= true;
|
glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
|
||||||
raycaster.join();
|
world.drawBVH(worldShader);
|
||||||
|
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
|
||||||
|
window->endUpdate();
|
||||||
|
}
|
||||||
|
RTSignal->haltExecution = true;
|
||||||
|
raycaster.join();
|
||||||
#else
|
#else
|
||||||
flog << "Program not compiled with GUI support! Unable to continue!\n";
|
flog << "Program not compiled with GUI support! Unable to open GUI\n";
|
||||||
#endif
|
#endif
|
||||||
} else {
|
} else {
|
||||||
Raytracing::Raycaster raycaster {camera, image, world, parser};
|
Raytracing::Raycaster raycaster{camera, image, world, parser};
|
||||||
// run the raycaster the standard way
|
// run the raycaster the standard way
|
||||||
ilog << "Running raycaster!\n";
|
ilog << "Running raycaster!\n";
|
||||||
// we don't actually have to check for --single since it's implied to be default true.
|
// we don't actually have to check for --single since it's implied to be default true.
|
||||||
|
@ -335,9 +245,13 @@ int main(int argc, char** args) {
|
||||||
ilog << "Writing Image!\n";
|
ilog << "Writing Image!\n";
|
||||||
imageOutput.write(parser.getOptionValue("--output") + timeString.str(), parser.getOptionValue("--format"));
|
imageOutput.write(parser.getOptionValue("--output") + timeString.str(), parser.getOptionValue("--format"));
|
||||||
|
|
||||||
delete(RTSignal);
|
delete (RTSignal);
|
||||||
#ifdef COMPILE_GUI
|
#ifdef COMPILE_GUI
|
||||||
deleteQuad();
|
deleteQuad();
|
||||||
|
#endif
|
||||||
|
#ifdef USE_MPI
|
||||||
|
}
|
||||||
|
MPI_Finalize();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
//
|
||||||
|
// Created by brett on 22/11/22.
|
||||||
|
//
|
||||||
|
#include <engine/mpi.h>
|
||||||
|
#include <engine/util/std.h>
|
||||||
|
|
||||||
|
#ifdef USE_MPI
|
||||||
|
namespace Raytracing {
|
||||||
|
void MPI::init(){
|
||||||
|
MPI_Init(NULL, NULL);
|
||||||
|
MPI_Comm_size(MPI_COMM_WORLD, &numberOfProcesses);
|
||||||
|
MPI_Comm_rank(MPI_COMM_WORLD, ¤tProcessID);
|
||||||
|
char processorName[MPI_MAX_PROCESSOR_NAME];
|
||||||
|
int NAME_LEN_UNUSED;
|
||||||
|
MPI_Get_processor_name(processorName, &NAME_LEN_UNUSED);
|
||||||
|
tlog << "Starting processor " << processorName << " with an ID of " << currentProcessID << "\n";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
|
@ -102,6 +102,7 @@ namespace Raytracing {
|
||||||
if (!defaultValues.contains(opt.first))
|
if (!defaultValues.contains(opt.first))
|
||||||
ilog << "With: " << opt.first;
|
ilog << "With: " << opt.first;
|
||||||
}
|
}
|
||||||
|
std::cout << "\n";
|
||||||
}
|
}
|
||||||
|
|
||||||
void Parser::printDifferenceInInfo() {
|
void Parser::printDifferenceInInfo() {
|
||||||
|
|
|
@ -131,7 +131,7 @@ namespace Raytracing {
|
||||||
int version = gladLoadGL(glfwGetProcAddress);
|
int version = gladLoadGL(glfwGetProcAddress);
|
||||||
if(!version)
|
if(!version)
|
||||||
throw std::runtime_error("Unable to load Glad GL!\n");
|
throw std::runtime_error("Unable to load Glad GL!\n");
|
||||||
|
|
||||||
glfwShowWindow(window);
|
glfwShowWindow(window);
|
||||||
ilog << "Loaded GL" << GLAD_VERSION_MAJOR(version) << "." << GLAD_VERSION_MINOR(version) << "!\n";
|
ilog << "Loaded GL" << GLAD_VERSION_MAJOR(version) << "." << GLAD_VERSION_MINOR(version) << "!\n";
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,15 +4,24 @@
|
||||||
*/
|
*/
|
||||||
#include <opencl/cl.h>
|
#include <opencl/cl.h>
|
||||||
#include <engine/util/loaders.h>
|
#include <engine/util/loaders.h>
|
||||||
|
#include <config.h>
|
||||||
|
|
||||||
|
#ifdef COMPILE_GUI
|
||||||
|
#define GLFW_EXPOSE_NATIVE_X11
|
||||||
|
#define GLFW_EXPOSE_NATIVE_GLX
|
||||||
|
#include <GLFW/glfw3.h>
|
||||||
|
#include <GLFW/glfw3native.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <cstddef>
|
||||||
#include <utility>
|
#include <utility>
|
||||||
|
|
||||||
namespace Raytracing {
|
namespace Raytracing {
|
||||||
|
|
||||||
OpenCL openCl {0};
|
std::shared_ptr<OpenCL> openCl;
|
||||||
|
|
||||||
void OpenCL::init() {
|
void OpenCL::init() {
|
||||||
|
openCl = std::make_shared<OpenCL>(0, 0);
|
||||||
}
|
}
|
||||||
OpenCL::OpenCL(int platformID, int deviceID): m_activePlatform(platformID) {
|
OpenCL::OpenCL(int platformID, int deviceID): m_activePlatform(platformID) {
|
||||||
m_CL_ERR = CL_SUCCESS;
|
m_CL_ERR = CL_SUCCESS;
|
||||||
|
@ -30,7 +39,7 @@ namespace Raytracing {
|
||||||
m_CL_ERR = clGetDeviceIDs(m_platformIDs[platformID], CL_DEVICE_TYPE_GPU, 1, &m_deviceID, &m_numOfDevices);
|
m_CL_ERR = clGetDeviceIDs(m_platformIDs[platformID], CL_DEVICE_TYPE_GPU, 1, &m_deviceID, &m_numOfDevices);
|
||||||
|
|
||||||
printDeviceInfo(m_deviceID);
|
printDeviceInfo(m_deviceID);
|
||||||
|
|
||||||
m_context = clCreateContext(NULL, 1, &m_deviceID, NULL, NULL, &m_CL_ERR);
|
m_context = clCreateContext(NULL, 1, &m_deviceID, NULL, NULL, &m_CL_ERR);
|
||||||
|
|
||||||
if (m_CL_ERR != CL_SUCCESS)
|
if (m_CL_ERR != CL_SUCCESS)
|
||||||
|
@ -51,24 +60,43 @@ namespace Raytracing {
|
||||||
clGetDeviceInfo(device, CL_DEVICE_IMAGE_SUPPORT, sizeof(cl_bool), &textureSupport, NULL);
|
clGetDeviceInfo(device, CL_DEVICE_IMAGE_SUPPORT, sizeof(cl_bool), &textureSupport, NULL);
|
||||||
size_t maxWorkgroups;
|
size_t maxWorkgroups;
|
||||||
clGetDeviceInfo(device, CL_DEVICE_MAX_WORK_GROUP_SIZE, sizeof(size_t), &maxWorkgroups, NULL);
|
clGetDeviceInfo(device, CL_DEVICE_MAX_WORK_GROUP_SIZE, sizeof(size_t), &maxWorkgroups, NULL);
|
||||||
|
clGetDeviceInfo(device, CL_DEVICE_MAX_COMPUTE_UNITS, sizeof(cl_uint), &m_computeUnits, NULL);
|
||||||
|
clGetDeviceInfo(device, CL_DEVICE_MAX_CLOCK_FREQUENCY, sizeof(cl_uint), &m_deviceClockFreq, NULL);
|
||||||
|
struct {
|
||||||
|
cl_uchar opencl_space[7]; // "OpenCL_"
|
||||||
|
cl_uchar major;
|
||||||
|
cl_uchar dot;
|
||||||
|
cl_uchar minor;
|
||||||
|
cl_uchar space;
|
||||||
|
cl_uchar vendor[32];
|
||||||
|
} dv{};
|
||||||
|
clGetDeviceInfo(device, CL_DEVICE_VERSION, sizeof(dv), &dv, NULL);
|
||||||
|
|
||||||
dlog << "Opening OpenCL Device!\n";
|
dlog << "Opening OpenCL Device!\n";
|
||||||
|
dlog << "Device CL String " << dv.opencl_space << dv.major << dv.dot << dv.minor << dv.space << dv.vendor<< "\n";
|
||||||
dlog << "Device Address Bits: " << deviceAddressBits << "\n";
|
dlog << "Device Address Bits: " << deviceAddressBits << "\n";
|
||||||
dlog << "Device is currently " << (deviceAvailable ? "available" : "unavailable") << "\n";
|
dlog << "Device is currently " << (deviceAvailable ? "available" : "unavailable") << "\n";
|
||||||
dlog << "Device has " << cacheSize/1024 << "kb of cache with a cache line width of " << cacheLineSize << " bytes\n";
|
dlog << "Device has " << cacheSize/1024 << "kb of cache with a cache line width of " << cacheLineSize << " bytes\n";
|
||||||
dlog << "Device " << (textureSupport ? "has" : "doesn't have") << " texture support\n";
|
dlog << "Device " << (textureSupport ? "has" : "doesn't have") << " texture support\n";
|
||||||
dlog << "Device has " << maxWorkgroups << " max workgroups.\n";
|
dlog << "Device has " << maxWorkgroups << " max workgroup size.\n";
|
||||||
|
dlog << "Device has " << m_computeUnits << " compute units running at a max clock frequency " << m_deviceClockFreq << "\n";
|
||||||
if (!textureSupport)
|
if (!textureSupport)
|
||||||
elog << "Warning! The OpenCL device lacks texture support!\n";
|
elog << "Warning! The OpenCL device lacks texture support!\n";
|
||||||
}
|
}
|
||||||
void OpenCL::createCLProgram(CLProgram& program) {
|
void OpenCL::createCLProgram(CLProgram& program) {
|
||||||
program.loadCLShader(openCl.m_context, openCl.m_deviceID);
|
program.loadCLShader(openCl->m_context, openCl->m_deviceID);
|
||||||
}
|
}
|
||||||
OpenCL::~OpenCL() {
|
OpenCL::~OpenCL() {
|
||||||
delete[](m_platformIDs);
|
delete[](m_platformIDs);
|
||||||
clReleaseDevice(m_deviceID);
|
clReleaseDevice(m_deviceID);
|
||||||
clReleaseContext(m_context);
|
clReleaseContext(m_context);
|
||||||
}
|
}
|
||||||
|
cl_uint OpenCL::activeDeviceComputeUnits() {
|
||||||
|
return openCl->m_computeUnits;
|
||||||
|
}
|
||||||
|
cl_uint OpenCL::activeDeviceFrequency() {
|
||||||
|
return openCl->m_deviceClockFreq;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
CLProgram::CLProgram(const std::string& file) {
|
CLProgram::CLProgram(const std::string& file) {
|
||||||
|
@ -87,8 +115,18 @@ namespace Raytracing {
|
||||||
elog << "Unable to create CL program!\n";
|
elog << "Unable to create CL program!\n";
|
||||||
|
|
||||||
m_CL_ERR = clBuildProgram(m_program, 1, &deviceID, NULL, NULL, NULL);
|
m_CL_ERR = clBuildProgram(m_program, 1, &deviceID, NULL, NULL, NULL);
|
||||||
if (m_CL_ERR != CL_SUCCESS)
|
if (m_CL_ERR != CL_SUCCESS) {
|
||||||
elog << "Unable to build CL program!\n";
|
elog << "Unable to build CL program!\n";
|
||||||
|
size_t len;
|
||||||
|
|
||||||
|
clGetProgramBuildInfo(m_program, m_deviceID, CL_PROGRAM_BUILD_LOG, 0, NULL, &len);
|
||||||
|
char buffer[len];
|
||||||
|
|
||||||
|
clGetProgramBuildInfo(m_program, m_deviceID, CL_PROGRAM_BUILD_LOG, len, buffer, NULL);
|
||||||
|
|
||||||
|
elog << buffer << "\n";
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* Buffers are the quintessential datastructures in OpenCL. They are basically regions of memory allocated to a program.
|
* Buffers are the quintessential datastructures in OpenCL. They are basically regions of memory allocated to a program.
|
||||||
|
@ -115,6 +153,56 @@ namespace Raytracing {
|
||||||
// then store it in our buffer map for easy access.
|
// then store it in our buffer map for easy access.
|
||||||
buffers.insert({bufferName, buff});
|
buffers.insert({bufferName, buff});
|
||||||
}
|
}
|
||||||
|
void CLProgram::createImage(const std::string& imageName, int width, int height) {
|
||||||
|
// create the texture on the GPU
|
||||||
|
cl_image_format format {CL_RGBA, CL_UNORM_INT8};
|
||||||
|
cl_image_desc imageDesc;
|
||||||
|
imageDesc.image_type = CL_MEM_OBJECT_IMAGE2D;
|
||||||
|
imageDesc.image_width = width;
|
||||||
|
imageDesc.image_height = height;
|
||||||
|
imageDesc.image_row_pitch = 0;
|
||||||
|
imageDesc.image_slice_pitch = 0;
|
||||||
|
imageDesc.num_mip_levels = 0;
|
||||||
|
imageDesc.num_samples = 0;
|
||||||
|
imageDesc.buffer = NULL;
|
||||||
|
cl_mem tex = clCreateImage(m_context, CL_MEM_READ_WRITE, &format, &imageDesc, NULL, &m_CL_ERR);
|
||||||
|
if (m_CL_ERR != CL_SUCCESS){
|
||||||
|
elog << "Unable to create image texture!\n";
|
||||||
|
checkBasicErrors();
|
||||||
|
switch (m_CL_ERR){
|
||||||
|
case CL_INVALID_VALUE:
|
||||||
|
elog << "\tFlags are not valid!\n";
|
||||||
|
// this is straight from the docs
|
||||||
|
elog << "\tOR if a 1D image buffer is being created and the "
|
||||||
|
"buffer object was created with CL_MEM_WRITE_ONLY and flags specifies "
|
||||||
|
"CL_MEM_READ_WRITE or CL_MEM_READ_ONLY, or if the buffer object was created "
|
||||||
|
"with CL_MEM_READ_ONLY and flags specifies CL_MEM_READ_WRITE or CL_MEM_WRITE_ONLY, "
|
||||||
|
"or if flags specifies CL_MEM_USE_HOST_PTR or CL_MEM_ALLOC_HOST_PTR or CL_MEM_COPY_HOST_PTR. \n";
|
||||||
|
elog << "\tOR if a 1D image buffer is being created and the buffer object was created with CL_MEM_HOST_WRITE_ONLY "
|
||||||
|
"and flags specifies CL_MEM_HOST_READ_ONLY, or if the buffer object was created with CL_MEM_HOST_READ_ONLY "
|
||||||
|
"and flags specifies CL_MEM_HOST_WRITE_ONLY, or if the buffer object was created with CL_MEM_HOST_NO_ACCESS "
|
||||||
|
"and flags specifies CL_MEM_HOST_READ_ONLY or CL_MEM_HOST_WRITE_ONLY. \n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_IMAGE_FORMAT_DESCRIPTOR:
|
||||||
|
elog << "\tImage format isn't valid!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_IMAGE_DESCRIPTOR:
|
||||||
|
elog << "\tValues specified in image_desc are not valid or if image_desc is NULL!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_IMAGE_SIZE:
|
||||||
|
elog << "\tImage dimensions exceed the minimum maximum image dimensions\n";
|
||||||
|
break;
|
||||||
|
case CL_IMAGE_FORMAT_NOT_SUPPORTED:
|
||||||
|
elog << "\tImage format not supported!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_OPERATION:
|
||||||
|
elog << "\tImages are not supported on this device!\n";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// then store it in our buffer map for easy access.
|
||||||
|
buffers.insert({imageName, tex});
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* Kernels are the entry points in OpenCL. You can have multiple of them in a single program.
|
* Kernels are the entry points in OpenCL. You can have multiple of them in a single program.
|
||||||
* @param kernelName both the name of the kernel function in the source and the reference to the kernel object used in other functions in this class.
|
* @param kernelName both the name of the kernel function in the source and the reference to the kernel object used in other functions in this class.
|
||||||
|
@ -122,7 +210,7 @@ namespace Raytracing {
|
||||||
void CLProgram::createKernel(const std::string& kernelName) {
|
void CLProgram::createKernel(const std::string& kernelName) {
|
||||||
auto kernel = clCreateKernel(m_program, kernelName.c_str(), &m_CL_ERR);
|
auto kernel = clCreateKernel(m_program, kernelName.c_str(), &m_CL_ERR);
|
||||||
if (m_CL_ERR != CL_SUCCESS)
|
if (m_CL_ERR != CL_SUCCESS)
|
||||||
elog << "Unable to create CL kernel" << kernelName << "!\n";
|
elog << "Unable to create CL kernel " << kernelName << "!\n";
|
||||||
kernels.insert({kernelName, kernel});
|
kernels.insert({kernelName, kernel});
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
|
@ -177,6 +265,32 @@ namespace Raytracing {
|
||||||
clFinish(m_commandQueue);
|
clFinish(m_commandQueue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void CLProgram::runKernel(const std::string& kernel, size_t globalWorkSize, size_t localWorkSize, const size_t* globalWorkOffset) {
|
||||||
|
m_CL_ERR = clEnqueueNDRangeKernel(m_commandQueue, kernels[kernel], 1, globalWorkOffset, &globalWorkSize, &localWorkSize, 0, NULL, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CLProgram::runKernel(const std::string& kernel, size_t* globalWorkSize, size_t* localWorkSize, cl_uint workDim, const size_t* globalWorkOffset) {
|
||||||
|
m_CL_ERR = clEnqueueNDRangeKernel(m_commandQueue, kernels[kernel], workDim, globalWorkOffset, globalWorkSize, localWorkSize, 0, NULL, NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CLProgram::readImage(const std::string& imageName, size_t width, size_t height, void* ptr, cl_bool blocking, size_t x, size_t y) {
|
||||||
|
size_t origin[3] {x, y, 0};
|
||||||
|
size_t region[3] {width, height, 1};
|
||||||
|
m_CL_ERR = clEnqueueReadImage(m_commandQueue, buffers[imageName], blocking, origin, region, 0, 0, ptr, 0, NULL, NULL);
|
||||||
|
if (m_CL_ERR != CL_SUCCESS) {
|
||||||
|
elog << "Unable to enqueue read from " << imageName << " image:\n";
|
||||||
|
checkBasicErrors();
|
||||||
|
switch (m_CL_ERR) {
|
||||||
|
case CL_INVALID_MEM_OBJECT:
|
||||||
|
elog << "\tInvalid Memory Object. " << imageName << " isn't a valid memory object (" << buffers[imageName] << ")!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_VALUE:
|
||||||
|
elog << "\tOrigin / Region is out of bounds or your pointer is null!\n";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
CLProgram::~CLProgram() {
|
CLProgram::~CLProgram() {
|
||||||
finishCommands();
|
finishCommands();
|
||||||
for (const auto& kernel : kernels)
|
for (const auto& kernel : kernels)
|
||||||
|
@ -186,6 +300,30 @@ namespace Raytracing {
|
||||||
clReleaseMemObject(buffer.second);
|
clReleaseMemObject(buffer.second);
|
||||||
clReleaseCommandQueue(m_commandQueue);
|
clReleaseCommandQueue(m_commandQueue);
|
||||||
}
|
}
|
||||||
|
void CLProgram::checkBasicErrors() const {
|
||||||
|
switch (m_CL_ERR){
|
||||||
|
case CL_OUT_OF_HOST_MEMORY:
|
||||||
|
elog << "\tHost is out of memory!\n";
|
||||||
|
break;
|
||||||
|
case CL_OUT_OF_RESOURCES:
|
||||||
|
elog << "\tDevice is out of resources!\n";
|
||||||
|
break;
|
||||||
|
case CL_MEM_OBJECT_ALLOCATION_FAILURE:
|
||||||
|
elog << "\tUnable to allocate memory!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_EVENT_WAIT_LIST:
|
||||||
|
elog << "\tInvalid wait list. (Why?)\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_COMMAND_QUEUE:
|
||||||
|
elog << "\tInvalid Command Queue!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_CONTEXT:
|
||||||
|
elog << "\tInvalid Context!\n";
|
||||||
|
break;
|
||||||
|
case CL_INVALID_HOST_PTR:
|
||||||
|
elog << "\tHost pointer is null OR flags are incorrectly set and pointer is NULL!\n";
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
Loading…
Reference in New Issue