<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://cegui.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Morgul</id>
		<title>CEGUI Wiki - Crazy Eddie's GUI System (Open Source) - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="http://cegui.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Morgul"/>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/Special:Contributions/Morgul"/>
		<updated>2026-06-10T19:42:13Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.24.1</generator>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4731</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4731"/>
				<updated>2012-01-07T20:10:52Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: Fixed incorrect patch&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.6/site-packages/* /usr/local/lib/python2.6/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.7/site-packages/* /usr/local/lib/python2.7/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages &lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
&lt;br /&gt;
'''ptrdiff_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- acinclude.m4	2011-02-18 14:31:36.736126680 -0600&lt;br /&gt;
+++ src/CEGUI-0.7.5/acinclude.m4	2011-02-18 14:47:26.379459922 -0600&lt;br /&gt;
@@ -1394,7 +1394,7 @@&lt;br /&gt;
 AC_DEFUN([AX_PYTHON],&lt;br /&gt;
 [AC_MSG_CHECKING(for python build information)&lt;br /&gt;
 AC_MSG_RESULT([])&lt;br /&gt;
-for python in python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python; do&lt;br /&gt;
+for python in python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2 python; do&lt;br /&gt;
 AC_CHECK_PROGS(PYTHON_BIN, [$python])&lt;br /&gt;
 ax_python_bin=$PYTHON_BIN&lt;br /&gt;
 if test x$ax_python_bin != x; then&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure --disable-external-tinyxml &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
''Note: The tinyXML shipping with Ubuntu 11.10 is too new, and doesn't compile, hence we disable it.''&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4730</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4730"/>
				<updated>2012-01-07T20:09:37Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: /* Ubuntu 11.10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.6/site-packages/* /usr/local/lib/python2.6/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.7/site-packages/* /usr/local/lib/python2.7/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages &lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
&lt;br /&gt;
'''ptrdiff_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure --disable-external-tinyxml &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
''Note: The tinyXML shipping with Ubuntu 11.10 is too new, and doesn't compile, hence we disable it.''&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4729</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4729"/>
				<updated>2012-01-07T02:24:57Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: Changes the dist-packages hack to be safer, in case the user has files installed in site-packages. Then, just to be even more paranoid, we still only use rmdir, in case the mv failed.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.6/site-packages/* /usr/local/lib/python2.6/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place.&lt;br /&gt;
First, we move the contents of site-packages to dist-packages.&lt;br /&gt;
 sudo mv /usr/local/lib/python2.7/site-packages/* /usr/local/lib/python2.7/dist-packages/&lt;br /&gt;
Now, we remove site-packages, and symlink it to dist-packages&lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages &lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
&lt;br /&gt;
'''ptrdif_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure --disable-external-tinyxml &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
''Note: The tinyXML shipping with Ubuntu 11.10 is too new, and doesn't compile, hence we disable it.''&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Talk:Build_PyCEGUI_from_source_for_Linux&amp;diff=4728</id>
		<title>Talk:Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Talk:Build_PyCEGUI_from_source_for_Linux&amp;diff=4728"/>
				<updated>2012-01-07T02:10:34Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Thoughts ==&lt;br /&gt;
A good topic, one close to my heart.&lt;br /&gt;
&lt;br /&gt;
I am curious, though; in this snippet:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* If 'site-packages' is not empty, that command will fail; an 'rm -r' would be necessary, but in that case it means the directory might have valuable contents.&lt;br /&gt;
* Which leads to my next question: is deleting that directory a good idea? Could it cause future problems with some other arbitrary piece of software?&lt;br /&gt;
- [[User:Crond|Crond]] 11:30, 10 July 2011 (UTC)&lt;br /&gt;
&lt;br /&gt;
There should be a note about this, I agree. See, here's the problem: Ubuntu installs python in a non-standard location; dist-packages. Ubuntu's python doesn't add site-packages to the python path. This hack, provided there's no valuable contents in site-packages, is perfectly safe. (I've run into the problem, and used this solution, in a lot of installs. It even works across upgrades.)&lt;br /&gt;
&lt;br /&gt;
Basically, the crux of all of this is that contents of site-packages needs to be copied over to dist-packages first, and then those steps can be performed. I'll make a note on the page.&lt;br /&gt;
&lt;br /&gt;
- [[User:Morgul|Morgul]] 02:10, 06 Jan 2012 (UTC)&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4727</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4727"/>
				<updated>2012-01-06T19:56:34Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: /* Ubuntu 11.10 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
&lt;br /&gt;
'''ptrdif_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure --disable-external-tinyxml &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
''Note: The tinyXML shipping with Ubuntu 11.10 is too new, and doesn't compile, hence we disable it.''&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4726</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4726"/>
				<updated>2012-01-06T18:37:51Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: Fixed formatting.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
&lt;br /&gt;
'''ptrdif_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4725</id>
		<title>Build PyCEGUI from source for Linux</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Build_PyCEGUI_from_source_for_Linux&amp;diff=4725"/>
				<updated>2012-01-06T18:36:47Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: Updated instructions for ubuntu 11.10, including required patches, and python 2.7 support.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{VersionBadge|0.7}} {{VersionAtLeast|0.7.4}}&lt;br /&gt;
= Ubuntu Flavors =&lt;br /&gt;
Version shipped in repositories is 0.6.0 (as of 7th July 2011) so if we want 0.7.x we need to build it from source.&lt;br /&gt;
&lt;br /&gt;
== Ubuntu 11.04 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libglut3-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.6/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.6/dist-packages/ /usr/local/lib/python2.6/site-packages&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
* ''Note: On some Ubuntu systems it seems that CEGUI's configure system does not correctly detect the Python headers. To solve this, do the following:''&lt;br /&gt;
 export CXXFLAGS=-I/usr/include/python2.7&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
== Ubuntu 11.10 ==&lt;br /&gt;
* Install dependency packages: &amp;lt;code&amp;gt;sudo apt-get install build-essential pkg-config python-dev libfreetype6-dev libpcre3-dev libboost-python-dev libpng-dev libmng-dev libjpeg-dev libfreeimage-dev libtool autoconf&amp;lt;/code&amp;gt;&lt;br /&gt;
* Obtain a copy of CEGUI [http://prdownloads.sourceforge.net/crayzedsgui/CEGUI-0.7.5.tar.gz?download here]&lt;br /&gt;
* Extract to a folder&lt;br /&gt;
* Before we build, we have to symlink the site-packages directory correctly, so it installs to the correct place. &lt;br /&gt;
 sudo rmdir /usr/local/lib/python2.7/site-packages&lt;br /&gt;
 sudo ln -s /usr/local/lib/python2.7/dist-packages/ /usr/local/lib/python2.7/site-packages&lt;br /&gt;
&lt;br /&gt;
* Patch CEGUI:&lt;br /&gt;
There are two patched required to make CEGUI 0.7.5 compile correctly with python support, on 11.10. They are:&lt;br /&gt;
'''ptrdif_t.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''python27.patch'''&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
--- cegui/include/CEGUIString.h 2011-05-11 13:36:22.091872287 -0500&lt;br /&gt;
+++ cegui/include/CEGUIString.h.new     2011-05-11 13:38:04.387704592 -0500&lt;br /&gt;
@@ -34,6 +34,7 @@&lt;br /&gt;
 #include &amp;lt;string&amp;gt;&lt;br /&gt;
 #include &amp;lt;string.h&amp;gt;&lt;br /&gt;
 #include &amp;lt;stdexcept&amp;gt;&lt;br /&gt;
+#include &amp;lt;cstddef&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 // Start of CEGUI namespace section&lt;br /&gt;
 namespace CEGUI&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy the contents of the code blocks above, and paste them into files of the correct name (ptrdiff_t.patch and python27.patch respectively). Then apply the patched like so:&lt;br /&gt;
 $ patch -p0 &amp;lt; ptrdiff_t.patch&lt;br /&gt;
 $ patch -p0 &amp;lt; python27.patch&lt;br /&gt;
* Regenerate configure:&lt;br /&gt;
 $ ./bootstrap&lt;br /&gt;
* Build CEGUI with python support&lt;br /&gt;
 ./configure &amp;amp;&amp;amp; make &amp;amp;&amp;amp; sudo make install &amp;amp;&amp;amp; sudo ldconfig&lt;br /&gt;
&lt;br /&gt;
= Still not working? =&lt;br /&gt;
You can try running your program with:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; python &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note for Panda3D users'''&lt;br /&gt;
You can run your program at the same way, using:&lt;br /&gt;
 PYTHONPATH=&amp;quot;/usr/local/lib/python2.6/site-packages:$PYTHONPATH&amp;quot; ppython &amp;lt;file.py&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:HowTo]]&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=Obtaining_the_library_source_from_Subversion&amp;diff=2110</id>
		<title>Obtaining the library source from Subversion</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=Obtaining_the_library_source_from_Subversion&amp;diff=2110"/>
				<updated>2006-05-17T22:13:23Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: Updated for latest SVN changes&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;All the code for CrazyEddie's GUI System (and the layout editor) is kept in a revision control system known as [[Subversion]](SVN).  This is a tool that allows us to easily track changes to the code (who did what, and when), to maintain multiple different versions (branches) for the code, and, where necessary, undo, revert, or merge code changes.&lt;br /&gt;
&lt;br /&gt;
Generally speaking, each stable release series has a seperate branch, and any changes made on those branches are largely bug-fixes and non-breaking (where possible) changes.  The main 'trunk' code is where the latest and greatest code can be found, although this version of the code is generally to be considered as unstable / testing code.  On the whole, we maintain two branches at once; whichever is the latest 'stable' branch, and the main trunk code.  When a new release is made, previous release branches are generally considered obsolete (this will continue at least until we reach version 1.0.0 - at this stage we may consider maintaining support for multiple released versions).&lt;br /&gt;
&lt;br /&gt;
It is possible to browse the SVN repository online by visiting http://svn.sourceforge.net/viewcvs.cgi/crayzedsgui/cegui_mk2/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= Getting the Code =&lt;br /&gt;
To obtain the code you use the Subversion client command 'svn', and the command is to get the trunk code is simply:&lt;br /&gt;
&lt;br /&gt;
 svn co &amp;lt;nowiki&amp;gt;https://svn.sourceforge.net/svnroot/crayzedsgui/cegui_mk2/trunk&amp;lt;/nowiki&amp;gt; cegui_mk2-trunk&lt;br /&gt;
&lt;br /&gt;
This will 'checkout' the code from SVN, and place it in the directory 'cegui_mk2-trunk'&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to obtain the latest code in from one of the stable branches, then the command you should issue is:&lt;br /&gt;
&lt;br /&gt;
 svn co &amp;lt;nowiki&amp;gt;https://svn.sourceforge.net/svnroot/crayzedsgui/cegui_mk2/branches/v0-4&amp;lt;/nowiki&amp;gt; cegui_mk2-0-4&lt;br /&gt;
&lt;br /&gt;
This will get you the latest code from the stable 'v0-4' branch (release series 0.4.x), and place it in the directory 'cegui_mk2-0-4'&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
With the [http://tortoisesvn.tigris.org/ Tortoise SVN Client], right-click within a directory and select &amp;quot;SVN Checkout...&amp;quot; from the popup menu.  Specify the &amp;quot;URL of repository&amp;quot; as:  &amp;lt;pre&amp;gt;https://svn.sourceforge.net/svnroot/crayzedsgui/cegui_mk2/trunk&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Compiling =&lt;br /&gt;
Now that you have the code, you probably want to compile it ;)&lt;br /&gt;
&lt;br /&gt;
The first thing to do is to run bootstrap, which will run automake, autoconf, and various other tools to initialise the build environment and create the main configure script.&lt;br /&gt;
&lt;br /&gt;
 ./bootstrap&lt;br /&gt;
&lt;br /&gt;
Now you should be on familiar territorty.  To configure the build, run configure:&lt;br /&gt;
&lt;br /&gt;
 ./configure&lt;br /&gt;
&lt;br /&gt;
There are various things you can change about the way the system is built, to get information about these options, pass the --help option to configure like so:&lt;br /&gt;
&lt;br /&gt;
 ./configure --help&lt;br /&gt;
&lt;br /&gt;
Once configure has run successfully, you need to run make as usual:&lt;br /&gt;
&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
And finall, install as root:&lt;br /&gt;
&lt;br /&gt;
 su  &amp;lt;and enter password ;) &amp;gt;&lt;br /&gt;
 make install&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[User:CrazyEddie|CrazyEddie]] 11:13, 3 April 2006 (PDT)&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	<entry>
		<id>http://cegui.org/wiki/index.php?title=FAQ&amp;diff=217</id>
		<title>FAQ</title>
		<link rel="alternate" type="text/html" href="http://cegui.org/wiki/index.php?title=FAQ&amp;diff=217"/>
				<updated>2005-09-09T21:25:06Z</updated>
		
		<summary type="html">&lt;p&gt;Morgul: /* Build Questions */ - Cleaned up the bulk of the instructions.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== General Questions ==&lt;br /&gt;
=== What is CEGUI? ===&lt;br /&gt;
CEGUI is ''Crazy Eddie's Gui System''; a cross platform Gui/widget library for use in games and other multi-media projects where use of standard operating system Gui libraries is either not possible, or is very difficult.&lt;br /&gt;
&lt;br /&gt;
=== How is CEGUI licensed? ===&lt;br /&gt;
CEGUI is licensed under the LGPL (Lesser/Library General Public License). For details of this license, please visit the following web-site: http://www.gnu.org/copyleft/lesser.html.&lt;br /&gt;
&lt;br /&gt;
=== How much does CEGUI cost? ===&lt;br /&gt;
Nothing. The use of CEGUI is totally free within the bounds of the LGPL license as described above.&lt;br /&gt;
&lt;br /&gt;
=== I am developing a commercial, closed-source product. Since CEGUI is licensed under LGPL, this means that can't I use the library, right? ===&lt;br /&gt;
No, that's not right. So long as you link dynamically to CEGUI and associated libraries, then you do not have to release any of your own source or .o/.obj files, though do carefully check the LGPL, and the licenses for the third party libraries for full details of what is and is not permissible.&lt;br /&gt;
&lt;br /&gt;
=== I am not happy with the LGPL license, do you offer alternative licensing? ===&lt;br /&gt;
No. Alternative licensing is not available, nor is it planned.&lt;br /&gt;
&lt;br /&gt;
=== Does CEGUI rely upon any third party libraries? If so what are they? ===&lt;br /&gt;
CEGUI currently depends upon the following external libraries:&lt;br /&gt;
&lt;br /&gt;
    * FreeType2&lt;br /&gt;
    * Xerces-C++ (optional, built-in TinyXML parser is provided)&lt;br /&gt;
&lt;br /&gt;
You will also require a supported rendering system, and some form of input library.&lt;br /&gt;
=== Where can I get these third party libraries? ===&lt;br /&gt;
&lt;br /&gt;
    * FreeType2: http://www.freetype.org/&lt;br /&gt;
    * Xerces-C++: http://xml.apache.org/xerces-c/&lt;br /&gt;
&lt;br /&gt;
=== Do I have to compile the third part libraries myself? ===&lt;br /&gt;
It depends. Under Linux and similar systems, you will need to perform your own compilation. For Microsoft® Windows® users, we have supplied packages containing binary versions of the libraries for a selection of popular compiler configurations.&lt;br /&gt;
&lt;br /&gt;
=== You mentioned something about &amp;quot;supported rendering systems&amp;quot;, what's that all about and which systems are supported? ===&lt;br /&gt;
CEGUI can be used with various rendering systems. There are currently CEGUI renderer modules for Microsoft® DirectX® 8.1 and 9, OpenGL, the Ogre engine, and the Irrlicht engine.&lt;br /&gt;
&lt;br /&gt;
=== There is no renderer module for my rendering engine or API of choice, will other rendering system be supported? ===&lt;br /&gt;
It is likely that, over time, CEGUI will add support for other APIs and engines. Having said this, it is fairly simple to write your own renderer module for CEGUI, so you might consider taking that option if you do not want to wait.&lt;br /&gt;
&lt;br /&gt;
=== And what about input libraries? ===&lt;br /&gt;
CEGUI requires you to ''inject'' inputs into it, these inputs can come from any source that you choose. All you need to do is pass mouse movements, mouse button up and down events, and keyboard inputs to CEGUI.&lt;br /&gt;
&lt;br /&gt;
=== Why doesn't CEGUI collect its own inputs? Why do I need to inject the inputs myself? ===&lt;br /&gt;
CEGUI does not collect its own input so that the system can remain as flexible as possible. We didn't want to tie people down to one system or input library.&lt;br /&gt;
&lt;br /&gt;
=== I have seen mention of a Lua scripting module, how can I get this? ===&lt;br /&gt;
'''TODO'''&lt;br /&gt;
&lt;br /&gt;
=== I can't find many of the things you talk about in my crayzedsgui code, what's wrong? ===&lt;br /&gt;
You probably have one of the older Mk-1 alpha releases. Get the newer Mk-2 releases instead, the archive files for these generally have names with cegui_mk2 in them.&lt;br /&gt;
&lt;br /&gt;
=== Why are there two versions of the system? ===&lt;br /&gt;
The Mk-1 version was a Windows®/DirectX® only library and was really a dry run for what became the Mk-2 system. There was only ever 'alpha' versions of the Mk-1 code, so it was never anywhere near finished.&lt;br /&gt;
&lt;br /&gt;
=== Are the Mk-1 and Mk-2 systems interface compatible? ===&lt;br /&gt;
No. The interfaces of the two systems are totally different, although many of the general concepts have remained the same.&lt;br /&gt;
&lt;br /&gt;
=== The Mk-1 system is so much more lightweight than the Mk-2 system. Can I still use the Mk-1 code? Is the Mk-1 code still being developed and supported? ===&lt;br /&gt;
Short Answer: Not really.&lt;br /&gt;
&lt;br /&gt;
Long Answer: There were too many weak areas within the Mk-1 system and development on this version has ceased completely. There is no longer any support for the Mk-1 version; in general it would be better for everyone if they migrated to the Mk-2 version of the system.&lt;br /&gt;
&lt;br /&gt;
=== I am having major troubles integrating CEGUI with my project, will you do it for me? ===&lt;br /&gt;
No. The CEGUI developers have enough to do without writing users projects for them.&lt;br /&gt;
&lt;br /&gt;
=== I have (or think I have) found a bug. How should I proceed? ===&lt;br /&gt;
If you are certain that it's a bug and not, for example, a misunderstanding of what is happening, then the bug should be reported via the project bug tracking system. However, before submitting a bug to the tracker, it is asked that you first do a quick search to see if the bug has already been reported. If you are unsure whether something is a bug or not, then it may be discussed on the web site forums prior to submitting a bug report to the project bug tracker.&lt;br /&gt;
&lt;br /&gt;
=== I notice that feature/widget 'X' is missing. Will this be added to CEGUI? ===&lt;br /&gt;
Requests for new features and/or widgets are welcomed. You can discuss such things on the web site forums and then submit a feature request to the project feature request tracking system. Although it is asked that you first search to ensure that the feature has not already been requested; if the feature has already been requested feel free to add a note to the tracker item stating your support for the feature request. Note that no promises are made with regards to which features will and will not be added, or how long such things will take, but all requests will be seriously considered.&lt;br /&gt;
&lt;br /&gt;
=== How can I get involved with CEGUI development? ===&lt;br /&gt;
The best way to become involved is to visit the web site forums, state what your intentions are (to help in avoiding duplicated effort), and then start submitting some patches to the project patch tracking system.&lt;br /&gt;
&lt;br /&gt;
=== Is there managed code / Microsoft .Net support for the CEGUI library? ===&lt;br /&gt;
Yes, there is ''ceguisharp'' at http://realmforgewiki.castlegobs.nl/index.php/CEGUI This is a C# port of the library which uses the excellent Axiom rendering engine.&lt;br /&gt;
&lt;br /&gt;
=== This FAQ doesn't answer my question, what should I do now? ===&lt;br /&gt;
Feel free to post your question on the web site forums, somebody will gladly answer your question and/or offer further advice.&lt;br /&gt;
&lt;br /&gt;
== Build Questions ==&lt;br /&gt;
&lt;br /&gt;
(A work in Progress)&lt;br /&gt;
&lt;br /&gt;
=== Building CEGUI ===&lt;br /&gt;
# General Requirements&lt;br /&gt;
# Dependency installs&lt;br /&gt;
&lt;br /&gt;
=== Building from CVS ===&lt;br /&gt;
''(The following instructions are for unix systems)''&lt;br /&gt;
&lt;br /&gt;
==== Configuring CEGUI ====&lt;br /&gt;
First, we need to generate the configure script, as well as a few other files.&lt;br /&gt;
In the cegui_mk2 directory, run:&lt;br /&gt;
    $ sh ./bootstrap&lt;br /&gt;
Now, it's time to actually run configure:&lt;br /&gt;
    $ ./configure&lt;br /&gt;
&lt;br /&gt;
==== Building CEGUI ====&lt;br /&gt;
With all this one, we can now build CEGUI.&lt;br /&gt;
Type:&lt;br /&gt;
    $ make&lt;br /&gt;
Once that's finished, we can install it!&lt;br /&gt;
Type:&lt;br /&gt;
    $ make install&lt;br /&gt;
&lt;br /&gt;
Tada!&lt;br /&gt;
&lt;br /&gt;
=== CEGUI Layout Editor Build ===&lt;br /&gt;
# Dependency installs (for versions &amp;gt; 0.4.0)&lt;br /&gt;
Install wxWidgets&lt;br /&gt;
# Building&lt;br /&gt;
&lt;br /&gt;
== Usage Questions ==&lt;br /&gt;
=== What is the correct way to subscribe for an event? ===&lt;br /&gt;
Event notification is a vital aspect of GUI programming. CEGUI handles those using subscribers.&lt;br /&gt;
In order to subscribe a window for an event, you have to call the method 'Window::subscribeEvent', passing the function&lt;br /&gt;
to be called when the specified event occurs, and the instance on which the method is called.&lt;br /&gt;
&lt;br /&gt;
 class MyButtonHandler&lt;br /&gt;
 {&lt;br /&gt;
 private:&lt;br /&gt;
     PushButton* mButton;&lt;br /&gt;
 &lt;br /&gt;
 public:&lt;br /&gt;
     MyButtonHandler::MyButtonHandler(PushButton* btn) : mButton(btn)&lt;br /&gt;
     {&lt;br /&gt;
         btn-&amp;gt;subscribeEvent(PushButton::EventClicked, Event::Subscriber(MyButtonHandler::ButtonClicked,this));&lt;br /&gt;
     }&lt;br /&gt;
     &lt;br /&gt;
     MyButtonHandler::ButtonClicked()&lt;br /&gt;
     {&lt;br /&gt;
         //This function gets called when the button is clicked&lt;br /&gt;
         std::cout &amp;lt;&amp;lt; &amp;quot;Button clicked&amp;quot; &amp;lt;&amp;lt; std::endl;&lt;br /&gt;
     }&lt;br /&gt;
&lt;br /&gt;
The 'subscribeEvent' method returns an Event::Connection, which can be used later to unsubscribe for a registered event with&lt;br /&gt;
the 'disconnect' method.&lt;br /&gt;
&lt;br /&gt;
 Event::Connection myCon = btn-&amp;gt;subscribeEvent(...);&lt;br /&gt;
 &lt;br /&gt;
 ...&lt;br /&gt;
 &lt;br /&gt;
 myCon-&amp;gt;disconnect();&lt;br /&gt;
&lt;br /&gt;
In order to totally remove the event itself, you have to call the 'removeEvent' function:&lt;br /&gt;
all the connections to the specified event will be disconnected. &lt;br /&gt;
There's also an Event::ScopedConnection, which can be used to auto-unsubscribe when the event goes out of scope.&lt;br /&gt;
&lt;br /&gt;
Similar way for the scripted events, which can be subscribed with the 'subscribeScriptedEvent' method.&lt;br /&gt;
In addition, you can do it in XML, using this syntax:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;Event Name=&amp;quot;Clicked&amp;quot; Function=&amp;quot;luabtn_clicked&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== How can I make the ListBox highlight the selected item? ===&lt;br /&gt;
In order to highlight selected items you need to set selection brush image and the selection colours of that item. The selection image is modulated by the colours you set. Note, that the alpha component needs to be smaller than 1.0, for the content of the selected item to be seen.&lt;br /&gt;
 // set selection highlight to a half transparent blue to red gradient.&lt;br /&gt;
 colour blue(0.0, 0.0, 1.0, 0.5);&lt;br /&gt;
 colour red(1.0, 0.0, 0.0, 0.5);&lt;br /&gt;
 myListBoxItem-&amp;gt;setSelectionColours(blue, blue, red, red);&lt;br /&gt;
 // this default image is a simple white rectangle&lt;br /&gt;
 myListBoxItem-&amp;gt;setSelectionBrushImage(&amp;quot;TaharezLook&amp;quot;, &amp;quot;ListboxSelectionBrush&amp;quot;);&lt;br /&gt;
&lt;br /&gt;
=== How can I remove the border of a StaticImage? ===&lt;br /&gt;
Either put the following property into the window definition:&lt;br /&gt;
 &amp;lt;Property Name=&amp;quot;FrameEnabled&amp;quot; Value=&amp;quot;false&amp;quot; /&amp;gt;&lt;br /&gt;
Or set it by code:&lt;br /&gt;
 myStaticImage-&amp;gt;setFrameEnabled(false);&lt;br /&gt;
&lt;br /&gt;
=== How can I set the background of a StaticImage? ===&lt;br /&gt;
The first thing you need in order to do this is an Imageset that defines the Image that you wish to use. When wanting to use an image file for this as you suggest, you basically have an imageset defined like this:&lt;br /&gt;
 &amp;lt;?xml version=&amp;quot;1.0&amp;quot; ?&amp;gt;&lt;br /&gt;
 &amp;lt;Imageset Name=&amp;quot;BackdropImageset&amp;quot; Imagefile=&amp;quot;backdrop.tga&amp;quot; NativeHorzRes=&amp;quot;1024&amp;quot; NativeVertRes=&amp;quot;768&amp;quot; AutoScaled=&amp;quot;true&amp;quot;&amp;gt;&lt;br /&gt;
 	&amp;lt;Image Name=&amp;quot;Backdrop&amp;quot; XPos=&amp;quot;0&amp;quot; YPos=&amp;quot;0&amp;quot; Width=&amp;quot;1024&amp;quot; Height=&amp;quot;768&amp;quot; /&amp;gt;&lt;br /&gt;
 &amp;lt;/Imageset&amp;gt;&lt;br /&gt;
&lt;br /&gt;
What this does is define an Imageset using the backdrop.tga. A single image &amp;quot;Backdrop&amp;quot; is defined that starts at location (0,0) and is 1024 x 768 in size. You should be careful in that the source image file should have dimensions that are powers of two - this is because the image is loaded as a texture, and may be stretched if the powers-of-two requirement is not observed.&amp;lt;br&amp;gt;&lt;br /&gt;
Once you have your imageset defined, you can load it either by adding a reference to it in whichever scheme you are loading, or manually using the ImagesetManager:&lt;br /&gt;
 CEGUI::ImagesetManager::getSingleton().createImageset(&amp;quot;myImageset.imagset&amp;quot;);&lt;br /&gt;
Once the thing is loaded, you set the image into the StaticImage like so:&lt;br /&gt;
 myStaticImage-&amp;gt;setImage(&amp;quot;BackdropImageset&amp;quot;, &amp;quot;Backdrop&amp;quot;);&lt;br /&gt;
Notice that the names we specify here are the ones that were originally specified in the imageset XML file.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== What properties are available for use in XML layouts, and what format do I use for the value strings? ===&lt;br /&gt;
Each widget has its properties placed within an appropriately named C++ namespace, so all you need to do is look up the appropriate namespace within the [http://www.cegui.org.uk/api_reference/namespaces.html namespaces section of the API reference].&lt;br /&gt;
&lt;br /&gt;
Also, remember that properties are inherited.  So for example, when looking up properties for a PushButton, also check the properties for ButtonBase and Window too - since these properties are also available to you.&lt;br /&gt;
&lt;br /&gt;
=== I can't see the items I've added to my Combobox, how do I get the list to show when I press the button? ===&lt;br /&gt;
&lt;br /&gt;
The height you specify for the combobox widget includes the height of the drop down list; it's not just for the 'Editbox' portion of the widget (the height of which  is usually automatically determined based upon the font).  Ensure that when specifying the height for your combobox, you have provided sufficient space for the list to appear.&lt;/div&gt;</summary>
		<author><name>Morgul</name></author>	</entry>

	</feed>