У меня есть несколько небольших приложений на python, которые используют cx_Oracle для подключения к базе данных Oracle. Я разворачиваю эти приложения, компилируя их с помощью py2exe, который во многих случаях работает нормально.
Проблема в том, что не существует стандартной версии Oracle Client (например, 9i и 10g) для множества людей, которым необходимо ее установить, и было бы очень неприятно пытаться заставить всех стандартизировать одну версию Oracle Client. , Я сейчас использую клиент 9.2 с cx_Oracle 4.4.1 для 9i, и поэтому, когда я запускаю py2exe, полученный exe-файл включает библиотеку cx_Oracle 4.4.1 и не будет работать с клиентами 10g.
Я не использую какие-либо специфические функции ни в одной из версий Oracle, поэтому у меня нет особой причины заботиться о том, какая версия клиента используется, за исключением проблем совместимости cx_Oracle.
Идеальным решением было бы каким-то образом скомпилировать версию, полностью независимую от установленного на компьютере клиента Oracle.
Если это невозможно, я хотел бы скомпилировать отдельные exe-файлы для каждой основной версии Oracle (my_app_9i.exe, my_app_10g.exe и т. Д.), Но я не могу найти простой способ сделать это после установки новой cx_Oracle перезаписывает мою старую версию, и мне придется постоянно менять местами библиотеку, чтобы компилировать другие версии всякий раз, когда я делаю изменения.
Любые советы или другие варианты приветствуются.