Вы можете использовать этот скрипт для компиляции openssl под Windows 7 + Cygwin. Все, что вам нужно, это только изменить местоположение ndk и выбрать версию Android API.
Мой путь шаг за шагом (Win 7 x64 + Cygwin + ndk r10c)
Скопируйте файлы setenv-android-mod.sh
и build-all-arch.sh
в каталог openssl.
Изменить файл build-all-arch.sh
cd openssl-1.0.1j
в #cd openssl-1.0.1j
(строка 56)
cd ..
в #cd ..
(строка 80)
Изменить файл setend-android-mod.sh
_ANDROID_NDK="android-ndk-r10c-x64"
изменить на версию ndk (строка 18 ) _ANDROID_API="android-19"
изменить на вашу версию API (строка 40) ANDROID_NDK_ROOT="d:/work/android/android-ndk-r10c-x64"
указать свой каталог (строка 42) ANDROID_TOOLCHAIN="d:/work/android/android-ndk-r10c-x64/toolchains"
указать свой каталог (строка 43) ) export CROSS_COMPILE="aarch64-linux-android-"
- export CROSS_COMPILE="$ANDROID_TOOLCHAIN/aarch64-linux-android-"
(строка 219), измените те же строки 225, 231, 237, 243 - просто добавьте $ANDROID_TOOLCHAIN/
в путь кросс-компиляции. Выполнить build-all-arch.sh
.
Все библиотеки (*.so
) будут расположены в /prebuilt/
реж.
[Тысячу сто сорок одна] P.S. У меня было еще несколько ошибок из-за неправильных символических ссылок, но все было хорошо после выполнения следующей команды export CYGWIN="winsymlinks:native"
, см. здесь для деталей. [Тысячу сто сорок одна]
Нет, NHibernate не выполняет то, что вы просите. Я предполагаю, что можно было бы написать код, который экспортировал схему, а затем сравнивал бы ее со схемой базы данных. Но, вероятно, было бы проще экспортировать во временную базу данных и использовать сторонний инструмент, такой как redgate SQL Compare, для сравнения схем.
Даже если он сделал то, о чем вы просите, я не буду » Я не вижу, как это поможет при развертывании, потому что его цель - создать базу данных с нуля.
Отредактировано для добавления: Предполагая, что каждый плагин имеет свой собственный набор таблиц, вы можете определить, была ли схема развернута, используя один из нескольких методов :
Цель экспорта схемы - создать полную схему с нуля. Действительно полезно, если вы еще не развернули свое приложение.
После первого развертывания я настоятельно рекомендую использовать инструмент миграции, который поможет вам в дальнейших расширениях / модификациях схемы. Если вы подумаете немного дальше, то заметите, что вам даже требуется манипулирование данными (например, удаление неправильных данных, которые были сгенерированы из-за ошибки) по мере развития вашего приложения. Это все, с чем может вам помочь инструмент миграции.
Взгляните на:
Вот список дополнительных инструментов миграции для .net, на которые ответили в вопросе SO:
Первоначальная идея миграции возникла из Ruby on Rails и в прошлом «клонировался» в другие фреймворки. Который'
Если у вас есть VS Team Suite или версия Database Developer, она может синхронизировать и отслеживать изменения, а затем создать сценарий развертывания, который создаст для вас все нужные объекты. Также RedGate имеет продукт для сравнения схем, который делает то же самое, если я не ошибаюсь.
Я думаю то, что вы ищете, это SchemaUpdate.Execute
вместо использования SchemaExport
. SchemaUpdate
создаст схему, если она еще не существует, или обновит ее при необходимости и желании.
Это работает для меня с использованием как MSSQL, так и SQLite.
new SchemaUpdate(config).Execute(false, true);