[Solved] Building 8.4 on Linux problems
Moderators: CEGUI MVP, CEGUI Team
[Solved] Building 8.4 on Linux problems
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.
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.
- Nickenstein79
- Quite a regular
- Posts: 93
- Joined: Thu May 09, 2013 06:19
Re: Building 8.4 on Linux problems
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.
(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
The cmake is not the problem, make is.
Re: Building 8.4 on Linux problems
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
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
The most up to date information is at the bottom here: http://cegui.org.uk/wiki/Build_from_source_for_Linux
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.
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.
Re: Building 8.4 on Linux problems
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.
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.
- Nickenstein79
- Quite a regular
- Posts: 93
- Joined: Thu May 09, 2013 06:19
Re: Building 8.4 on Linux problems
ks13 wrote:it still outputs an error.
Please elaborate...
Re: Building 8.4 on Linux problems
I use Fedora 20 so it's fairly well supported (wink wink)
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.
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
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.
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
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.
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
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"
Re: Building 8.4 on Linux problems
Hi,
I had the same problem on OSX with CMake.
I fixed it by editting
Search 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.
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
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.
Re: Building 8.4 on Linux problems
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..
Since this is a rather small issue I will quickly look into it..
CrazyEddie: "I don't like GUIs"
Re: Building 8.4 on Linux problems
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!
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"
Who is online
Users browsing this forum: No registered users and 26 guests