Как диагностировать проблему загрузки DLL для Perl Module Lab :: VISA - PullRequest
0 голосов
/ 21 января 2019

Я успешно установил (т.е. без ошибок и предупреждений) согласно инструкциям:

https://metacpan.org/pod/distribution/Lab-VISA/lib/Lab/VISA/Installation.pod

Но когда я пытаюсь запустить пример сценария, я получаю:

Can't load 'C:/Dwimperl/perl/site/lib/auto/Lab/VISA/VISA.dll' for module
Lab::VISA: load_file:The specified module could not be found at 
 C:/Dwimperl/perl/lib/DynaLoader.pm line 190.
 at C:/Dwimperl/perl/site/lib/Lab/VISA.pm line 11
Compilation failed in require at VISA Test.pl line 3.
BEGIN failed--compilation aborted at VISA Test.pl line 3.

Поиск в Google предполагает, что с VISA.dll что-то не так.Это генерируется во время установки модуля, поэтому я думаю, что это что-то в моей средеНо мои ограниченные знания означают, что я не уверен, с чего начать.И я не могу найти справочный контакт или форум для модуля Lab :: VISA.

1 Ответ

0 голосов
/ 21 января 2019

Упоминается в метапане:

On 64-bit windows one needs a 32-bit version of perl with GNU binutils version <= 2.24. Otherwise linking with the NI-VISA library will fail. The reason for this are the following bugs in the GNU binutils:

binutils bug 16598

binutils bug 17910

These are fixed in the most recent version of the binutils. Once this version (2.26) is included in Strawberry Perl, it should be possible to use a 64-bit version of perl.

It is not possible to use either 32-bit or 64-bit versions of Strawberry Perl 5.22 as this version uses binutils 2.25.

Итак, если у вас WIN 64, вам нужно установить binutils

Ошибка binutils 16598: https://sourceware.org/bugzilla/show_bug.cgi?id=16598

и ошибка binutils 17910: https://sourceware.org/bugzilla/show_bug.cgi?id=17910

Примечание: не забывайте всегда читать документацию

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...