[Solved] Building 8.4 on Linux problems

For help with general CEGUI usage:
- Questions about the usage of CEGUI and its features, if not explained in the documentation.
- Problems with the CMAKE configuration or problems occuring during the build process/compilation.
- Errors or unexpected behaviour.

Moderators: CEGUI MVP, CEGUI Team

ks13
Just popping in
Just popping in
Posts: 17
Joined: Sat May 24, 2014 22:25

[Solved] Building 8.4 on Linux problems

Postby ks13 » Fri Jul 18, 2014 04:38

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.

User avatar
Nickenstein79
Quite a regular
Quite a regular
Posts: 93
Joined: Thu May 09, 2013 06:19

Re: Building 8.4 on Linux problems

Postby Nickenstein79 » Fri Jul 18, 2014 05:43

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.

ks13
Just popping in
Just popping in
Posts: 17
Joined: Sat May 24, 2014 22:25

Re: Building 8.4 on Linux problems

Postby ks13 » Fri Jul 18, 2014 06:08

The cmake is not the problem, make is.

User avatar
Kulik
CEGUI Team
Posts: 1382
Joined: Mon Jul 26, 2010 18:47
Location: Czech Republic
Contact:

Re: Building 8.4 on Linux problems

Postby Kulik » Fri Jul 18, 2014 08:24

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.

ks13
Just popping in
Just popping in
Posts: 17
Joined: Sat May 24, 2014 22:25

Re: Building 8.4 on Linux problems

Postby ks13 » Fri Jul 18, 2014 15:30

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.

User avatar
thomas
Quite a regular
Quite a regular
Posts: 64
Joined: Thu Aug 22, 2013 22:11

Re: Building 8.4 on Linux problems

Postby thomas » Fri Jul 18, 2014 17:12

The most up to date information is at the bottom here: http://cegui.org.uk/wiki/Build_from_source_for_Linux

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


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.

ks13
Just popping in
Just popping in
Posts: 17
Joined: Sat May 24, 2014 22:25

Re: Building 8.4 on Linux problems

Postby ks13 » Sat Jul 19, 2014 02:41

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.html

And 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.

User avatar
Nickenstein79
Quite a regular
Quite a regular
Posts: 93
Joined: Thu May 09, 2013 06:19

Re: Building 8.4 on Linux problems

Postby Nickenstein79 » Sat Jul 19, 2014 08:38

ks13 wrote:it still outputs an error.


Please elaborate...

User avatar
Kulik
CEGUI Team
Posts: 1382
Joined: Mon Jul 26, 2010 18:47
Location: Czech Republic
Contact:

Re: Building 8.4 on Linux problems

Postby Kulik » Sat Jul 19, 2014 10:18

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.

User avatar
thomas
Quite a regular
Quite a regular
Posts: 64
Joined: Thu Aug 22, 2013 22:11

Re: Building 8.4 on Linux problems

Postby thomas » Mon Jul 21, 2014 14:55

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.

ks13
Just popping in
Just popping in
Posts: 17
Joined: Sat May 24, 2014 22:25

Re: Building 8.4 on Linux problems

Postby ks13 » Sun Aug 03, 2014 10:06

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.

User avatar
Ident
CEGUI Team
Posts: 1998
Joined: Sat Oct 31, 2009 13:57
Location: Austria

Re: Building 8.4 on Linux problems

Postby Ident » Sun Aug 03, 2014 11:04

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.
CrazyEddie: "I don't like GUIs"

markymark
Just popping in
Just popping in
Posts: 8
Joined: Sun Dec 29, 2013 11:00

Re: Building 8.4 on Linux problems

Postby markymark » Sun Aug 03, 2014 14:11

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.txt


Search for

Code: Select all

dftables.exe
and change it to

Code: Select all

dftables


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.

User avatar
Ident
CEGUI Team
Posts: 1998
Joined: Sat Oct 31, 2009 13:57
Location: Austria

Re: Building 8.4 on Linux problems

Postby Ident » Sun Aug 03, 2014 16:39

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..
CrazyEddie: "I don't like GUIs"

User avatar
Ident
CEGUI Team
Posts: 1998
Joined: Sat Oct 31, 2009 13:57
Location: Austria

Re: Building 8.4 on Linux problems

Postby Ident » Sun Aug 03, 2014 16:42

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 ... 1fccc6f0a8

If 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!
CrazyEddie: "I don't like GUIs"


Return to “Help”

Who is online

Users browsing this forum: No registered users and 26 guests