Git Product home page Git Product logo

repulsive-curves's Introduction

Repulsive Curves

Christopher Yu, Henrik Schumacher, Keenan Crane ACM Transactions on Graphics 2020 (accepted)

Quick setup instructions

First, clone the project and all its dependencies:

git clone --recursive https://github.com/icethrush/repulsive-curves.git

If the recursive flag was not used to clone, then one can also get the dependencies by running:

git submodule update --init --recursive

From there, the project can be built using CMake.

cd repulsive-curves
mkdir build
cd build
cmake ..
make -j4

We highly recommend using Clang to build the project. Building with GCC/G++ is possible, but will require a different set of warnings to be suppressed.

The code can then be run:

./bin/rcurves_app path/to/scene.txt

For best performance, you should make sure that OpenMP is supported on your system.

Note that the file scene.txt has a particular format that describes where to find the curve data, as well as what constraints will be used. See scenes/FORMATS.md for details.

Using the project

The important options for manipulating curves are all under the "Curve options" panel in the system. These options are:

  • Run TPE: While checked, the system will run the gradient flow of the tangent-point energy.
  • Output frames: If checked, screenshots of every frame of the gradient flow will be saved as PNG images in the ./frames directory; note that this is relative to the working directory from which the executable is run.
  • Normalize view: If checked, the objects will be visually rescaled to fit within the camera frame every timestep. This rescaling is purely visual and does not affect the flow.
  • Output OBJs: If checked, OBJs of the curve on every frame will be output to the ./objs directory.
  • Use Sobolev: If checked, our fractional Sobolev preconditioner will be used. If unchecked, the L2 flow is used instead.
  • Use backprojection: If checked, the system will perform a projection step to enforce hard constraints, correctin for drift. If unchecked, no such step is performed.
  • Use Barnes-Hut: If checked, hierarchical Barnes-Hut approximation is used for energy and gradient evaluations. If unchecked, the energy and gradient are evaluated exactly (and slowly).
  • Use multigrid: If checked, multigrid is used to perform linear solves. If unchecked, dense linear solves are performed.

repulsive-curves's People

Contributors

chrisyu-cs avatar geometrycollective avatar nmwsharp avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

repulsive-curves's Issues

Compiling on an M1 Mac

In case others want to build on where I got to:

  • brew install llvm (because Apple clang does not support -fopenmp)
  • cmake -DCMAKE_C_COMPILER=/opt/homebrew/opt/llvm/bin/clang ..
  • recursively replace all -march=native with -mcpu=apple-m1 (apparently clang 15.0 will support -march=native for M1, so if that has been released this step may be redundant)

Where I'm currently stuck is here:

[  2%] Built target stb
[ 15%] Built target glfw
[ 21%] Built target imgui
Consolidate compiler generated dependencies of target polyscope
[ 22%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/gl_utils.cpp.o
/Users/beau/p/repulsive-curves/deps/polyscope/src/gl/gl_utils.cpp:1357:12: error: variable 'targetType' set but not used [-Werror,-Wunused-but-set-variable]
    GLenum targetType;
           ^
/Users/beau/p/repulsive-curves/deps/polyscope/src/gl/gl_utils.cpp:1467:24: error: parameter 'fatal' set but not used [-Werror,-Wunused-but-set-parameter]
void checkGLError(bool fatal) {
                       ^
2 errors generated.
make[2]: *** [deps/polyscope/src/CMakeFiles/polyscope.dir/gl/gl_utils.cpp.o] Error 1
make[1]: *** [deps/polyscope/src/CMakeFiles/polyscope.dir/all] Error 2
make: *** [all] Error 2

I removed -Wunused-but-set-parameter from all of the places it appeared in all files in the tree but I still get that error.

Replace vector D with scalar D

Currently we express the derivative operator D as

Du := du ° dγ†,

which when discretized (using the edge formulation) gets represented on each edge (i,j) as a 3x2 matrix

(ui - uj)T_ij^T/Lij.

For the systems we need to solve in the curve case, we could instead just let the smooth operator D be defined as just

Du := du,

i.e., the differential of the function u. The corresponding discrete operator would then be a trivial scalar operator

uj - ui

which both yields a matrix of smaller dimensions, and also does not involve the edge lengths (hence never has to be re-built).

cmake error on WSL

Hello,
I have an error trying to cmake the package on WSL, that I believe is different than the other one already posted. Pardon my ignorance in advance, as you can tell by the fact I'm using WSL I'm not very knowledgeable about this stuff.

The red text says: Cmake Error at deps/polyscope/deps/glfw/CMakelists.txt:220
The Xinerama headers were not found.

The cmake error log is below:

Determining if the function sgemm_ exists failed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f4c41/fast && /usr/bin/gmake -f CMakeFiles/cmTC_f4c41.dir/build.make CMakeFiles/cmTC_f4c41.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_f4c41.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ -o CMakeFiles/cmTC_f4c41.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_f4c41
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f4c41.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ CMakeFiles/cmTC_f4c41.dir/CheckFunctionExists.c.o -o cmTC_f4c41
/usr/bin/ld: CMakeFiles/cmTC_f4c41.dir/CheckFunctionExists.c.o: in function main': CheckFunctionExists.c:(.text+0x14): undefined reference to sgemm_'
collect2: error: ld returned 1 exit status
gmake[1]: *** [CMakeFiles/cmTC_f4c41.dir/build.make:99: cmTC_f4c41] Error 1
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_f4c41/fast] Error 2

Determining if the function cheev_ exists failed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_36bd3/fast && /usr/bin/gmake -f CMakeFiles/cmTC_36bd3.dir/build.make CMakeFiles/cmTC_36bd3.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_36bd3.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ -o CMakeFiles/cmTC_36bd3.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_36bd3
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_36bd3.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ CMakeFiles/cmTC_36bd3.dir/CheckFunctionExists.c.o -o cmTC_36bd3 /usr/lib/x86_64-linux-gnu/libblas.so -lm -ldl
/usr/bin/ld: CMakeFiles/cmTC_36bd3.dir/CheckFunctionExists.c.o: in function main': CheckFunctionExists.c:(.text+0x14): undefined reference to cheev_'
collect2: error: ld returned 1 exit status
gmake[1]: *** [CMakeFiles/cmTC_36bd3.dir/build.make:100: cmTC_36bd3] Error 1
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_36bd3/fast] Error 2

Determining if the function cheev_ exists failed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_2d9ba/fast && /usr/bin/gmake -f CMakeFiles/cmTC_2d9ba.dir/build.make CMakeFiles/cmTC_2d9ba.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_2d9ba.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ -o CMakeFiles/cmTC_2d9ba.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_2d9ba
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_2d9ba.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ CMakeFiles/cmTC_2d9ba.dir/CheckFunctionExists.c.o -o cmTC_2d9ba /usr/lib/x86_64-linux-gnu/liblapack.so /usr/lib/x86_64-linux-gnu/libblas.so -fortranlibs
cc: error: unrecognized command-line option ‘-fortranlibs’
gmake[1]: *** [CMakeFiles/cmTC_2d9ba.dir/build.make:101: cmTC_2d9ba] Error 1
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
gmake: *** [Makefile:127: cmTC_2d9ba/fast] Error 2

And the full cmake log:

The system is: Linux - 5.15.90.1-microsoft-standard-WSL2 - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/cc
Build flags:
Id flags:

The output was:
0

Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"

The C compiler identification is GNU, found in "/home/ak/repulsive-curves/build/CMakeFiles/3.22.1/CompilerIdC/a.out"

Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /usr/bin/c++
Build flags:
Id flags:

The output was:
0

Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"

The CXX compiler identification is GNU, found in "/home/ak/repulsive-curves/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out"

Detecting C compiler ABI info compiled with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f8cfc/fast && /usr/bin/gmake -f CMakeFiles/cmTC_f8cfc.dir/build.make CMakeFiles/cmTC_f8cfc.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o
/usr/bin/cc -v -o CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/'
/usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_f8cfc.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc2p58yf.s
GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/11/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
GNU C17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 3f6cb05d963ad324b8f9442822c95179
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/'
as -v --64 -o CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o /tmp/cc2p58yf.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.'
Linking C executable cmTC_f8cfc
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f8cfc.dir/link.txt --verbose=1
/usr/bin/cc -v CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o -o cmTC_f8cfc
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04)
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_f8cfc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_f8cfc.'
/usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccbOC8P7.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 -z now -z relro -o cmTC_f8cfc /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../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/11/../../.. CMakeFiles/cmTC_f8cfc.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/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_f8cfc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_f8cfc.'
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Parsed C implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
add: [/usr/local/include]
add: [/usr/include/x86_64-linux-gnu]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]

Parsed C implicit link information from above output:
link line regex: [^( |.[/])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_f8cfc/fast && /usr/bin/gmake -f CMakeFiles/cmTC_f8cfc.dir/build.make CMakeFiles/cmTC_f8cfc.dir/build]
ignore line: [gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp']
ignore line: [Building C object CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o]
ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/']
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1 -quiet -v -imultiarch x86_64-linux-gnu /usr/share/cmake-3.22/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_f8cfc.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc2p58yf.s]
ignore line: [GNU C17 (Ubuntu 11.3.0-1ubuntu122.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/include/x86_64-linux-gnu]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C17 (Ubuntu 11.3.0-1ubuntu1
22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 3f6cb05d963ad324b8f9442822c95179]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o /tmp/cc2p58yf.s]
ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.']
ignore line: [Linking C executable cmTC_f8cfc]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_f8cfc.dir/link.txt --verbose=1]
ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o -o cmTC_f8cfc ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_f8cfc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_f8cfc.']
link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccbOC8P7.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 -z now -z relro -o cmTC_f8cfc /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../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/11/../../.. CMakeFiles/cmTC_f8cfc.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/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccbOC8P7.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [--as-needed] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-znow] ==> ignore
arg [-zrelro] ==> ignore
arg [-o] ==> ignore
arg [cmTC_f8cfc] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
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/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
arg [CMakeFiles/cmTC_f8cfc.dir/CMakeCCompilerABI.c.o] ==> ignore
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [-lc] ==> lib [c]
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
implicit fwks: []

Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_dccb6/fast && /usr/bin/gmake -f CMakeFiles/cmTC_dccb6.dir/build.make CMakeFiles/cmTC_dccb6.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o
/usr/bin/c++ -v -o CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/'
/usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_dccb6.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc2AIEUS.s
GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"
ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/11
/usr/include/x86_64-linux-gnu/c++/11
/usr/include/c++/11/backward
/usr/lib/gcc/x86_64-linux-gnu/11/include
/usr/local/include
/usr/include/x86_64-linux-gnu
/usr/include
End of search list.
GNU C++17 (Ubuntu 11.3.0-1ubuntu1~22.04) version 11.3.0 (x86_64-linux-gnu)
compiled by GNU C version 11.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 449548cbb29044828dc7ea158b577b98
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/'
as -v --64 -o CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc2AIEUS.s
GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.'
Linking CXX executable cmTC_dccb6
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_dccb6.dir/link.txt --verbose=1
/usr/bin/c++ -v CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_dccb6
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c,ada,c++,go,brig,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04)
COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_dccb6' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_dccb6.'
/usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccBEjkB9.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 -z now -z relro -o cmTC_dccb6 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../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/11/../../.. CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_dccb6' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_dccb6.'
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Parsed CXX implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/include/c++/11]
add: [/usr/include/x86_64-linux-gnu/c++/11]
add: [/usr/include/c++/11/backward]
add: [/usr/lib/gcc/x86_64-linux-gnu/11/include]
add: [/usr/local/include]
add: [/usr/include/x86_64-linux-gnu]
add: [/usr/include]
end of search list found
collapse include dir [/usr/include/c++/11] ==> [/usr/include/c++/11]
collapse include dir [/usr/include/x86_64-linux-gnu/c++/11] ==> [/usr/include/x86_64-linux-gnu/c++/11]
collapse include dir [/usr/include/c++/11/backward] ==> [/usr/include/c++/11/backward]
collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/11/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/11/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/include/c++/11;/usr/include/x86_64-linux-gnu/c++/11;/usr/include/c++/11/backward;/usr/lib/gcc/x86_64-linux-gnu/11/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include]

Parsed CXX implicit link information from above output:
link line regex: [^( |.[/])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_dccb6/fast && /usr/bin/gmake -f CMakeFiles/cmTC_dccb6.dir/build.make CMakeFiles/cmTC_dccb6.dir/build]
ignore line: [gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp']
ignore line: [Building CXX object CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/']
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_dccb6.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cc2AIEUS.s]
ignore line: [GNU C++17 (Ubuntu 11.3.0-1ubuntu122.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/11"]
ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/include-fixed"]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/11/../../../../x86_64-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/include/c++/11]
ignore line: [ /usr/include/x86_64-linux-gnu/c++/11]
ignore line: [ /usr/include/c++/11/backward]
ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/11/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/include/x86_64-linux-gnu]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C++17 (Ubuntu 11.3.0-1ubuntu1
22.04) version 11.3.0 (x86_64-linux-gnu)]
ignore line: [ compiled by GNU C version 11.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 449548cbb29044828dc7ea158b577b98]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o /tmp/cc2AIEUS.s]
ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.']
ignore line: [Linking CXX executable cmTC_dccb6]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_dccb6.dir/link.txt --verbose=1]
ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_dccb6 ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper]
ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa]
ignore line: [OFFLOAD_TARGET_DEFAULT=1]
ignore line: [Target: x86_64-linux-gnu]
ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 11.3.0-1ubuntu122.04' --with-bugurl=file:///usr/share/doc/gcc-11/README.Bugs --enable-languages=c ada c++ go brig d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-11 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-11-xKiWfi/gcc-11-11.3.0/debian/tmp-gcn/usr --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu --with-build-config=bootstrap-lto-lean --enable-link-serialization=2]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.3.0 (Ubuntu 11.3.0-1ubuntu1
22.04) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/11/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/11/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_dccb6' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_dccb6.']
link line: [ /usr/lib/gcc/x86_64-linux-gnu/11/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper -plugin-opt=-fresolution=/tmp/ccBEjkB9.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 -z now -z relro -o cmTC_dccb6 /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/11 -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../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/11/../../.. CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/11/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccBEjkB9.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [--as-needed] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-znow] ==> ignore
arg [-zrelro] ==> ignore
arg [-o] ==> ignore
arg [cmTC_dccb6] ==> ignore
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu]
arg [-L/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib]
arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
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/gcc/x86_64-linux-gnu/11/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..]
arg [CMakeFiles/cmTC_dccb6.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
arg [-lstdc++] ==> lib [stdc++]
arg [-lm] ==> lib [m]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [-lc] ==> lib [c]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o]
arg [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o]
collapse obj [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11] ==> [/usr/lib/gcc/x86_64-linux-gnu/11]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/11/../../..] ==> [/usr/lib]
implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/11/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/11;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib]
implicit fwks: []

Determining if the include file pthread.h exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_e5360/fast && /usr/bin/gmake -f CMakeFiles/cmTC_e5360.dir/build.make CMakeFiles/cmTC_e5360.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_e5360.dir/CheckIncludeFile.c.o
/usr/bin/cc -o CMakeFiles/cmTC_e5360.dir/CheckIncludeFile.c.o -c /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp/CheckIncludeFile.c
Linking C executable cmTC_e5360
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_e5360.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_e5360.dir/CheckIncludeFile.c.o -o cmTC_e5360
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Performing C SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_cfa6b/fast && /usr/bin/gmake -f CMakeFiles/cmTC_cfa6b.dir/build.make CMakeFiles/cmTC_cfa6b.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_cfa6b.dir/src.c.o
/usr/bin/cc -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_cfa6b.dir/src.c.o -c /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp/src.c
Linking C executable cmTC_cfa6b
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_cfa6b.dir/link.txt --verbose=1
/usr/bin/cc CMakeFiles/cmTC_cfa6b.dir/src.c.o -o cmTC_cfa6b
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Source file was:
#include <pthread.h>

static void* test_func(void* data)
{
return data;
}

int main(void)
{
pthread_t thread;
pthread_create(&thread, NULL, test_func, NULL);
pthread_detach(thread);
pthread_cancel(thread);
pthread_join(thread, NULL);
pthread_atfork(NULL, NULL, NULL);
pthread_exit(NULL);

return 0;
}

Determining if the function sgemm_ exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_61c64/fast && /usr/bin/gmake -f CMakeFiles/cmTC_61c64.dir/build.make CMakeFiles/cmTC_61c64.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_61c64.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ -o CMakeFiles/cmTC_61c64.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_61c64
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_61c64.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=sgemm_ CMakeFiles/cmTC_61c64.dir/CheckFunctionExists.c.o -o cmTC_61c64 /usr/lib/x86_64-linux-gnu/libblas.so
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function cheev_ exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_ad8c1/fast && /usr/bin/gmake -f CMakeFiles/cmTC_ad8c1.dir/build.make CMakeFiles/cmTC_ad8c1.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_ad8c1.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ -o CMakeFiles/cmTC_ad8c1.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_ad8c1
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ad8c1.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=cheev_ CMakeFiles/cmTC_ad8c1.dir/CheckFunctionExists.c.o -o cmTC_ad8c1 /usr/lib/x86_64-linux-gnu/liblapack.so /usr/lib/x86_64-linux-gnu/libblas.so
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function XOpenDisplay exists in the /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_0bc6f/fast && /usr/bin/gmake -f CMakeFiles/cmTC_0bc6f.dir/build.make CMakeFiles/cmTC_0bc6f.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_0bc6f.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=XOpenDisplay -o CMakeFiles/cmTC_0bc6f.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_0bc6f
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_0bc6f.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=XOpenDisplay CMakeFiles/cmTC_0bc6f.dir/CheckFunctionExists.c.o -o cmTC_0bc6f /usr/lib/x86_64-linux-gnu/libX11.so /usr/lib/x86_64-linux-gnu/libXext.so
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function gethostbyname exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a249d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_a249d.dir/build.make CMakeFiles/cmTC_a249d.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a249d.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=gethostbyname -o CMakeFiles/cmTC_a249d.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_a249d
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a249d.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=gethostbyname CMakeFiles/cmTC_a249d.dir/CheckFunctionExists.c.o -o cmTC_a249d
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function connect exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_8001d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_8001d.dir/build.make CMakeFiles/cmTC_8001d.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_8001d.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=connect -o CMakeFiles/cmTC_8001d.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_8001d
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_8001d.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=connect CMakeFiles/cmTC_8001d.dir/CheckFunctionExists.c.o -o cmTC_8001d
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function remove exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_791c2/fast && /usr/bin/gmake -f CMakeFiles/cmTC_791c2.dir/build.make CMakeFiles/cmTC_791c2.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_791c2.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=remove -o CMakeFiles/cmTC_791c2.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_791c2
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_791c2.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=remove CMakeFiles/cmTC_791c2.dir/CheckFunctionExists.c.o -o cmTC_791c2
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Determining if the function shmat exists passed with the following output:
Change Dir: /home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp

Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_a9e4d/fast && /usr/bin/gmake -f CMakeFiles/cmTC_a9e4d.dir/build.make CMakeFiles/cmTC_a9e4d.dir/build
gmake[1]: Entering directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_a9e4d.dir/CheckFunctionExists.c.o
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=shmat -o CMakeFiles/cmTC_a9e4d.dir/CheckFunctionExists.c.o -c /usr/share/cmake-3.22/Modules/CheckFunctionExists.c
Linking C executable cmTC_a9e4d
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_a9e4d.dir/link.txt --verbose=1
/usr/bin/cc -DCHECK_FUNCTION_EXISTS=shmat CMakeFiles/cmTC_a9e4d.dir/CheckFunctionExists.c.o -o cmTC_a9e4d
gmake[1]: Leaving directory '/home/ak/repulsive-curves/build/CMakeFiles/CMakeTmp'

Switch to edge-based formulation

Currently we implement everything in a vertex-centric way; to make some of the other enhancements listed here work as described it may be worthwhile to implement everything in an edge-centric way (as described in the paper). This formulation may also have a smaller stencil for certain operations (e.g., computing tangents or taking derivatives).

Compilation Error on WSL

I'm excited to be able to try and use this software - but I am having trouble with the compilation step. Trying to compile on WSL on (Version 4.4.0-18362-Microsoft) and Ubuntu:

NAME="Ubuntu"
VERSION="20.04.1 LTS (Focal Fossa)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 20.04.1 LTS"
VERSION_ID="20.04"

After tinkering around for a long time making sure I have sufficient packages install and ready to go, it was making good progress but now gets the series of errors below, which seem to be actual code related? Any help would be appreciated!

Using clang 10.0.0 :

cmake run:

$ cmake -DCMAKE_C_COMPILER=clang ..
-- The C compiler identification is Clang 10.0.0
-- The CXX compiler identification is GNU 9.3.0
-- Check for working C compiler: /usr/bin/clang
-- Check for working C compiler: /usr/bin/clang -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- cmake build type: Release
Using clang/gcc compiler flags
Setting gcc-specific options
-- Building STATIC libraries
-- Looking for pthread.h
-- Looking for pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Failed
-- Looking for pthread_create in pthreads
-- Looking for pthread_create in pthreads - not found
-- Looking for pthread_create in pthread
-- Looking for pthread_create in pthread - found
-- Found Threads: TRUE
-- Found BLAS: /usr/lib/x86_64-linux-gnu/libblas.so
-- Found AMD library: /usr/lib/x86_64-linux-gnu/libamd.so
-- Found AMD header in: /usr/include/suitesparse
-- Found CAMD library: /usr/lib/x86_64-linux-gnu/libcamd.so
-- Found CAMD header in: /usr/include/suitesparse
-- Found COLAMD library: /usr/lib/x86_64-linux-gnu/libcolamd.so
-- Found COLAMD header in: /usr/include/suitesparse
-- Found CCOLAMD library: /usr/lib/x86_64-linux-gnu/libccolamd.so
-- Found CCOLAMD header in: /usr/include/suitesparse
-- Found CHOLMOD library: /usr/lib/x86_64-linux-gnu/libcholmod.so
-- Found CHOLMOD header in: /usr/include/suitesparse
-- Found SuiteSparseQR library: /usr/lib/x86_64-linux-gnu/libspqr.so
-- Found SuiteSparseQR header in: /usr/include/suitesparse
-- Did not find Intel TBB library, assuming SuiteSparseQR was not compiled with TBB.
-- Found SuiteSparse_config library: /usr/lib/x86_64-linux-gnu/libsuitesparseconfig.so
-- Found SuiteSparse_config header in: /usr/include/suitesparse
-- Adding librt: /usr/lib/x86_64-linux-gnu/librt.so to SuiteSparse_config libraries (required on Linux & Unix [not OSX] if SuiteSparse is compiled with timing).
-- Did not find METIS library (optional SuiteSparse dependency)
-- Found SuiteSparse: TRUE (found version "5.7.1")
-- Found SuiteSparse 5.7.1, building with SuiteSparse.
-- Guesstimated umfpack location as: /usr/lib/x86_64-linux-gnu/libumfpack.so
-- Using X11 for window creation
-- Found X11: /usr/include
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so
-- Looking for XOpenDisplay in /usr/lib/x86_64-linux-gnu/libX11.so;/usr/lib/x86_64-linux-gnu/libXext.so - found
-- Looking for gethostbyname
-- Looking for gethostbyname - found
-- Looking for connect
-- Looking for connect - found
-- Looking for remove
-- Looking for remove - found
-- Looking for shmat
-- Looking for shmat - found
-- Looking for IceConnectionNumber in ICE
-- Looking for IceConnectionNumber in ICE - found
-- Configuring done
-- Generating done
-- Build files have been written to: /home/bjohnston/git/repulsive-curves/build

Errors

$ make
Scanning dependencies of target stb
[  1%] Building CXX object deps/polyscope/deps/stb/CMakeFiles/stb.dir/stb_impl.cpp.o
[  2%] Linking CXX static library ../../../../lib/libstb.a
[  2%] Built target stb
Scanning dependencies of target glad
[  3%] Building C object deps/polyscope/deps/glad/src/CMakeFiles/glad.dir/glad.c.o
[  4%] Linking C static library ../../../../../lib/libglad.a
[  4%] Built target glad
Scanning dependencies of target glfw
[  5%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/context.c.o
[  6%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/init.c.o
[  6%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/input.c.o
[  7%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/monitor.c.o
[  8%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/vulkan.c.o
[  9%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/window.c.o
[ 10%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/x11_init.c.o
[ 11%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/x11_monitor.c.o
[ 11%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/x11_window.c.o
[ 12%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/xkb_unicode.c.o
[ 13%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/posix_time.c.o
[ 14%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/posix_thread.c.o
[ 15%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/glx_context.c.o
[ 15%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/egl_context.c.o
[ 16%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/osmesa_context.c.o
[ 17%] Building C object deps/polyscope/deps/glfw/src/CMakeFiles/glfw.dir/linux_joystick.c.o
[ 18%] Linking C static library ../../../../../lib/libglfw3.a
[ 18%] Built target glfw
Scanning dependencies of target imgui
[ 19%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/imgui.cpp.o
[ 20%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/imgui_draw.cpp.o
[ 20%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/imgui_widgets.cpp.o
[ 21%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/imgui_demo.cpp.o
[ 22%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/examples/imgui_impl_glfw.cpp.o
[ 23%] Building CXX object deps/polyscope/deps/imgui/CMakeFiles/imgui.dir/imgui/examples/imgui_impl_opengl3.cpp.o
[ 24%] Linking CXX static library ../../../../lib/libimgui.a
[ 24%] Built target imgui
Scanning dependencies of target polyscope
[ 24%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/polyscope.cpp.o
[ 25%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/screenshot.cpp.o
[ 26%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/structure.cpp.o
[ 27%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/utilities.cpp.o
[ 28%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/view.cpp.o
[ 29%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/messages.cpp.o
[ 29%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/pick.cpp.o
[ 30%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/disjoint_sets.cpp.o
[ 31%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/file_helpers.cpp.o
[ 32%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/camera_parameters.cpp.o
[ 33%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/histogram.cpp.o
[ 34%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/gl_utils.cpp.o
[ 34%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/ground_plane.cpp.o
[ 35%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/color_maps.cpp.o
[ 36%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/color_management.cpp.o
[ 37%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/materials/bindata_concrete_seamless.cpp.o
[ 38%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/materials/bindata_mat_wax.cpp.o
[ 38%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/gl/materials/materials.cpp.o
[ 39%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/binary_font_cousine_regular.cpp.o
[ 40%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/trace_vector_field.cpp.o
[ 41%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/ribbon_artist.cpp.o
[ 42%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/point_cloud.cpp.o
[ 43%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/point_cloud_color_quantity.cpp.o
[ 43%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/point_cloud_scalar_quantity.cpp.o
[ 44%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/point_cloud_vector_quantity.cpp.o
[ 45%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_mesh.cpp.o
[ 46%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_mesh_io.cpp.o
[ 47%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_scalar_quantity.cpp.o
[ 47%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_color_quantity.cpp.o
[ 48%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_distance_quantity.cpp.o
[ 49%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_vector_quantity.cpp.o
[ 50%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_count_quantity.cpp.o
[ 51%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_graph_quantity.cpp.o
[ 52%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/surface_parameterization_quantity.cpp.o
[ 52%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/curve_network.cpp.o
[ 53%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/curve_network_scalar_quantity.cpp.o
[ 54%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/curve_network_color_quantity.cpp.o
[ 55%] Building CXX object deps/polyscope/src/CMakeFiles/polyscope.dir/curve_network_vector_quantity.cpp.o
[ 56%] Linking CXX static library ../../../lib/libpolyscope.a
[ 56%] Built target polyscope
Scanning dependencies of target geometry-central
[ 56%] Building CXX object deps/geometry-central/src/CMakeFiles/geometry-central.dir/surface/halfedge_mesh.cpp.o
[ 57%] Building CXX object deps/geometry-central/src/CMakeFiles/geometry-central.dir/surface/halfedge_factories.cpp.o
[ 58%] Building CXX object deps/geometry-central/src/CMakeFiles/geometry-central.dir/surface/meshio.cpp.o
In file included from /home/bjohnston/git/repulsive-curves/deps/geometry-central/src/surface/meshio.cpp:8:
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h: In instantiation ofstd::vector<std::vector<_RealType> > happly::PLYData::getFaceIndices() [with T = long unsigned int]’:
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/surface/meshio.cpp:83:73:   required from here
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h:1226:11: error: catching polymorphic typeclass std::runtime_errorby value [-Werror=catch-value=]
 1226 |         } catch (std::runtime_error e) {
      |           ^~~~~
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h: In instantiation ofstd::vector<std::vector<_RealType> > happly::Element::getListPropertyAnySign(const string&) [with T = long unsigned int; std::string = std::__cxx11::basic_string<char>]’:
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h:1225:59:   required fromstd::vector<std::vector<_RealType> > happly::PLYData::getFaceIndices() [with T = long unsigned int]’
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/surface/meshio.cpp:83:73:   required from here
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h:795:7: error: catching polymorphic typeclass std::runtime_erroby value [-Werror=catch-value=]
  795 |     } catch (std::runtime_error orig_e) {
      |       ^~~~~
/home/bjohnston/git/repulsive-curves/deps/geometry-central/src/../deps/happly/happly.h:818:9: error: catching polymorphic typeclass std::runtime_erroby value [-Werror=catch-value=]
  818 |       } catch (std::runtime_error new_e) {
      |         ^~~~~
cc1plus: error: unrecognized command line option-Wno-unused-private-field’ [-Werror]
cc1plus: error: unrecognized command line option-Wno-return-std-move’ [-Werror]
cc1plus: all warnings being treated as errors
make[2]: *** [deps/geometry-central/src/CMakeFiles/geometry-central.dir/build.make:89: deps/geometry-central/src/CMakeFiles/geometry-central.dir/surface/meshio.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:414: deps/geometry-central/src/CMakeFiles/geometry-central.dir/all] Error 2
make: *** [Makefile:84: all] Error 2

Add BVH-refitting

Rather than re-build a BVH every time the geometry changes, we could "re-fit" BVH nodes to account for the new vertex positions. The algorithm is to basically start at the leaves and update the bounding boxes, then percolate these changes up through the parents. Not a bottleneck in the curve case, but could save meaningful time in the surface case.

Use BVH involving positions only

Need to fill in some details here, but basically it seems we should be able to express the differential of the energy in such a way that our Barnes-Hut evaluation no longer requires tangents. This would allow us to use a BVH involving only positions, rather than tangents. Though going from 6D -> 3D is not a big "win" in terms of the Barnes-Hut itself, the thinking is that by having a more efficient BVH we can get a BCT with fewer nodes, and in turn, accelerate the hierarchical matrix-vector product. This then seems like a pretty good candidate for optimization, since the multigrid solves are the biggest bottleneck.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.