Saya ingin mengkompilasi program saya yang terhubung ke acml. Di cygwin (win64) dengan gfortran terhubung ke acml:
$ gfortran empty.f90 -L/c:/cygwin64/acml5.3.1/win64/lib/libacml_dll.lib
hasil
/tmp/ccKechZN.o:empty.f90:(.text+0xff): undefined reference to `drandinitialize_'
/tmp/ccKechZN.o:empty.f90:(.text+0xff): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `drandinitialize_'
/tmp/ccKechZN.o:empty.f90:(.text+0x13b): undefined reference to `drandgaussian_'
/tmp/ccKechZN.o:empty.f90:(.text+0x13b): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `drandgaussian_'
collect2: error: ld returned 1 exit status
Saya mencoba beberapa hal lain dengan bantuan dokumentasi, tetapi tidak ada telah berhasil mengizinkan kompiler untuk terhubung dengan acml. Saya juga mencoba menautkan ke perpustakaan dengan menambahkan -l acml_dll
dan menerima kesalahan berikut:
/usr/lib/gcc/x86_64-pc-cygwin/4.9.3/../../../../x86_64-pc-cygwin/bin/ld: cannot find -lacml_dll
collect2: error: ld returned 1 exit status
Saya telah memverifikasi bahwa .lib ada di direktori yang ditentukan. Mungkin masalah terkait, saya juga mencoba menjalankan output dari ifort yang ditautkan ke acml di win64. Saya menggunakan command prompt "Intel 64 Visual Studio 2013 mode" untuk mengkompilasi program contoh yang memanggil subrutin dari acml (lihat dokumentasi untuk menghubungkan di win64):
ifort /libs:dll empty.f90 c:/AMD/acml5.3.1/ifort64_int64/lib/libacml__dll.lib
yang menghasilkan
Intel(R) Visual Fortran Intel(R) 64 Compiler XE for applications running on Intel(R) 64, Version 14.0.5.239 Build 20150212
Copyright (C) 1985-2014 Intel Corporation. All rights reserved.
Microsoft (R) Incremental Linker Version 12.00.21005.1
Copyright (C) Microsoft Corporation. All rights reserved.
-out:empty.exe
-subsystem:console
empty.obj
Setidaknya dengan mudah program dapat dikompilasi dengan sukses. Kemudian ketika saya menjalankan blank.exe saya mendapatkan kesalahan berikut:
Program tidak dapat dijalankan karena libacml_dll.dll hilang dari komputer Anda. Coba instal ulang program untuk memperbaiki masalah ini.
Saya mencoba menginstal ulang acml 5.3.1 serta mencoba acml 6.1.0, tetapi mengalami kesalahan yang sama saat dijalankan.