FFTW / fftw3

DO NOT CHECK OUT THESE FILES FROM GITHUB UNLESS YOU KNOW WHAT YOU ARE DOING. (See below.)
GNU General Public License v2.0
2.74k stars 666 forks source link

undefined reference to fftw_solvtab_* #138

Closed FFY00 closed 6 years ago

FFY00 commented 6 years ago

Running arch linux.

Error

/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2cf'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2cb'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_dft_standard'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2r'
collect2: error: ld returned 1 exit status

Logs

$ cmake ..
-- The C compiler identification is GNU 7.3.1
-- The CXX compiler identification is GNU 7.3.1
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- 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
-- Looking for alloca.h
-- Looking for alloca.h - found
-- Looking for altivec.h
-- Looking for altivec.h - not found
-- Looking for c_asm.h
-- Looking for c_asm.h - not found
-- Looking for dlfcn.h
-- Looking for dlfcn.h - found
-- Looking for intrinsics.h
-- Looking for intrinsics.h - not found
-- Looking for inttypes.h
-- Looking for inttypes.h - found
-- Looking for libintl.h
-- Looking for libintl.h - found
-- Looking for limits.h
-- Looking for limits.h - found
-- Looking for mach/mach_time.h
-- Looking for mach/mach_time.h - not found
-- Looking for malloc.h
-- Looking for malloc.h - found
-- Looking for memory.h
-- Looking for memory.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stdlib.h
-- Looking for stdlib.h - found
-- Looking for string.h
-- Looking for string.h - found
-- Looking for strings.h
-- Looking for strings.h - found
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for sys/time.h
-- Looking for sys/time.h - found
-- Looking for sys/stat.h
-- Looking for sys/stat.h - found
-- Looking for sys/sysctl.h
-- Looking for sys/sysctl.h - found
-- Looking for time.h
-- Looking for time.h - found
-- Looking for uintptr.h
-- Looking for uintptr.h - not found
-- Looking for unistd.h
-- Looking for unistd.h - found
-- Checking prototype drand48 for HAVE_DECL_DRAND48 - True
-- Checking prototype srand48 for HAVE_DECL_SRAND48 - True
-- Checking prototype cosl for HAVE_DECL_COSL - True
-- Checking prototype sinl for HAVE_DECL_SINL - True
-- Checking prototype memalign for HAVE_DECL_MEMALIGN - True
-- Checking prototype posix_memalign for HAVE_DECL_POSIX_MEMALIGN - True
-- Looking for clock_gettime
-- Looking for clock_gettime - found
-- Looking for gettimeofday
-- Looking for gettimeofday - found
-- Looking for getpagesize
-- Looking for getpagesize - found
-- Looking for drand48
-- Looking for drand48 - found
-- Looking for srand48
-- Looking for srand48 - found
-- Looking for memalign
-- Looking for memalign - found
-- Looking for posix_memalign
-- Looking for posix_memalign - found
-- Looking for mach_absolute_time
-- Looking for mach_absolute_time - not found
-- Looking for alloca
-- Looking for alloca - found
-- Looking for isnan
-- Looking for isnan - found
-- Looking for snprintf
-- Looking for snprintf - found
-- Looking for strchr
-- Looking for strchr - found
-- Looking for sysctl
-- Looking for sysctl - not found
-- Looking for cosl
-- Looking for cosl - found
-- Looking for sinl
-- Looking for sinl - found
-- Check size of float
-- Check size of float - done
-- Check size of double
-- Check size of double - done
-- Check size of int
-- Check size of int - done
-- Check size of long
-- Check size of long - done
-- Check size of long long
-- Check size of long long - done
-- Check size of unsigned int
-- Check size of unsigned int - done
-- Check size of unsigned long
-- Check size of unsigned long - done
-- Check size of unsigned long long
-- Check size of unsigned long long - done
-- Check size of size_t
-- Check size of size_t - done
-- Check size of ptrdiff_t
-- Check size of ptrdiff_t - done
-- Configuring done
-- Generating done
-- Build files have been written to: /home/anubis/git/fftw3/build
$ make -j9
Scanning dependencies of target fftw3
[  1%] Building C object CMakeFiles/fftw3.dir/api/execute-dft.c.o
[  2%] Building C object CMakeFiles/fftw3.dir/api/execute-dft-r2c.c.o
[  2%] Building C object CMakeFiles/fftw3.dir/api/execute-r2r.c.o
[  2%] Building C object CMakeFiles/fftw3.dir/api/execute-split-dft-c2r.c.o
[  1%] Building C object CMakeFiles/fftw3.dir/api/execute-dft-c2r.c.o
[  2%] Building C object CMakeFiles/fftw3.dir/api/execute-split-dft-r2c.c.o
[  2%] Building C object CMakeFiles/fftw3.dir/api/configure.c.o
[  4%] Building C object CMakeFiles/fftw3.dir/api/apiplan.c.o
[  4%] Building C object CMakeFiles/fftw3.dir/api/execute-split-dft.c.o
[  4%] Building C object CMakeFiles/fftw3.dir/api/execute.c.o
[  5%] Building C object CMakeFiles/fftw3.dir/api/export-wisdom-to-file.c.o
[  5%] Building C object CMakeFiles/fftw3.dir/api/export-wisdom-to-string.c.o
[  5%] Building C object CMakeFiles/fftw3.dir/api/f77api.c.o
[  6%] Building C object CMakeFiles/fftw3.dir/api/export-wisdom.c.o
[  6%] Building C object CMakeFiles/fftw3.dir/api/flops.c.o
[  7%] Building C object CMakeFiles/fftw3.dir/api/forget-wisdom.c.o
[  7%] Building C object CMakeFiles/fftw3.dir/api/import-system-wisdom.c.o
[  8%] Building C object CMakeFiles/fftw3.dir/api/import-wisdom-from-file.c.o
[  9%] Building C object CMakeFiles/fftw3.dir/api/import-wisdom.c.o
[  9%] Building C object CMakeFiles/fftw3.dir/api/import-wisdom-from-string.c.o
[  9%] Building C object CMakeFiles/fftw3.dir/api/map-r2r-kind.c.o
[  9%] Building C object CMakeFiles/fftw3.dir/api/malloc.c.o
[ 10%] Building C object CMakeFiles/fftw3.dir/api/mapflags.c.o
[ 10%] Building C object CMakeFiles/fftw3.dir/api/mkprinter-file.c.o
[ 11%] Building C object CMakeFiles/fftw3.dir/api/mkprinter-str.c.o
[ 12%] Building C object CMakeFiles/fftw3.dir/api/mktensor-iodims.c.o
[ 12%] Building C object CMakeFiles/fftw3.dir/api/mktensor-iodims64.c.o
[ 12%] Building C object CMakeFiles/fftw3.dir/api/mktensor-rowmajor.c.o
[ 12%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-1d.c.o
[ 13%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-2d.c.o
[ 13%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-3d.c.o
[ 14%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-c2r-1d.c.o
[ 14%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-c2r-2d.c.o
[ 14%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-c2r-3d.c.o
[ 15%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-c2r.c.o
[ 15%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-r2c-1d.c.o
[ 16%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-r2c-2d.c.o
[ 16%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-r2c-3d.c.o
[ 17%] Building C object CMakeFiles/fftw3.dir/api/plan-dft-r2c.c.o
[ 17%] Building C object CMakeFiles/fftw3.dir/api/plan-dft.c.o
[ 18%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-dft-c2r.c.o
[ 18%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-dft-r2c.c.o
[ 18%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-dft.c.o
[ 19%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-r2r.c.o
[ 19%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-split-dft-c2r.c.o
[ 20%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-split-dft-r2c.c.o
[ 20%] Building C object CMakeFiles/fftw3.dir/api/plan-guru-split-dft.c.o
[ 20%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-dft-c2r.c.o
[ 21%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-dft-r2c.c.o
[ 22%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-split-dft-c2r.c.o
[ 22%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-dft.c.o
[ 22%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-r2r.c.o
[ 22%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-split-dft-r2c.c.o
[ 23%] Building C object CMakeFiles/fftw3.dir/api/plan-guru64-split-dft.c.o
[ 23%] Building C object CMakeFiles/fftw3.dir/api/plan-many-dft-c2r.c.o
[ 24%] Building C object CMakeFiles/fftw3.dir/api/plan-many-dft-r2c.c.o
[ 25%] Building C object CMakeFiles/fftw3.dir/api/plan-many-dft.c.o
[ 25%] Building C object CMakeFiles/fftw3.dir/api/plan-many-r2r.c.o
[ 25%] Building C object CMakeFiles/fftw3.dir/api/plan-r2r-1d.c.o
[ 25%] Building C object CMakeFiles/fftw3.dir/api/plan-r2r-2d.c.o
[ 25%] Building C object CMakeFiles/fftw3.dir/api/plan-r2r.c.o
[ 26%] Building C object CMakeFiles/fftw3.dir/api/plan-r2r-3d.c.o
[ 27%] Building C object CMakeFiles/fftw3.dir/api/print-plan.c.o
[ 27%] Building C object CMakeFiles/fftw3.dir/api/rdft2-pad.c.o
[ 28%] Building C object CMakeFiles/fftw3.dir/api/the-planner.c.o
[ 28%] Building C object CMakeFiles/fftw3.dir/api/version.c.o
[ 28%] Building C object CMakeFiles/fftw3.dir/dft/bluestein.c.o
[ 29%] Building C object CMakeFiles/fftw3.dir/dft/buffered.c.o
[ 29%] Building C object CMakeFiles/fftw3.dir/dft/conf.c.o
[ 30%] Building C object CMakeFiles/fftw3.dir/dft/ct.c.o
[ 30%] Building C object CMakeFiles/fftw3.dir/dft/dftw-direct.c.o
[ 30%] Building C object CMakeFiles/fftw3.dir/dft/dftw-directsq.c.o
[ 31%] Building C object CMakeFiles/fftw3.dir/dft/dftw-generic.c.o
[ 32%] Building C object CMakeFiles/fftw3.dir/dft/dftw-genericbuf.c.o
[ 32%] Building C object CMakeFiles/fftw3.dir/dft/direct.c.o
[ 32%] Building C object CMakeFiles/fftw3.dir/dft/generic.c.o
[ 33%] Building C object CMakeFiles/fftw3.dir/dft/indirect-transpose.c.o
[ 33%] Building C object CMakeFiles/fftw3.dir/dft/indirect.c.o
[ 33%] Building C object CMakeFiles/fftw3.dir/dft/kdft-dif.c.o
[ 34%] Building C object CMakeFiles/fftw3.dir/dft/kdft-difsq.c.o
[ 34%] Building C object CMakeFiles/fftw3.dir/dft/kdft-dit.c.o
[ 35%] Building C object CMakeFiles/fftw3.dir/dft/kdft.c.o
[ 35%] Building C object CMakeFiles/fftw3.dir/dft/nop.c.o
[ 36%] Building C object CMakeFiles/fftw3.dir/dft/plan.c.o
[ 36%] Building C object CMakeFiles/fftw3.dir/dft/problem.c.o
[ 36%] Building C object CMakeFiles/fftw3.dir/dft/rader.c.o
[ 36%] Building C object CMakeFiles/fftw3.dir/dft/solve.c.o
[ 37%] Building C object CMakeFiles/fftw3.dir/dft/rank-geq2.c.o
[ 38%] Building C object CMakeFiles/fftw3.dir/dft/vrank-geq1.c.o
[ 38%] Building C object CMakeFiles/fftw3.dir/dft/zero.c.o
[ 39%] Building C object CMakeFiles/fftw3.dir/dft/scalar/n.c.o
[ 39%] Building C object CMakeFiles/fftw3.dir/dft/scalar/t.c.o
[ 40%] Building C object CMakeFiles/fftw3.dir/kernel/align.c.o
[ 40%] Building C object CMakeFiles/fftw3.dir/kernel/alloc.c.o
[ 40%] Building C object CMakeFiles/fftw3.dir/kernel/assert.c.o
[ 41%] Building C object CMakeFiles/fftw3.dir/kernel/awake.c.o
[ 41%] Building C object CMakeFiles/fftw3.dir/kernel/cpy1d.c.o
[ 41%] Building C object CMakeFiles/fftw3.dir/kernel/buffered.c.o
[ 42%] Building C object CMakeFiles/fftw3.dir/kernel/cpy2d-pair.c.o
[ 42%] Building C object CMakeFiles/fftw3.dir/kernel/cpy2d.c.o
[ 43%] Building C object CMakeFiles/fftw3.dir/kernel/ct.c.o
[ 43%] Building C object CMakeFiles/fftw3.dir/kernel/debug.c.o
[ 44%] Building C object CMakeFiles/fftw3.dir/kernel/extract-reim.c.o
[ 44%] Building C object CMakeFiles/fftw3.dir/kernel/hash.c.o
[ 44%] Building C object CMakeFiles/fftw3.dir/kernel/iabs.c.o
[ 45%] Building C object CMakeFiles/fftw3.dir/kernel/kalloc.c.o
[ 45%] Building C object CMakeFiles/fftw3.dir/kernel/md5-1.c.o
[ 46%] Building C object CMakeFiles/fftw3.dir/kernel/md5.c.o
[ 46%] Building C object CMakeFiles/fftw3.dir/kernel/minmax.c.o
[ 47%] Building C object CMakeFiles/fftw3.dir/kernel/ops.c.o
[ 47%] Building C object CMakeFiles/fftw3.dir/kernel/pickdim.c.o
[ 47%] Building C object CMakeFiles/fftw3.dir/kernel/plan.c.o
[ 48%] Building C object CMakeFiles/fftw3.dir/kernel/planner.c.o
[ 48%] Building C object CMakeFiles/fftw3.dir/kernel/primes.c.o
[ 48%] Building C object CMakeFiles/fftw3.dir/kernel/problem.c.o
[ 49%] Building C object CMakeFiles/fftw3.dir/kernel/print.c.o
[ 49%] Building C object CMakeFiles/fftw3.dir/kernel/rader.c.o
[ 50%] Building C object CMakeFiles/fftw3.dir/kernel/scan.c.o
[ 50%] Building C object CMakeFiles/fftw3.dir/kernel/solver.c.o
[ 51%] Building C object CMakeFiles/fftw3.dir/kernel/solvtab.c.o
[ 51%] Building C object CMakeFiles/fftw3.dir/kernel/stride.c.o
[ 52%] Building C object CMakeFiles/fftw3.dir/kernel/tensor.c.o
[ 52%] Building C object CMakeFiles/fftw3.dir/kernel/tensor1.c.o
[ 53%] Building C object CMakeFiles/fftw3.dir/kernel/tensor3.c.o
[ 53%] Building C object CMakeFiles/fftw3.dir/kernel/tensor2.c.o
[ 53%] Building C object CMakeFiles/fftw3.dir/kernel/tensor4.c.o
[ 53%] Building C object CMakeFiles/fftw3.dir/kernel/tensor7.c.o
[ 54%] Building C object CMakeFiles/fftw3.dir/kernel/tensor5.c.o
[ 55%] Building C object CMakeFiles/fftw3.dir/kernel/tensor8.c.o
[ 55%] Building C object CMakeFiles/fftw3.dir/kernel/tile2d.c.o
[ 55%] Building C object CMakeFiles/fftw3.dir/kernel/tensor9.c.o
[ 56%] Building C object CMakeFiles/fftw3.dir/kernel/timer.c.o
[ 56%] Building C object CMakeFiles/fftw3.dir/kernel/transpose.c.o
[ 57%] Building C object CMakeFiles/fftw3.dir/kernel/trig.c.o
[ 57%] Building C object CMakeFiles/fftw3.dir/kernel/twiddle.c.o
[ 57%] Building C object CMakeFiles/fftw3.dir/rdft/buffered.c.o
[ 57%] Building C object CMakeFiles/fftw3.dir/rdft/conf.c.o
[ 58%] Building C object CMakeFiles/fftw3.dir/rdft/buffered2.c.o
[ 59%] Building C object CMakeFiles/fftw3.dir/rdft/ct-hc2c-direct.c.o
[ 59%] Building C object CMakeFiles/fftw3.dir/rdft/ct-hc2c.c.o
[ 60%] Building C object CMakeFiles/fftw3.dir/rdft/dft-r2hc.c.o
[ 60%] Building C object CMakeFiles/fftw3.dir/rdft/dht-r2hc.c.o
[ 60%] Building C object CMakeFiles/fftw3.dir/rdft/dht-rader.c.o
[ 61%] Building C object CMakeFiles/fftw3.dir/rdft/direct-r2c.c.o
[ 61%] Building C object CMakeFiles/fftw3.dir/rdft/direct-r2r.c.o
[ 62%] Building C object CMakeFiles/fftw3.dir/rdft/direct2.c.o
[ 62%] Building C object CMakeFiles/fftw3.dir/rdft/generic.c.o
[ 62%] Building C object CMakeFiles/fftw3.dir/rdft/hc2hc-generic.c.o
[ 63%] Building C object CMakeFiles/fftw3.dir/rdft/hc2hc-direct.c.o
[ 63%] Building C object CMakeFiles/fftw3.dir/rdft/hc2hc.c.o
[ 64%] Building C object CMakeFiles/fftw3.dir/rdft/indirect.c.o
[ 64%] Building C object CMakeFiles/fftw3.dir/rdft/khc2c.c.o
[ 65%] Building C object CMakeFiles/fftw3.dir/rdft/khc2hc.c.o
[ 65%] Building C object CMakeFiles/fftw3.dir/rdft/kr2c.c.o
[ 66%] Building C object CMakeFiles/fftw3.dir/rdft/kr2r.c.o
[ 66%] Building C object CMakeFiles/fftw3.dir/rdft/nop.c.o
[ 67%] Building C object CMakeFiles/fftw3.dir/rdft/nop2.c.o
[ 67%] Building C object CMakeFiles/fftw3.dir/rdft/plan.c.o
[ 67%] Building C object CMakeFiles/fftw3.dir/rdft/plan2.c.o
[ 68%] Building C object CMakeFiles/fftw3.dir/rdft/problem.c.o
[ 68%] Building C object CMakeFiles/fftw3.dir/rdft/problem2.c.o
[ 69%] Building C object CMakeFiles/fftw3.dir/rdft/rank-geq2-rdft2.c.o
[ 69%] Building C object CMakeFiles/fftw3.dir/rdft/rank-geq2.c.o
[ 69%] Building C object CMakeFiles/fftw3.dir/rdft/rank0-rdft2.c.o
[ 70%] Building C object CMakeFiles/fftw3.dir/rdft/rank0.c.o
[ 71%] Building C object CMakeFiles/fftw3.dir/rdft/rdft-dht.c.o
[ 71%] Building C object CMakeFiles/fftw3.dir/rdft/rdft2-inplace-strides.c.o
[ 71%] Building C object CMakeFiles/fftw3.dir/rdft/rdft2-rdft.c.o
[ 72%] Building C object CMakeFiles/fftw3.dir/rdft/rdft2-tensor-max-index.c.o
[ 72%] Building C object CMakeFiles/fftw3.dir/rdft/rdft2-strides.c.o
[ 72%] Building C object CMakeFiles/fftw3.dir/rdft/solve.c.o
[ 73%] Building C object CMakeFiles/fftw3.dir/rdft/solve2.c.o
[ 73%] Building C object CMakeFiles/fftw3.dir/rdft/vrank-geq1-rdft2.c.o
[ 74%] Building C object CMakeFiles/fftw3.dir/rdft/vrank-geq1.c.o
[ 74%] Building C object CMakeFiles/fftw3.dir/rdft/vrank3-transpose.c.o
[ 74%] Building C object CMakeFiles/fftw3.dir/rdft/scalar/hc2c.c.o
[ 75%] Building C object CMakeFiles/fftw3.dir/rdft/scalar/hfb.c.o
[ 76%] Building C object CMakeFiles/fftw3.dir/rdft/scalar/r2c.c.o
[ 76%] Building C object CMakeFiles/fftw3.dir/rdft/scalar/r2r.c.o
[ 76%] Building C object CMakeFiles/fftw3.dir/reodft/conf.c.o
[ 77%] Building C object CMakeFiles/fftw3.dir/reodft/reodft00e-splitradix.c.o
[ 77%] Building C object CMakeFiles/fftw3.dir/reodft/redft00e-r2hc-pad.c.o
[ 77%] Building C object CMakeFiles/fftw3.dir/reodft/redft00e-r2hc.c.o
[ 78%] Building C object CMakeFiles/fftw3.dir/reodft/reodft010e-r2hc.c.o
[ 78%] Building C object CMakeFiles/fftw3.dir/reodft/reodft11e-r2hc-odd.c.o
[ 79%] Building C object CMakeFiles/fftw3.dir/reodft/reodft11e-r2hc.c.o
[ 79%] Building C object CMakeFiles/fftw3.dir/reodft/reodft11e-radix2.c.o
[ 79%] Building C object CMakeFiles/fftw3.dir/reodft/rodft00e-r2hc-pad.c.o
[ 80%] Building C object CMakeFiles/fftw3.dir/reodft/rodft00e-r2hc.c.o
[ 80%] Building C object CMakeFiles/fftw3.dir/simd-support/altivec.c.o
[ 81%] Building C object CMakeFiles/fftw3.dir/simd-support/avx-128-fma.c.o
[ 81%] Building C object CMakeFiles/fftw3.dir/simd-support/avx.c.o
[ 82%] Building C object CMakeFiles/fftw3.dir/simd-support/avx2.c.o
[ 82%] Building C object CMakeFiles/fftw3.dir/simd-support/avx512.c.o
[ 82%] Building C object CMakeFiles/fftw3.dir/simd-support/kcvi.c.o
[ 83%] Building C object CMakeFiles/fftw3.dir/simd-support/neon.c.o
[ 84%] Building C object CMakeFiles/fftw3.dir/simd-support/sse2.c.o
[ 84%] Building C object CMakeFiles/fftw3.dir/simd-support/taint.c.o
[ 84%] Building C object CMakeFiles/fftw3.dir/simd-support/vsx.c.o
[ 85%] Linking C shared library libfftw3.so
[ 85%] Built target fftw3
Scanning dependencies of target bench
[ 86%] Building C object CMakeFiles/bench.dir/libbench2/after-rcopy-to.c.o
[ 86%] Building C object CMakeFiles/bench.dir/libbench2/allocate.c.o
[ 86%] Building C object CMakeFiles/bench.dir/libbench2/after-rcopy-from.c.o
[ 86%] Building C object CMakeFiles/bench.dir/libbench2/after-hccopy-to.c.o
[ 87%] Building C object CMakeFiles/bench.dir/libbench2/after-hccopy-from.c.o
[ 87%] Building C object CMakeFiles/bench.dir/libbench2/after-ccopy-from.c.o
[ 87%] Building C object CMakeFiles/bench.dir/libbench2/bench-cost-postprocess.c.o
[ 88%] Building C object CMakeFiles/bench.dir/libbench2/aset.c.o
[ 88%] Building C object CMakeFiles/bench.dir/libbench2/after-ccopy-to.c.o
[ 88%] Building C object CMakeFiles/bench.dir/libbench2/bench-main.c.o
[ 89%] Building C object CMakeFiles/bench.dir/libbench2/bench-exit.c.o
[ 89%] Building C object CMakeFiles/bench.dir/libbench2/dotens2.c.o
[ 89%] Building C object CMakeFiles/bench.dir/libbench2/caset.c.o
[ 90%] Building C object CMakeFiles/bench.dir/libbench2/can-do.c.o
[ 91%] Building C object CMakeFiles/bench.dir/libbench2/info.c.o
[ 91%] Building C object CMakeFiles/bench.dir/libbench2/main.c.o
[ 92%] Building C object CMakeFiles/bench.dir/libbench2/mflops.c.o
[ 92%] Building C object CMakeFiles/bench.dir/libbench2/mp.c.o
[ 93%] Building C object CMakeFiles/bench.dir/libbench2/ovtpvt.c.o
[ 93%] Building C object CMakeFiles/bench.dir/libbench2/my-getopt.c.o
[ 93%] Building C object CMakeFiles/bench.dir/libbench2/pow2.c.o
[ 94%] Building C object CMakeFiles/bench.dir/libbench2/problem.c.o
[ 94%] Building C object CMakeFiles/bench.dir/libbench2/report.c.o
[ 95%] Building C object CMakeFiles/bench.dir/libbench2/speed.c.o
[ 95%] Building C object CMakeFiles/bench.dir/libbench2/tensor.c.o
[ 95%] Building C object CMakeFiles/bench.dir/libbench2/timer.c.o
[ 96%] Building C object CMakeFiles/bench.dir/libbench2/util.c.o
[ 96%] Building C object CMakeFiles/bench.dir/libbench2/verify-dft.c.o
[ 97%] Building C object CMakeFiles/bench.dir/libbench2/verify-lib.c.o
[ 97%] Building C object CMakeFiles/bench.dir/libbench2/verify-r2r.c.o
[ 98%] Building C object CMakeFiles/bench.dir/libbench2/verify-rdft2.c.o
[ 98%] Building C object CMakeFiles/bench.dir/libbench2/verify.c.o
[ 98%] Building C object CMakeFiles/bench.dir/libbench2/zero.c.o
[ 99%] Building C object CMakeFiles/bench.dir/tests/bench.c.o
[ 99%] Building C object CMakeFiles/bench.dir/tests/hook.c.o
[100%] Building C object CMakeFiles/bench.dir/tests/fftw-bench.c.o
[100%] Linking C executable bench
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2cf'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2cb'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_dft_standard'
/usr/local/bin/ld: libfftw3.so.3: undefined reference to `fftw_solvtab_rdft_r2r'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/bench.dir/build.make:1006: bench] Error 1
make[1]: *** [CMakeFiles/Makefile2:68: CMakeFiles/bench.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
TinySlik commented 6 years ago

me too

stevengj commented 6 years ago

Did you look at the README? If you directly clone the git master version, you need to install special tools and run the bootstrapping script to create all of the generated code.

Most people should just download the release tarball rather than using the git source.

FFY00 commented 6 years ago

I'm sorry, I missed the README. I did read the README.MD but there weren't sny instructions. My bad.

MVoz commented 5 years ago

-DDISABLE_FORTRAN=ON

djbarker commented 5 years ago

I'm hitting this issue even using the downloaded tarball, both with and without the DISABLE_FORTRAN option suggested by @Voskrese . Any suggestions?

Edit: Should probably add; FFTW version 3.3.8.

matteo-frigo commented 5 years ago

@djbarker Can you post the exact steps that caused the problem (starting from a fftw-3.3.8.tar.gz tarball unpacked in a fresh directory)

djbarker commented 5 years ago

@matteo-frigo I was able to build successfully by completely blowing away the unpacked directory and starting afresh. I had tried make clean but that wasn't helping.

The issue was that I had originally tried to build using ./configure then make with simd enabled. Then when I was trying to build with cmake it was somehow picking this up and failing.

MVoz commented 5 years ago

mkdir build && cd build && cmake .. -LA -G"Unix Makefiles" -DDISABLE_FORTRAN=ON cmake --build . or make

malcolmroberts commented 5 years ago

I had the same issue; it turned out that I already had FFTW installed in my system, and the cmake options that I invoked were incompatible with the already-installed version.

For what it's worth, I was able to compile with

cmake -DCMAKE_INSTALL_PREFIX=${HOME}/fftw -DDISABLE_FORTRAN=ON -DENABLE_FLOAT=OFF -DENABLE_AVX2=ON ..

joachimHodara commented 5 years ago

Looking into the guts of FFTW, these functions seem to be auto-generated by the build system (see support/Makefile.codelets and rdft/scalar/r2r/Makefile.am for example) in a new file called codlist.c. This file does not get generated when I run the basic cmake commands, hence the missing symbols.

How does one typically include FFTW as a dependency in a cmake project? I don't want my end-users to have to worry about installing FFTW themselves. Did I misunderstand something, or is it not currently possible?

Github6am commented 2 years ago

the problem is still present. I am using the standard cmake procedure on Ubuntu 20.04, where already a libfftw is installed.

mkdir build ; cd build
cmake ..
make

which creates a local libfftw3.so.3.6.9 -> llibfftw3.so.3

However, linking C executable bench fails because of undefined reference to fftwsolvtab* this seems to be the same (re-opened) issue: https://github.com/FFTW/fftw3/issues/166

stevengj commented 2 years ago

How does one typically include FFTW as a dependency in a cmake project?

Normal users should not build from a git clone. If you have to build FFTW as a dependency, build from a release tarball — that includes all of the auto-generated files.

Wardo82 commented 2 years ago

Even when working from the tarball i keep getting the same error: /usr/bin/ld: subprojects/fftw/libfftw3f.so.p/dft_conf.c.o: in function 'fftwf_dft_conf_standard': conf.c:(.text+0x29): undefined reference to 'fftwf_solvtab_dft_generic_simd128' /usr/bin/ld: conf.c:(.text+0x38): undefined reference to 'fftwf_solvtab_dft_generic_simd256' /usr/bin/ld: subprojects/fftw/libfftw3f.so.p/rdft_conf.c.o: in function 'fftwf_rdft_conf_standard': conf.c:(.text+0x47): undefined reference to 'fftwf_solvtab_rdft_generic_simd128' /usr/bin/ld: conf.c:(.text+0x56): undefined reference to 'fftwf_solvtab_rdft_generic_simd256' How come it recognizes _standard, but not _simd*? What am i missing?

I have to comment these two lines on each conf.c to be able to compile: `

if HAVE_GENERIC_SIMD128

//X(solvtab_exec)(X(solvtab_dft_generic_simd128), p);

endif

if HAVE_GENERIC_SIMD256

 //X(solvtab_exec)(X(solvtab_dft_generic_simd256), p);

endif

`