Кому-то удалось заставить Perforce p4api.net работать с Linux?using p4net.api in Mono
Мои проекты правильно построить на Mono 2.8.4, динамические библиотеки (p4bridge.dll и p4api.net.dll находятся в бин/Debug, но всякий раз, когда я пытаюсь выполнить его, я получаю это исключение:
Unhandled Exception: System.DllNotFoundException: p4bridge.dll
at (wrapper managed-to-native) Perforce.P4.P4Bridge:ConnectA (string,string,string,string,Perforce.P4.P4CallBacks/LogMessageDelegate)
at Perforce.P4.P4Server..ctor (System.String server, System.String user, System.String pass, System.String ws_client) [0x00000] in <filename unknown>:0
at Perforce.P4.Connection.Connect (Perforce.P4.Options options) [0x00000] in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.DllNotFoundException: p4bridge.dll
at (wrapper managed-to-native) Perforce.P4.P4Bridge:ConnectA (string,string,string,string,Perforce.P4.P4CallBacks/LogMessageDelegate)
at Perforce.P4.P4Server..ctor (System.String server, System.String user, System.String pass, System.String ws_client) [0x00000] in <filename unknown>:0
at Perforce.P4.Connection.Connect (Perforce.P4.Options options) [0x00000] in <filename unknown>:0
API-интерфейс является последним (2013,3) с MonoDevelop 2.8.4, как упоминалось, и все моно Обороты в актуальном состоянии.
Опять же, как упоминалось, оба Perforce библиотеки DLL копируются в Bin/Debug, проект компилируется правильно , и он находит p4api.net.dll (как показывает исключение), но не p4bridge.dll. Я начинаю подозревать, что p4bridge.dll не является управляемой библиотекой .NET.
Любые идеи?
--JFG
Я считаю, что ваше подозрение верное. Если это похоже на настройку P4.NET, то p4bridge.dll является встроенным интерфейсом API. –
Я заметил, глядя на сайт Mono, что они ищут файлы .so. Может быть, вам нужно скомпилировать API .net в Linux? http://www.mono-project.com/DllNotFoundException Исходный код доступен на FTP-сайте Perforce для API. – Matt