# SQLCipher and iOS 12

**URL:** <https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891>\
**Category:** SQLCipher\
**Created:** [June 5, 2018, 7:17pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891 "2018-06-05T19:17:35Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![tcoyle](https://avatars.discourse-cdn.com/v4/letter/t/3da27b/32.png) [@tcoyle](https://discuss.zetetic.net/u/tcoyle)\
**Post date:** [June 5, 2018, 7:17pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/1 "2018-06-05T19:17:35Z")

</div>

Hello! Another year, another issue!

When I try to build a project with SQLCipher:

`The i386 architecture is deprecated. You should update your ARCHS build setting to remove the i386 architecture. (in target 'amalgamation')`

Xcode 10 beta 1 - iOS 12

---

<div class="post-metadata">

**Author:** ![sjlombardo](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.zetetic.net/sjlombardo/32/3_2.png) [@sjlombardo](https://discuss.zetetic.net/u/sjlombardo)\
**Post date:** [June 7, 2018, 1:27pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/2 "2018-06-07T13:27:54Z")

</div>

Hello @tcoyle - thanks for getting in touch. Just to confirm, that is a warning correct? We’ll look to adjust in the next SQLCipher release.

---

<div class="post-metadata">

**Author:** ![tcoyle](https://avatars.discourse-cdn.com/v4/letter/t/3da27b/32.png) [@tcoyle](https://discuss.zetetic.net/u/tcoyle)\
**Post date:** [June 7, 2018, 3:20pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/3 "2018-06-07T15:20:52Z")

</div>

No it is an actual error preventing the build

---

<div class="post-metadata">

**Author:** ![tcoyle](https://avatars.discourse-cdn.com/v4/letter/t/3da27b/32.png) [@tcoyle](https://discuss.zetetic.net/u/tcoyle)\
**Post date:** [June 7, 2018, 6:07pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/4 "2018-06-07T18:07:14Z")

</div>

@sjlombardo In fact, I’m trying to get put together a sample project to demonstrate, and oddly enough, having the same issue again as last year with `Implicit declaration of function ‘sqlite3_key’ is invalid in C99` after following the setup tutorial on your website

Unrelated: I see many mentions of people using cocoapods for SQLCipher. Is there a tutorial for setup that way or is that only for non-community edition use?

---

<div class="post-metadata">

**Author:** ![sjlombardo](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.zetetic.net/sjlombardo/32/3_2.png) [@sjlombardo](https://discuss.zetetic.net/u/sjlombardo)\
**Post date:** [June 7, 2018, 6:25pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/5 "2018-06-07T18:25:06Z")

</div>

Hello @tcoyle confirmed - this was a warning in the previous version, but looks like it’s been upgraded to an error. If I recall, you are using sqlcipher.xcodeproj? If so, please go into project build settings and remove any references to i386 archs.

You can certainly use cocoapods. There isn’t a specific tutorial for that, but you are free to use it under the community edition.

---

<div class="post-metadata">

**Author:** ![tcoyle](https://avatars.discourse-cdn.com/v4/letter/t/3da27b/32.png) [@tcoyle](https://discuss.zetetic.net/u/tcoyle)\
**Post date:** [June 7, 2018, 10:38pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/6 "2018-06-07T22:38:11Z")

</div>

@sjlombardo that worked. Thanks!

Is the setup steps any different when using cocoapods? As far as manually adding header search path, linking sqlite etc?

---

<div class="post-metadata">

**Author:** ![sjlombardo](https://sea2.discourse-cdn.com/flex016/user_avatar/discuss.zetetic.net/sjlombardo/32/3_2.png) [@sjlombardo](https://discuss.zetetic.net/u/sjlombardo)\
**Post date:** [June 8, 2018, 7:02pm UTC](https://discuss.zetetic.net/t/sqlcipher-and-ios-12/2891/7 "2018-06-08T19:02:05Z")

</div>

Hello @tcoyle - in theory, CocoaPods will take care of all the headers, linking, etc for you. However, it’s not perfect. For example, here are a few related posts:

> [@No callback after sqlite3\_key when using CocoaPods](https://discuss.zetetic.net/t/no-callback-after-sqlite3-key-when-using-cocoapods/1532/28):
>
> @sjlombardo Ah sorry, I forgot to edit my last reply. I’ve fixed the problem, it was again the fact that -framework SQLCipher wasn’t first up in the list (as you’ve said in your iOS 10 \* Xcode 8 post). For the sake of others who might have the same problem; please check the CocoaPods-generated xcconfig files. It seems that, even though you specify SQLCipher as the first pod, it won’t be the first flag in the OTHER\_LD\_FLAGS setting of the generated xcconfig file. This is especially the case if …

> [@Important Advisory: SQLCipher with Xcode 9 and new SDKs](https://discuss.zetetic.net/t/important-advisory-sqlcipher-with-xcode-9-and-new-sdks/2371):
>
> Apple has recently released Xcode 9, along with new SDKs (e.g. iOS 11, watchOS 4, etc), with new features and enhancements. Most projects that include recent versions of SQLCipher shouldn’t have any problems upgrading. However, there are some changes in the SDKs, so we have prepared important recommendations for SQLCipher developers that run into errors after upgrading. Note: Before proceeding, be sure that all projects implement the separately documented [recommended changes related to SQLCiphe…](https://discuss.zetetic.net/t/important-advisory-sqlcipher-with-xcode-8-and-new-sdks/1688)

> [@Important Advisory: SQLCipher with Xcode 8 and new SDKs](https://discuss.zetetic.net/t/important-advisory-sqlcipher-with-xcode-8-and-new-sdks/1688):
>
> Note: Updated to clarify that this guidance applies to all projects built with Xcode 8, including for non-iOS targets). Apple has recently released XCode 8, along with new SDKs (e.g. iOS 10, watchOS 3, mac OS, tvOS), with many new features and enhancements. The majority of projects that include SQLCipher should have no problems after upgrading. However, there are some important changes and edge cases, so we have prepared the following important recommendations for all SQLCipher developers upgra…

> [@iOS 11 / Xcode issue - Implicit declaration of function 'sqlite3\_key' is invalid in C99](https://discuss.zetetic.net/t/ios-11-xcode-issue-implicit-declaration-of-function-sqlite3-key-is-invalid-in-c99/2198/56):
>
> @mmoore Thank you a lot! It works excellent.
