{"id":1665,"date":"2015-11-08T15:20:36","date_gmt":"2015-11-08T09:50:36","guid":{"rendered":"http:\/\/judepereira.com\/blog\/?p=1665"},"modified":"2015-11-08T15:20:36","modified_gmt":"2015-11-08T09:50:36","slug":"openframeworks-and-appcode","status":"publish","type":"post","link":"https:\/\/judepereira.com\/blog\/openframeworks-and-appcode\/","title":{"rendered":"openFrameworks and AppCode"},"content":{"rendered":"<p>Developing an openFrameworks app with AppCode is pretty easy. However, if you just open and run the project created by the project generator, you might see the following errors:<\/p>\n<figure id=\"attachment_1666\" aria-describedby=\"caption-attachment-1666\" style=\"width: 676px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png\" class=\"highslide-image\" onclick=\"return hs.expand(this);\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1666\" data-permalink=\"https:\/\/judepereira.com\/blog\/openframeworks-and-appcode\/fails_by_default\/\" data-orig-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?fit=1513%2C602&amp;ssl=1\" data-orig-size=\"1513,602\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Build failure\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Building a stock openFrameworks app results in these errors&lt;\/p&gt;\n\" data-medium-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?fit=300%2C119&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?fit=1024%2C407&amp;ssl=1\" class=\"wp-image-1666 size-large\" src=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default-1024x407.png?resize=676%2C269\" alt=\"Building a stock openFrameworks app results in these errors\" width=\"676\" height=\"269\" srcset=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?resize=1024%2C407&amp;ssl=1 1024w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?resize=150%2C60&amp;ssl=1 150w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?resize=300%2C119&amp;ssl=1 300w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?resize=676%2C269&amp;ssl=1 676w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/fails_by_default.png?w=1513&amp;ssl=1 1513w\" sizes=\"auto, (max-width: 676px) 100vw, 676px\" \/><\/a><figcaption id=\"caption-attachment-1666\" class=\"wp-caption-text\">Building a stock openFrameworks app results in these errors<\/figcaption><\/figure>\n<h2>Why doesn&#8217;t it just work?<\/h2>\n<p>This is because openFrameworks doesn&#8217;t support 64 bit builds yet on the Mac, due to a dependency on the deprecated QT framework. More on that <a href=\"https:\/\/youtrack.jetbrains.com\/issue\/OC-12660\" target=\"_blank\">here<\/a>.<\/p>\n<h2>What&#8217;s the quick fix?<\/h2>\n<p>Set your project&#8217;s architecture to i386 (32 bit) in it&#8217;s build settings:<\/p>\n<figure id=\"attachment_1667\" aria-describedby=\"caption-attachment-1667\" style=\"width: 900px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png\" class=\"highslide-image\" onclick=\"return hs.expand(this);\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1667\" data-permalink=\"https:\/\/judepereira.com\/blog\/openframeworks-and-appcode\/set_i386\/\" data-orig-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?fit=2880%2C1800&amp;ssl=1\" data-orig-size=\"2880,1800\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Setting your project architecture\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Ensure that you set both, your project&#8217;s architecture, as well as openFrameworks&#8217; architecture to i386&lt;\/p&gt;\n\" data-medium-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?fit=300%2C188&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?fit=1024%2C640&amp;ssl=1\" class=\"wp-image-1667\" src=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386-300x188.png?resize=900%2C563\" alt=\"Ensure that you set both, your project's architecture, as well as openFrameworks' architecture to i386\" width=\"900\" height=\"563\" srcset=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?resize=300%2C188&amp;ssl=1 300w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?resize=150%2C94&amp;ssl=1 150w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?resize=1024%2C640&amp;ssl=1 1024w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?resize=676%2C423&amp;ssl=1 676w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/set_i386.png?w=2000&amp;ssl=1 2000w\" sizes=\"auto, (max-width: 900px) 100vw, 900px\" \/><\/a><figcaption id=\"caption-attachment-1667\" class=\"wp-caption-text\">Ensure that you set both, your project&#8217;s architecture, as well as openFrameworks&#8217; architecture to i386<\/figcaption><\/figure>\n<p>Once you&#8217;ve done this, your run configurations should shortly say 32 bit Intel instead of 64 bit Intel:<\/p>\n<figure id=\"attachment_1668\" aria-describedby=\"caption-attachment-1668\" style=\"width: 897px\" class=\"wp-caption aligncenter\"><a href=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png\" class=\"highslide-image\" onclick=\"return hs.expand(this);\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"1668\" data-permalink=\"https:\/\/judepereira.com\/blog\/openframeworks-and-appcode\/build_becomes_32_bit\/\" data-orig-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?fit=897%2C521&amp;ssl=1\" data-orig-size=\"897,521\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Run configurations updated\" data-image-description=\"\" data-image-caption=\"&lt;p&gt;Run configurations now say 32 bit. Yay!&lt;\/p&gt;\n\" data-medium-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?fit=300%2C174&amp;ssl=1\" data-large-file=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?fit=897%2C521&amp;ssl=1\" class=\"wp-image-1668 size-full\" src=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?resize=897%2C521\" alt=\"Run configurations now say 32 bit. Yay!\" width=\"897\" height=\"521\" srcset=\"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?w=897&amp;ssl=1 897w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?resize=150%2C87&amp;ssl=1 150w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?resize=300%2C174&amp;ssl=1 300w, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/build_becomes_32_bit.png?resize=676%2C393&amp;ssl=1 676w\" sizes=\"auto, (max-width: 897px) 100vw, 897px\" \/><\/a><figcaption id=\"caption-attachment-1668\" class=\"wp-caption-text\">Run configurations now say 32 bit. Yay!<\/figcaption><\/figure>\n<p>Kudos! Run your project now, and it will work right out of the box!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Developing an openFrameworks app with AppCode is pretty easy. However, if you just open and run the project created by the project generator, you might see the following errors: Why doesn&#8217;t it just work? This is because openFrameworks doesn&#8217;t support 64 bit builds yet on the Mac, due to a dependency on the deprecated QT [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[52],"tags":[547,544,540],"class_list":["post-1665","post","type-post","status-publish","format-standard","hentry","category-code","tag-appcode","tag-jetbrains","tag-openframeworks"],"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pqtyx-qR","jetpack-related-posts":[{"id":1659,"url":"https:\/\/judepereira.com\/blog\/clion-and-openframeworks\/","url_meta":{"origin":1665,"position":0},"title":"CLion 1.1.1 and openFrameworks 0.8.4","author":"Jude Pereira","date":"October 2, 2015","format":false,"excerpt":"A basic template to start building oF projects using CMake within CLion. It's here on GitHub! All credits go to kureta for the CMake files. I've just pieced it together as a project which can be imported.","rel":"","context":"In &quot;another snippet | code&quot;","block_context":{"text":"another snippet | code","link":"https:\/\/judepereira.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1635,"url":"https:\/\/judepereira.com\/blog\/discover-my-second-ios-app\/","url_meta":{"origin":1665,"position":1},"title":"Discover &#8211; my second iOS app","author":"Jude Pereira","date":"July 5, 2015","format":false,"excerpt":"iTunes Genius is a great feature. However, it lacks music discovery outside your own music library. Sure, you can always do a Google search for similar tunes, but let's face it - who has time to do this anymore? There weren't any great music discovery apps on the App Store\u2026","rel":"","context":"In &quot;ios&quot;","block_context":{"text":"ios","link":"https:\/\/judepereira.com\/blog\/category\/code\/ios\/"},"img":{"alt_text":"Highlights of Discover","src":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/feature-both-small.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/feature-both-small.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/feature-both-small.png?resize=525%2C300 1.5x, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/feature-both-small.png?resize=700%2C400 2x"},"classes":[]},{"id":903,"url":"https:\/\/judepereira.com\/blog\/usrlocalbinwaitpid\/","url_meta":{"origin":1665,"position":2},"title":"\/usr\/local\/bin\/waitpid","author":"Jude Pereira","date":"April 26, 2011","format":false,"excerpt":"A quick script to wait for a certain pid, then once that quits, execute a command. You may ask, why not just do command1 && command2 ? Well, if command1 exits with a non-zero exit status value, command2 will not get executed. Hence, I've brewed a quick script for this\u2026","rel":"","context":"In &quot;another snippet | code&quot;","block_context":{"text":"another snippet | code","link":"https:\/\/judepereira.com\/blog\/category\/code\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1685,"url":"https:\/\/judepereira.com\/blog\/compile-less-on-the-fly-for-your-exploded-war-in-intellij\/","url_meta":{"origin":1665,"position":3},"title":"Compile LESS on the fly for your exploded WAR in IntelliJ","author":"Jude Pereira","date":"February 5, 2016","format":false,"excerpt":"At CleverTap, we've recently started using LESS for dynamic CSS. While it has it's upsides, the biggest downside\u00a0was that most of our developers couldn't use the hot deploy feature for their local deployments. After an hour or so, we came up with a neat solution. \u00a0 There are two parts\u2026","rel":"","context":"In &quot;another snippet | code&quot;","block_context":{"text":"another snippet | code","link":"https:\/\/judepereira.com\/blog\/category\/code\/"},"img":{"alt_text":"External Tool configuration for compiling LESS files before deployment","src":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/Screen-Shot-2016-02-05-at-01.32.45-1024x494.png?resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/Screen-Shot-2016-02-05-at-01.32.45-1024x494.png?resize=350%2C200 1x, https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/Screen-Shot-2016-02-05-at-01.32.45-1024x494.png?resize=525%2C300 1.5x"},"classes":[]},{"id":1734,"url":"https:\/\/judepereira.com\/blog\/why-matchbox-and-how-it-connects-people-through-music\/","url_meta":{"origin":1665,"position":4},"title":"Why Matchbox, and how it connects people through music","author":"Jude Pereira","date":"January 21, 2017","format":false,"excerpt":"There's no doubt that music defines us. It influences our moods, for example, making us happy by releasing a chemical named dopamine. It can affect what we wear, what we eat, and perhaps even who we enjoy being together with. It affects\u00a0our thought process too (it's well known that ambient\u2026","rel":"","context":"In &quot;android&quot;","block_context":{"text":"android","link":"https:\/\/judepereira.com\/blog\/category\/code\/android\/"},"img":{"alt_text":"Matchbox showing the top 10 artists","src":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/IMG_7195-300x210.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]},{"id":1778,"url":"https:\/\/judepereira.com\/blog\/letstuneup-a-music-chart-with-arjit-singh-in-the-lead\/","url_meta":{"origin":1665,"position":5},"title":"LetsTuneup: A music chart with Arjit Singh in the lead","author":"Jude Pereira","date":"April 28, 2017","format":false,"excerpt":"LetsTuneup has grown tremendously, and with it, we've introduced new features too. We identified that a few of our users couldn't use the app to it's full extent because they didn't have music on their devices. We've solved that. Users can now pick their favourite artists, powered by a location\u2026","rel":"","context":"In &quot;android&quot;","block_context":{"text":"android","link":"https:\/\/judepereira.com\/blog\/category\/code\/android\/"},"img":{"alt_text":"Arjit Singh in the lead, with Eminem, Linking Park, Coldplay and Pink Floyd following close","src":"https:\/\/i0.wp.com\/judepereira.com\/blog\/wp-content\/uploads\/artists.png?resize=350%2C200&ssl=1","width":350,"height":200},"classes":[]}],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/posts\/1665","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/comments?post=1665"}],"version-history":[{"count":3,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/posts\/1665\/revisions"}],"predecessor-version":[{"id":1671,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/posts\/1665\/revisions\/1671"}],"wp:attachment":[{"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/media?parent=1665"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/categories?post=1665"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/judepereira.com\/blog\/wp-json\/wp\/v2\/tags?post=1665"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}