2013-05-28 2 views
1

Я использую Qt (использует библиотеки C++ + библиотеки Qt) на платформе Windows и в настоящее время переношу свой проект на платформу Linux.Как использовать windows .lib на linux с помощью WINE

Используя Qt, это был очень простой процесс, и мой проект работает на платформе Linux с минимальными изменениями.

Однако нам нужно использовать сторонние окна, скомпилированные .lib с соответствующим заголовочным файлом. Очевидно, что этот файл не может работать под Linux, но я читал сообщения, которые предлагают использовать Wine для этого.

Так что в целом мой проект будет работать как обычный проект Linux (Ubuntu), но я хотел бы включить этот файл .lib, используя Wine. Я не смог найти окончательного ответа «как это сделать». Я не уверен, что если вы используете Wine перевести .lib в .so файл или если вы должны статический связать его с некоторой «виноподобной» конвенцией ...

Может кто-нибудь помочь мне точку в правильном направлении?

Спасибо :)

ответ

1

Вы пробовали компиляции под Windows, и запустить всю программу под Wine?

Я не уверен, что вы можете объединить программы Wine и Linux.

+0

Hi RobbieE. Я не пробовал это, это (на мой взгляд) последнее средство! Я бы предпочел развить его в Linux, если это возможно. Однако ваш вопрос очень важен, если вы можете «сращивать вина и программы Linux» ... Я тоже об этом не знаю! –

+0

Есть ли какая-то особая причина, по которой вы хотите, чтобы ваша основная программа была родным Linux, а не окнами на вине? – RobbieE

+0

Ну, целью моего проекта является Linux (ubuntu). В идеале все будет основано на Linux, так что нам не нужен ПК с ОС Windows. Но другое то, что .. нет, нет ... Я упомянул в своем комментарии к Маттиу, что я начинаю думать, что это путь вперед. Есть ли какие-то недостатки в работе с вином? (тот же вопрос в моем другом комментарии) –

2

AFAIK, вы не можете создавать гибридные приложения с Wine (например, ссылку C++ Linux, исполняемые с некоторыми статическими библиотеками Linux и статическими библиотеками Windows).

Одно из решений, которые я предлагаю, заключается в том, чтобы инкапсулировать вашу библиотеку Windows в программу Windows, которая действует как некоторая сетевая услуга, после чего вы подключаете приложение Linux к своей библиотеке Windows через сеть.

Однако, это добавляет сложности вашему программному обеспечению, требует, чтобы вы знали, как выполнять некоторую сетевую программу (однако в наши дни это довольно легко сделать) и не подходит для всех типов библиотек, особенно если в вашей библиотеке есть некоторые вид графического интерфейса.

+0

Хм ... Мне нравится ваше мышление о «автономном» приложении, оно добавляет сложности но является потенциальным решением. Хотя я начинаю смириться с перспективой просто сделать решение в Windows и запустить его в этой среде Wine. Я думаю, общий вопрос: «Есть ли недостатки в использовании вина» ... как затраты времени, надежность и т. Д.? Моя программа требует только самых простых вещей (потоки, IP-сокеты, таймеры, файл IO, и это все!). –

+0

Я думаю о штрафе за исполнение, я не могу сказать ... Я не знаю достаточно о Вине для этого. –

1

Я не могу себе представить, что будет работать гибридный подход. В любом случае выполнение части вашей программы как родного приложения, а другая часть внутри WINE не даст вам много преимуществ по сравнению с полной программой, запущенной в WINE. В любом случае требуется WINE.

Основным недостатком запуска полной программы в WINE является внешний вид GUI, который может выглядеть немного чуждым системе. Тем не менее, использование надлежащей настройки для WINE позволит свести к минимуму проблему. И в качестве основной заметки большинство пользователей Linux используются для разных концепций графического интерфейса из-за различных доступных рабочих сред. Лично у меня много приложений GNOME, работающих на моем рабочем столе KDE.

Я лично попробую запустить вашу программу в WINE. Это значительно облегчает процесс разработки. Такой подход использует инструмент моделирования схем, который довольно известен инженерами-электриками. Он называется LTSpice. Хотя доступны только двоичные файлы Windows, разработчики тестируют его с помощью WINE, чтобы гарантировать, что он работает в Linux. Принято, это инструмент, предлагаемый бесплатно, но сообщество принимает этот подход.

+0

Большое спасибо за ваши отзывы, я начинаю получать более уверенное чувство в отношении винного подхода :) Лучше всего искать, как развернуть приложение для Windows в вине ... –

Смежные вопросы