Как я могу связать динамическую библиотеку в XCode?

Свойство отображения нельзя анимировать. И если вы используете animation-delay:1s, кнопка все равно будет отображаться в течение 1 с до начала анимации. попробуйте код ниже.

@import url(https://fonts.googleapis.com/css?family=Teko);
body{
    margin: 0;
    padding: 0;
    background-color: #3c3f41;
    height: 100vh;
    width: 100vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.exec h2{
    color: #fff;
    font-family: 'Teko', sans-serif;
    font-weight: lighter;
    overflow: hidden;
    border-right: 2px solid orange;
    padding-right: 5px;
    white-space: nowrap;
    margin: 0 auto;
    animation:
        typing 1s steps(20, end),
        cursor 0.5s step-end infinite;
    /*animation-delay: 5s;*/
}
@keyframes typing {
    from{ width: 0 }
    to{ width: 100% }
}
@keyframes cursor{
    from, to {
        border-color: transparent;}
    50% {
        border-color: orange;
    }
}
.enter{
    border: 1px solid transparent;
    border-radius: 15px;
    min-width: 70px;
    background-color: orange;
    color: white;
    font-size: 16px;
    opacity: 1;
    animation: clickit 2s ease;
}
@keyframes clickit {
    0% {opacity:0;}
    50% {opacity:0;}
    1000% {opacity:1;}
}
<body>
    <div class="exec">
        <h2>
            execute portfolio;
        </h2>
    </div>
    <button class="enter">enter</button>
</body>

9
задан Binarian 5 June 2014 в 07:30
поделиться

3 ответа

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

Это не удивительно, так как dylib файл находится в некотором произвольном каталоге не на системном пути. Любой необходимо скопировать его в /usr/lib (вероятно, не хорошая идея), или включают его в комплект приложений. Последний является, вероятно, лучшим подходом.

Я никогда не пробовал его, но по-видимому необходимо использовать Фазу разработки Файлов Копии, чтобы поместить dylib в пакете и затем настроить XCode так, чтобы исполняемый файл знал, где найти его.

2
ответ дан 4 December 2019 в 23:41
поделиться

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

Я тестировал это с помощью sqlite3 и приложения какао (какао-touch ).

0
ответ дан 4 December 2019 в 23:41
поделиться

I ' я только что сделал именно это с помощью проекта Module Bundle. Это было включено в более крупный проект с отдельным исполняемым файлом.

Я добавил шаг «Копировать dylibs в frameworks», который скопировал dylibs в /Foobar.bundle/Contents/Frameworks/Foobar/. Затем я добавил этап выполнения сценария для запуска в качестве последнего шага, чтобы исправить имена установки dylib в исполняемом файле:

install_name_tool -change libBobDylan.dylib @executable_path/../Plugins/Foobar.bundle/Contents/Frameworks/Foobar/libBobDylan.dylib path/to/build/product/Foobar.Bundle/Contents/MacOS/Foobar

Конечно, libBobDylan.dylib также связан с libBillyIdol.dylib. Поэтому мне пришлось добавить еще одну фазу выполнения сценария в самом начале Target, чтобы исправить здесь имена установки:

install_name_tool -change libBillyIdol.dylib @executable_path/../Plugins/FooBar.bundle/Contents/Frameworks/Foobar/libBillyIdol.dylib local/path/to/libBobDylan.dylib

У меня было более дюжины из них, чтобы связать их; Мне пришлось убедить поставщика дилибов дополнить их заголовок, чтобы приспособиться к моим многочисленным изменениям install_name ...

Я добавил шаг «Копирование дилибов в фреймворки», на котором дилибы копируются в /Foobar.bundle/Contents/Frameworks/Foobar/. Затем я добавил этап выполнения сценария для запуска в качестве последнего шага, чтобы исправить имена установки dylib в исполняемом файле:

install_name_tool -change libBobDylan.dylib @executable_path/../Plugins/Foobar.bundle/Contents/Frameworks/Foobar/libBobDylan.dylib path/to/build/product/Foobar.Bundle/Contents/MacOS/Foobar

Конечно, libBobDylan.dylib также связан с libBillyIdol.dylib. Поэтому мне пришлось добавить еще одну фазу выполнения сценария в самом начале Target, чтобы исправить здесь имена установки:

install_name_tool -change libBillyIdol.dylib @executable_path/../Plugins/FooBar.bundle/Contents/Frameworks/Foobar/libBillyIdol.dylib local/path/to/libBobDylan.dylib

У меня было более дюжины из них, чтобы связать их; Мне пришлось убедить поставщика дилибов дополнить их заголовок, чтобы приспособиться к моим многочисленным изменениям install_name ...

Я добавил шаг «Копирование дилибов в фреймворки», на котором дилибы копируются в /Foobar.bundle/Contents/Frameworks/Foobar/. Затем я добавил этап выполнения сценария для запуска в качестве последнего шага, чтобы исправить имена установки dylib в исполняемом файле:

install_name_tool -change libBobDylan.dylib @executable_path/../Plugins/Foobar.bundle/Contents/Frameworks/Foobar/libBobDylan.dylib path/to/build/product/Foobar.Bundle/Contents/MacOS/Foobar

Конечно, libBobDylan.dylib также связан с libBillyIdol.dylib. Поэтому мне пришлось добавить еще одну фазу выполнения сценария в самом начале Target, чтобы исправить здесь имена установки:

install_name_tool -change libBillyIdol.dylib @executable_path/../Plugins/FooBar.bundle/Contents/Frameworks/Foobar/libBillyIdol.dylib local/path/to/libBobDylan.dylib

У меня было более дюжины из них, чтобы связать их; Мне пришлось убедить поставщика дилибов дополнить их заголовок, чтобы приспособиться к моим многочисленным изменениям install_name ...

dylib также связан с libBillyIdol.dylib. Поэтому мне пришлось добавить еще одну фазу выполнения сценария в самом начале Target, чтобы исправить здесь имена установки:

install_name_tool -change libBillyIdol.dylib @executable_path/../Plugins/FooBar.bundle/Contents/Frameworks/Foobar/libBillyIdol.dylib local/path/to/libBobDylan.dylib

У меня было более дюжины из них, чтобы связать их; Мне пришлось убедить поставщика дилибов дополнить их заголовок, чтобы приспособиться к моим многочисленным изменениям install_name ...

dylib также связан с libBillyIdol.dylib. Поэтому мне пришлось добавить еще одну фазу выполнения сценария в самом начале Target, чтобы исправить здесь имена установки:

install_name_tool -change libBillyIdol.dylib @executable_path/../Plugins/FooBar.bundle/Contents/Frameworks/Foobar/libBillyIdol.dylib local/path/to/libBobDylan.dylib

У меня было более дюжины из них, чтобы связать их; Мне пришлось убедить поставщика дилибов дополнить их заголовок, чтобы приспособиться к моим многочисленным изменениям install_name ...

4
ответ дан 4 December 2019 в 23:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: