{"id":1054,"date":"2008-09-21T16:27:07","date_gmt":"2008-09-21T21:27:07","guid":{"rendered":"http:\/\/www.bytebot.net\/blog\/?p=1054"},"modified":"2008-09-22T07:22:40","modified_gmt":"2008-09-22T12:22:40","slug":"workbench-511-alpha-on-fedora-9","status":"publish","type":"post","link":"https:\/\/www.bytebot.net\/blog\/archives\/2008\/09\/21\/workbench-511-alpha-on-fedora-9","title":{"rendered":"workbench-5.1.1-alpha on Fedora 9"},"content":{"rendered":"<p>So, you want to compile Workbench for Linux, on Fedora 9. You need to install the following packages:<\/p>\n<blockquote><p>\n<tt><br \/>\nautoconf automake libtool libzip-devel libxml2-devel libsigc++20-devel libglade2-devel gtkmm24-devel mesa-libGLU-devel mysql-libs mysql mysql-devel uuid-devel lua-devel glitz-devel glitz-glx-devel pixman-devel pcre-devel libgnome-devel gtk+-devel pango-devel cairo<br \/>\n<\/tt>\n<\/p><\/blockquote>\n<p>I feel I&#8217;m being too liberal with dependencies, but I&#8217;m not about to strip it, I just want to get it working first :)<\/p>\n<p>You need to have <tt>ctemplate<\/tt> and <tt>ctemplate-devel<\/tt> installed from <tt>updates-testing-newkey<\/tt> (<a href=\"http:\/\/koji.fedoraproject.org\/koji\/buildinfo?buildID=61910\">relevant koji build log<\/a>).<\/p>\n<p>By default, configure.in in Workbench looks for &#8220;google-ctemplate&#8221;, as opposed to just &#8220;ctemplate&#8221; as Fedora calls it. You can fix this (easy), or &#8220;cheat&#8221; &#8211; in \/usr\/local\/include you can do sudo ln -s \/usr\/include\/ctemplate google. Take your pick.<\/p>\n<p>Now for the fun. Fedora includes gcc-4.3. Ubuntu ships gcc-4.2. Let&#8217;s just say gcc-4.3 got stricter (its C++ <a href=\"http:\/\/gcc.gnu.org\/onlinedocs\/libstdc++\/manual\/api.html#api.rel_430\">header dependency streamlining<\/a> related). So strict, they have a useful <a href=\"http:\/\/gcc.gnu.org\/gcc-4.3\/porting_to.html\">porting to gcc-4.3<\/a> guide. Just FYI, I believe OpenSUSE is also shipping a more modern GCC (I expect the next Ubuntu release in the coming month to do the same).<\/p>\n<p>So, start getting used to doing the following in files that lead the compiler to fail:<\/p>\n<ul>\n<li>#include &lt;cstring&gt;<\/li>\n<li>#include &lt;algorithm&gt;<\/li>\n<li>#include &lt;memory&gt;<\/li>\n<li>#include &lt;climits&gt;<\/li>\n<li>#include &lt;cstdlib&gt;<\/li>\n<\/ul>\n<p>This will help get rid of error messages like: <tt>error: 'memset' was not declared in this scope<\/tt>. This stuff is already fixed in trunk (or the patch is being applied).<\/p>\n<p>You will need to pick up <tt>cairo<\/tt> from source. Why? Because <tt>--enable-glitz<\/tt> isn&#8217;t on by default in the RPM spec file (similar with Ubuntu). The glitz backend is apparently still a release preview and doesn&#8217;t fully work yet. (I have spoken to Alfredo, and he says he&#8217;s just removed the requirement on glitz in trunk).<\/p>\n<p>Now, once you&#8217;ve built cairo with glitz, before running .\/autogen.sh, do: <tt>export PKGCONFIG_PATH=\/usr\/local\/lib\/pkgconfig<\/tt>. Then go ahead and make it.<\/p>\n<p>There are still plenty of warnings that spew by. I have this vague idea that once Workbench for Linux sits on Launchpad, we&#8217;ll run a janitorial tree that fixes warnings in the code. A great way to garner community contributions!<\/p>\n<p>Anyway, a lot of this is either fixed or patches will be applied to trunk. I expect a mysql-workbench-5.1.2-alpha out sooner than you think to eclipse 5.1.1-alpha. Again, superb work Alfredo (and MikeZ and the rest of the GUI team).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>So, you want to compile Workbench for Linux, on Fedora 9. You need to install the following packages: autoconf automake libtool libzip-devel libxml2-devel libsigc++20-devel libglade2-devel gtkmm24-devel mesa-libGLU-devel mysql-libs mysql mysql-devel uuid-devel lua-devel glitz-devel glitz-glx-devel pixman-devel pcre-devel libgnome-devel gtk+-devel pango-devel cairo I feel I&#8217;m being too liberal with dependencies, but I&#8217;m not about to strip it, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[23],"tags":[2,518,505,1775,504,503],"class_list":["post-1054","post","type-post","status-publish","format-standard","hentry","category-mysql","tag-fedora","tag-gcc","tag-gui-tools","tag-mysql","tag-mysql-workbench","tag-workbench"],"jetpack_publicize_connections":[],"jetpack_shortlink":"https:\/\/wp.me\/p4vJD-h0","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"amp_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1054","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/comments?post=1054"}],"version-history":[{"count":4,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1054\/revisions"}],"predecessor-version":[{"id":1058,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/posts\/1054\/revisions\/1058"}],"wp:attachment":[{"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/media?parent=1054"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/categories?post=1054"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bytebot.net\/blog\/wp-json\/wp\/v2\/tags?post=1054"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}