использование скомпилированных библиотек между компилятором windows, cygwin и linux g ++ - PullRequest
0 голосов
/ 24 ноября 2011

Если у меня есть dll и .lib на основе компилятора Windows, могу ли я связать их с приложением, которое я компилирую с помощью cygwin g ++?Если нет, будет ли он работать со сборкой библиотеки linux g ++?

Могут ли библиотеки, скомпилированные из компилятора windows, cygwin g ++ и linux g ++, перекрестно сшиваемые ??

1 Ответ

0 голосов
/ 24 ноября 2011

Нет, нет.Библиотеки и исполняемые файлы зависят от операционной системы и процессора.Единственное, что вы можете рассмотреть при переносе - это исходный код, если он написан с большой осторожностью.Некоторые библиотеки (например, QtCore, Gtk / Glib, ...) абстрагируют платформу и предоставляют вам общий API (используемый во многих ОС), но вам все равно придется компилировать для каждой системы.

Вы можете выбратьвиртуальная машина (например, JVM через Java, или байт-код Lua, или байт-код Ocaml, ...) для получения дополнительной переносимости (за счет затрат на реализацию виртуальной машины).Вы также можете кодировать программное обеспечение как сценарии (например, используя Python).

...