zholos / qml

math library for kdb+
http://althenia.net/qml
Other
65 stars 33 forks source link

Is there w64 version of binary? #11

Open hgeorge21 opened 3 years ago

hgeorge21 commented 3 years ago

As title

zholos commented 3 years ago

No. Here are some notes on building your own: https://github.com/zholos/qml/wiki/Compiling-on-Windows

JasonChoi1497 commented 3 years ago

Hi Andrey, I managed to build it myself. Thanks anyway!

Jason Choi


发件人: Andrey Zholos @.> 发送时间: 2021年4月3日 16:24 收件人: zholos/qml @.> 抄送: Subscribed @.***> 主题: Re: [zholos/qml] Is there w64 version of binary? (#11)

No. Here are some notes on building your own: https://github.com/zholos/qml/wiki/Compiling-on-Windows

― You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHubhttps://github.com/zholos/qml/issues/11#issuecomment-812833854, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AFJLXSTPQLM3CXNXP3JVJF3TG3GDPANCNFSM42I4VA4Q.

yunfzhai commented 3 years ago

@zholos

No. Here are some notes on building your own: https://github.com/zholos/qml/wiki/Compiling-on-Windows

This error stopped me:

selecting additional libraries for Fortran... not found couldn't link C and Fortran code together.

File conftest.err as following:

testing c_version with CC='x86_64-w64-mingw32-gcc':

testing c_compile:

testing c_link:

testing c_link with CFLAGS='-O2 -fno-strict-aliasing':

testing c_link with CFLAGS_FLOAT='-ffloat-store':

testing xc_version with XCC='gcc': make: gcc: No such file or directory make: *** [mk/test.mk:98: test/xc_version] Error 127

testing xc_version with XCC='x86_64-w64-mingw32-gcc':

testing xc_compile:

testing xc_link:

testing xc_run:

testing f_version with FC='x86_64-w64-mingw32-gfortran':

testing f_compile:

testing f_link:

testing f_link with FFLAGS='-O2':

testing f_link with FFLAGS_FLOAT='-ffloat-store':

testing f_link with FFLAGS_THREAD='-frecursive':

testing xar_version with XAR='x86_64-w64-mingw32-ar':

testing c_and_f_link with FLAGS_BITS='-m64':

testing no_cygwin with FLAGS_WINDOWS='':

testing c_and_f_link with FLAGS_PIPE='-pipe':

testing dlltool:

testing c_compile with FLAGS_PIC='-fPIC':

testing shared_link with LD_SHARED='-shared':

testing shared_link with LDFLAGS_LIBGCC='-static-libgcc':

testing ld_export with LD_EXPORT='-Wl,--version-script':

testing strip with STRIP_FLAGS='-s':

testing ld_static with LD_STATIC='-Wl,-Bstatic':

testing f_compile_c_link with LIBS_FORTRAN='': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: conftest.o:conftest.f:(.text+0x31): undefined reference to _gfortran_concat_string' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: conftest.o:conftest.f:(.text+0x49): undefined reference to_gfortran_pow_i4_i4' collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN='-lgfortran': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(write.o): in function determine_en_precision': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:921: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(write.o): in function get_float_string': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference to quadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference to quadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function_gfortrani_convert_real': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:175:(.text$_gfortrani_convert_real+0xb7): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbol strtoflt128' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function_gfortrani_convert_infnan': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:251:(.text$_gfortrani_convert_infnan+0xb3): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbol `strtoflt128' collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN='-lgfortanbegin -lgfortran': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: cannot find -lgfortanbegin collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN='-lgfortran -lquadmath': /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function _gfortrani_convert_real': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:175:(.text$_gfortrani_convert_real+0xb7): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbolstrtoflt128' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function _gfortrani_convert_infnan': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:251:(.text$_gfortrani_convert_infnan+0xb3): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbolstrtoflt128' collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN='-lgfortanbegin -lgfortran -lquadmath': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: cannot find -lgfortanbegin collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN=' -L/usr/lib/gcc/x86_64-w64-mingw32/10 -lgfortran': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(write.o): in function determine_en_precision': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:921: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(write.o): in function get_float_string': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference to quadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference toquadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/write_float.def:1120: undefined reference to quadmath_snprintf' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function_gfortrani_convert_real': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:175:(.text$_gfortrani_convert_real+0xb7): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbol strtoflt128' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function_gfortrani_convert_infnan': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:251:(.text$_gfortrani_convert_infnan+0xb3): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbol `strtoflt128' collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN=' -L/usr/lib/gcc/x86_64-w64-mingw32/10 -lgfortanbegin -lgfortran': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: cannot find -lgfortanbegin collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN=' -L/usr/lib/gcc/x86_64-w64-mingw32/10 -lgfortran -lquadmath': /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function _gfortrani_convert_real': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:175:(.text$_gfortrani_convert_real+0xb7): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbolstrtoflt128' /usr/lib/gcc/x86_64-w64-mingw32/10/libgfortran.a(read.o): in function _gfortrani_convert_infnan': /mnt/share/cygpkgs/mingw64-x86_64-gcc/mingw64-x86_64-gcc.x86_64/src/gcc-10.2.0/libgfortran/io/read.c:251:(.text$_gfortrani_convert_infnan+0xb3): relocation truncated to fit: IMAGE_REL_AMD64_REL32 against undefined symbolstrtoflt128' collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

testing f_compile_c_link with LIBS_FORTRAN=' -L/usr/lib/gcc/x86_64-w64-mingw32/10 -lgfortanbegin -lgfortran -lquadmath': /usr/lib/gcc/x86_64-w64-mingw32/10/../../../../x86_64-w64-mingw32/bin/ld: cannot find -lgfortanbegin collect2: error: ld returned 1 exit status make: *** [mk/test.mk:125: test/f_compile_c_link] Error 1

how to solve ? Thank you

hgeorge21 commented 3 years ago

@yunfzhai I suggest you download on linux. You can download in WSL. What takes hours in Windows and still failed to compile is compiled in <5-mins in Linux

yunfzhai commented 3 years ago

@yunfzhai I suggest you download on linux. You can download in WSL. What takes hours in Windows and still failed to compile is compiled in <5-mins in Linux

Thanks for reply I have tried in WSL, succeed with > ./configure FC=gfortran-9 KXARCH=l64 --build-blas but failed with > ./configure FC=gfortran-9 KXARCH=w64 --build-blas same errors: selecting additional libraries for Fortran... not found couldn't link C and Fortran code together.

conftest.err.txt conftest.out.txt