Как сделать для Wine обёртку над библиотекой, которая вызывала бы Linux версию этой библиотеки?
Приветствую!
В общем, есть прога, которая через библиотеку работает с оборудованием,
под Wine саму прогу запустил, а вот с оборудованием проблемка, т.к. Wine пока что не может нормально с USB работать.
Нашёл версию этой библиотеки для Linux, создал простейшую прогу на c++, которая дёргает функции из линуксовой библиотеки и оборудование ей отвечает.
Теперь нужно как-то заставить Wine грузить, эм, линуксовую версию библиотек, но, думаю, из-за разницы принципов
напрямую это сделать не получится, поэтом нужна некая "прослойка", которая перехватывала вызовы функций родной библиотеки и выполняла бы вызов линуксовой версии.
Интересует, как написать эту "прослойку" ? Подскажите, пожалуйста, может быть есть готовый мануал? Или хотя бы что гуглить...
А зачем так усложнять? Линуксовую библиотеку - в отдельный процесс-демон, и общайтесь с ним по юниксовым/сетевым сокетам.
Или исходных кодов основной программы нет в распоряжении?
Я бы предложил:
1. Перекомпиляции основную прогу под Linux
2. Можно сделать http клиент, который будет работать с оборудованием и с ним потом взаимодействовать (тут можно сказать, что барин знает толк в извращениях)))
Первый вариант предпочтительнее.
Подмените библиотеку на самописную (виндовую), которая будет по какому-нибудь rpc общаться с фоновой линуксовой программой (которая уже непосредственно будет осуществлять системные вызовы).