perl inline :: C не удалось сопоставить сегмент из общего объекта в общей папке openmediavault, в самой linux или в windows SAMBA - PullRequest
2 голосов
/ 17 апреля 2020

Я получил старый P C и установил в нем openmediavault. Затем поделился своим RAID как общей папкой, затем сопоставил эту папку с windows через SAMBA. Я мог запустить игру Steam в этой общей папке в windows.

Я написал скрипт perl для демонстрации inline :: C, это очень маленький скрипт.

use 5.24.0;
use warnings;
use Inline C=><<'_C_CODE_';

void say_something(){
    printf("Y!");
}

_C_CODE_

say_something();

Тогда, если я помещу этот файл сценария perl в общую папку, perl не сможет выполнить ie этот сценарий. В windows, perl отчетах « не удается загрузить« xxx \ xxx.dll », а в linux, perl отчетах» не удалось сопоставить сегмент из общего объекта в /xx/xx/xx.so".

Но, если я скопирую этот сценарий на локальный диск windows или в папку без общего доступа в linux, я мог скомпилировать его без каких-либо ошибок или предупреждений.

Эта проблема в целом смутила меня, особенно почему она не удалась в windows.

PS: я попробовал 1. chmod + x в папку и _Inline / xx / xx / xxx.so не удалось. 2. Доступ к этой папке через / srv / dev-disk-by-label-NAS01 / xxx /, а не / sharedfolders / xxx /, не удалось. 3. sudo perl xxx.pl, ошибка

...