Page 1 of 2
[Solved] Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 04:38
by ks13
Hi,
so i built CEGUI on windows following the video. Now i need to do the same on Linux since the project i'm working on needs to be cross-platform. Actually i'm trying to build CEGUI on Fedora since Ubuntu and Debian are not compatible with some vital libraries of the project.
The first problem i encountered is that there are many "building" tutorials on this site, and some are outdated, it's confusing. I began by following the guide from this address
http://static.cegui.org.uk/docs/current/building_deps.html. All was going well, configuration and generation comprised, but when i tried to compile the generated files, i got errors.
The first time i configured cmake, i added tinyxml since i was planning to use those. But then the compiler told me that a file named dftables.exe can't be found when it tried to build dftables.c.o
The second time i removed the tinyxml and left it as default, but then it told me the file platform.h is missing when trying to build input.c.o.
I'm not sure what i'm doing wrong here.
Re: Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 05:43
by Nickenstein79
I've never built CEGUI on Linux, but does your cmake output state that you have defined an xml parser or not?
(I've set mine to explicitly use LibXpat as the xml parsing lib. I'm building on Windows.)
It would be easier to get the specific help you need by posting your cmake log in this thread.
Re: Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 06:08
by ks13
The cmake is not the problem, make is.
Re: Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 08:24
by Kulik
We write everywhere we can that cegui-dependencies is for Windows and MacOS X only. On Fedora you can just "yum install tinyxml-devel" and be done with it.
Re: Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 15:30
by ks13
I'm sorry but i haven't seen that in the part where it explains how to build CEGUI on Linux. The guide that i was following (in the link above) doesn't say that neither. I mostly code on Windows, which is why i have only a basic knowledge on Linux make system. That is why i'm having problems figuring out how to build it on Linux. If there is a step by step, and up to date manual about it, i would be thankful if you could provide it.
Re: Building 8.4 on Linux problems
Posted: Fri Jul 18, 2014 17:12
by thomas
The most up to date information is at the bottom here:
http://cegui.org.uk/wiki/Build_from_source_for_LinuxThe first time i configured cmake, i added tinyxml since i was planning to use those. But then the compiler told me that a file named dftables.exe can't be found when it tried to build dftables.c.o
Is this referring to your Window compile or Linux? I am not sure why linux would ever search for a .exe file, since Linux doesn't use .exe extensions. If it's trying to search for a .exe in Linux, then it sounds like you are trying to do a Windows compile from within Linux (most likely unintentionally).
Are you having trouble building the dependencies for CEGUI, or CEGUI itself?
What distro of Linux are you using? (Not sure if it will help, but wouldn't hurt to know).
If you are using Ubuntu, similar to Kulik's suggestion you can probably use "apt-get install tnyxml-devel" and it may solve the problem of missing tinyxml.
Re: Building 8.4 on Linux problems
Posted: Sat Jul 19, 2014 02:41
by ks13
The compiler asking for an exe under Linux is weird. Even though i'm piratically a beginner with Linux, even i know that Linux doesn't use those natively.
Which is why it baffles me so much.
So as i already explained in my first post in this thread :
- Fedora 20
- CEGUI Dependencies FROM
https://bitbucket.org/cegui/cegui-dependencies - AS EXPLAINED IN
http://static.cegui.org.uk/docs/current/building_deps.htmlAnd it's not only the tinyxml dependency that is the problem...when i remove it, which is the default setting of cmake file when launched, it still outputs an error.
Given that the only problem that i had when compiling CEGUI on windows came from my computer's localisation, i find it weird that there is no clear manual on how to build CEGUI.
Re: Building 8.4 on Linux problems
Posted: Sat Jul 19, 2014 08:38
by Nickenstein79
ks13 wrote:it still outputs an error.
Please elaborate...
Re: Building 8.4 on Linux problems
Posted: Sat Jul 19, 2014 10:18
by Kulik
I use Fedora 20 so it's fairly well supported (wink wink)
Code: Select all
sudo yum install tinyxml-devel freeimage-devel glm-devel freetype-devel
then you can build it I think. As it says in the guide you linked - just use your package system as usual.
I recommend using expat or even rapidxml instead of tinyxml, tinyxml is pretty much the slowest most memory hungry parser we support.
Re: Building 8.4 on Linux problems
Posted: Mon Jul 21, 2014 14:55
by thomas
Remove tinyxml from the build in the cmake, then copy and paste the error here please. Seeing the actual error will help us to figure out what's going on much easier.
Part of the advantage with cmake is that it's meant to transfer across platform and compiler very easy; not necessarily easy from the user's view granted.
Since CEGUI is an open source project, and the documentation is written by a community; the lack of documentation is typical. More often that not, open source projects develop faster than the documentation for them. It's one of the disadvantages of "free" rather than something professionally developed.
Re: Building 8.4 on Linux problems
Posted: Sun Aug 03, 2014 10:06
by ks13
Sorry for the late reply, but since i needed to have at least something resembling an interface for today, i concentrated on the windows part (which still went bad).
As for the Linux part, i must say your guides/manuals are contradicting what they say : one part says that we need to download the dependencies from the links you provide, while others say it's only needed for windows/osx.
I thin you people should assign one person that swill spend almost all his/her time on writing documentation for your project. Currently all of your documentation is outdated and most is obsolete. I had to actually get one of the open source projects that use your system to be able to begin understanding how it works.
In the end i downloaded the vital parts via packet managers. But then CMake couldn't find the packets i installed, at the moment i've stopped trying to solve the Linux related problems because of the deadline, but it seems i will have to add paths manually for every packet that is needed for your project.
Re: Building 8.4 on Linux problems
Posted: Sun Aug 03, 2014 11:04
by Ident
ks13 wrote:As for the Linux part, i must say your guides/manuals are contradicting what they say : one part says that we need to download the dependencies from the links you provide, while others say it's only needed for windows/osx.
This is unfortunately not constructive criticism for us. What would help is if you could point out where these contradictions are - Otherwise, we can obviously not fix it.
We are also glad about any pull request or patches you or anyone else could provide us for any outdated docu you find. The doxygen files are easily editable using text editors.
ks13 wrote:I thin you people should assign one person that swill spend almost all his/her time on writing documentation for your project.
That would indeed be great, but who would do that? There is 2 (in words: two) active developers working on CEGUI right now, both of which are also working and studying next to doing free work on CEGUI. The time spent on CEGUI by us is spent mostly on improving CEED and on developing new features for the 1.0 release, as well as bug-fixing. We try to improve docu where possible but you have do understand that the docu will never be perfect, especially without the help of the community (including yourself)
Since you ask us to assign someone to improve the docu: Would you want to volunteer for this position? It is not easy to find someone who wants to spend time on writing docu. And we developers, like I said, are already overly busy with work on CEGUI.
ks13 wrote:Currently all of your documentation is outdated and most is obsolete.
I know the API docu is not entirely outdated. Again I am not sure what you refer to because no examples are given.
Regarding the Cmake issues you have with Linux: You will have to be more specific which packages are not found. I personally have no experience with this because I only do Window support for CEGUI, but I am sure other CEGUI users or developers might be able to help you if you give more info.
Re: Building 8.4 on Linux problems
Posted: Sun Aug 03, 2014 14:11
by markymark
Hi,
I had the same problem on OSX with CMake.
I fixed it by editting
Code: Select all
cegui-dependencies/src/pcre-8.12/CEGUI-BUILD/CMakeLists.txtSearch for
and change it to
In the current version of the dependencies it's on line 27.
This should now work for Mac and Windows.
Do I need to file this as a bug to get it committed ?
Dave.
Re: Building 8.4 on Linux problems
Posted: Sun Aug 03, 2014 16:39
by Ident
The standard procedure would be to file a mantis bug and make a pull request if you have a fix for the bug. This will guarantee we will get it in as soon as we can. Just making a pull request is sufficient though, the mantis bug is mostly relevant to have it appropriately logged as fixed so that others will know in which version it was fixed.
Since this is a rather small issue I will quickly look into it..
Re: Building 8.4 on Linux problems
Posted: Sun Aug 03, 2014 16:42
by Ident
After looking at the mentioned line, i assume changing this will have side-effects on windows?
You said it would work on Windows, did you test it?
I did a commit I consider "safe" but I have not tested it:
https://bitbucket.org/cegui/cegui-depen ... 1fccc6f0a8If anyone can give me feedback if it still works for them it would be great, cant test it on other operating systems than OS X. If i screwed something up there then people will be after me!