Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Cannot build on Linux #14

Closed
coder543 opened this issue Apr 19, 2017 · 17 comments
Closed

Cannot build on Linux #14

coder543 opened this issue Apr 19, 2017 · 17 comments

Comments

@coder543
Copy link

All of the instructions insist that you just need to run

./configure --with-gtk
make
make install

However, there is no configure file, only configure.in. Attempting to run autoconf fails with all kinds of errors, so I can't seem to generate the configure file myself.

@CelestiaProject
Copy link
Collaborator

Building for Linux has not tested yet. Details about Celestia for Linux.

@anordal
Copy link

anordal commented May 13, 2017

Here is how I did it:

autoreconf -iv
./configure --with-glut --with-lua
make -j5

You will probably need some of the 9 patches from my (unfortunately independent) maintentance fork https://github.com/anordal/celestia/commits if your distro is newer than 2013…

I just discovered this project, so I'm hoping to reintegrate some fixes here!

@CelestiaProject
Copy link
Collaborator

@anordal Your changes intersect with the changes that we made this year. Your changes intersect with the changes that we made this year. Do your changes give a stable version of Celestia for Linux along with Lua 5.3?

@anordal
Copy link

anordal commented Jul 14, 2017

Yes, Celestia runs fine here with Lua 5.3.3 on Linux as far as I can tell (dunno what lua specific issues to look for).

I happen to also have Lua 5.2.4 and 5.1.5 installed, but 5.3.3 was the version I built against.

@CelestiaProject
Copy link
Collaborator

CelestiaProject commented Jul 15, 2017

@anordal Please install Lua Edu Tools, check the correctness of its work and check several (any) CELX scripts.
Forum users reporded that Celestia with Lua 5.2 cannot run ScriptObit and ScriptRotation, neither can it work for CELX add-on(

@anordal
Copy link

anordal commented Jul 16, 2017

That's some nice testing tips. I see the solution taken here (commit 0452b0a) is to bundle Lua 5.1.

Note that my Lua 5.2 patch was made by Fedora maintainers back in 2013… So if you're saying that doesn't work, then at least the Fedora packages have been broken for years! I would assume other distros have applied equally desperate patches to keep it compiling in this decade.

I patched it for Lua 5.3 because my distro (OpenSuse Tumbleweed) doesn't make devel packages for Lua < 5.3 anymore – if you have to build Lua to build Celestia, that makes building Celestia twice as hard, which I (like you) refused to accept.

I hope we figure it out, but I don't know how cool those scripts are. I don't have time, and I'm a happy camper even if I broke them.

@CelestiaProject
Copy link
Collaborator

@anordal Do you have full Celestia source code with Lua 5.2 or 5.3? We would like to get it to build for Windows for testing CELX scripts and LUA tools.

@anordal
Copy link

anordal commented Jul 30, 2017

full Celestia source code

Only what I cloned myself, I haven't tried upgrading Lua in this project (yet).

@scottmmjackson
Copy link

scottmmjackson commented Aug 31, 2017

4e947ef is the closest I can get to the last commit that actually builds on Linux:

Dependency instructions are deb/ubuntu specific but the rest should be roughly platform-independent

sudo apt install libgtk2.0-dev libgtkglext1-dev liblua5.1-0-dev freeglut3-dev
git clone https://github.com/CelestiaProject/Celestia
cd Celestia
git checkout 4e947ef387b554c68fc32da95a2a2bcdee3e1f78
autoreconf -iv
./configure --with-gtk
make
vim po/Makefile # set mkdir_p var at the top to "mkdir -p"
vim po2/Makefile # same
sudo make install

HTH

The most recent commit is broken and impossible to build. It apparently uses some proprietary windows-only fmod library without wrapping it in an #ifdef _WIN32_ block, so it simply will not build on Linux. It's been this way since about March.

Never mind the fact that a proprietary library in a GPL project makes the entire thing nonfree.

@CelestiaProject
Copy link
Collaborator

Closed due to inactivity.

@scottmmjackson
Copy link

Is support for Linux being dropped, then?

@anordal
Copy link

anordal commented Dec 11, 2017

I'll keep my fork building anyway.

@ghost
Copy link

ghost commented Dec 17, 2017

@anordal
Copy link

anordal commented Dec 19, 2017

@munix9 Thanks, it works! My favourite distro. And qt5, wow! 🥇

Mouse interaction is very buggy in Xwayland though (unusable if the window is extended over two screens), but that might very well be a qt bug – my very stripped down version works fine.

@nortikin
Copy link

nortikin commented Jan 13, 2018

ok.
bunch of issues in terminal in make, followed all recomendations #14 (comment) here and #14 (comment) there

xBase<OtherDerived>&) [with OtherDerived = Eigen::Product<const Eigen::Matrix<float, 4, 4>&, const Eigen::Matrix<float, 4, 4>&, 0>; _Scalar = float; int _Rows = 4; int _Cols = 4; int _Options = 2; int _MaxRows = 4; int _MaxCols = 4]’
../../thirdparty/Eigen/Eigen/src/Core/Product.h:204:30:   required from ‘Eigen::Product<Lhs, Rhs, ProductMode>::Product(const Lhs&, const Rhs&) [with Lhs = Eigen::Product<const Eigen::Matrix<float, 4, 4>&, const Eigen::Matrix<float, 4, 4>&, 0>; Rhs = Eigen::Matrix<float, 4, 4>; LhsNested = Eigen::Matrix<float, 4, 4>; RhsNested = const Eigen::Matrix<float, 4, 4>&; int ProductMode = 0]’
../../thirdparty/Eigen/Eigen/src/Core/Product.h:298:60:   required from ‘const typename Eigen::ProductReturnType<Derived, OtherDerived>::Type Eigen::MatrixBase<Derived>::operator*(const Eigen::MatrixBase<OtherDerived>&) const [with OtherDerived = Eigen::Matrix<float, 4, 4>; Derived = Eigen::Product<const Eigen::Matrix<float, 4, 4>&, const Eigen::Matrix<float, 4, 4>&, 0>; typename Eigen::ProductReturnType<Derived, OtherDerived>::Type = Eigen::Product<Eigen::Matrix<float, 4, 4>, const Eigen::Matrix<float, 4, 4>&, 0>]’
shadermanager.cpp:3419:92:   required from here
../../thirdparty/Eigen/Eigen/src/Core/Product.h:260:14: warning: ignoring attributes on template argument ‘Eigen::MatrixBase<Eigen::Product<const Eigen::Matrix<float, 4, 4>&, const Eigen::Matrix<float, 4, 4>&, 0> >::PacketScalar {aka __vector(4) float}’ [-Wignored-attributes]

and more and more. is it ok?

@nortikin
Copy link

nortikin commented Jan 13, 2018

i hope it will install...
why not distro in apt f debian?

@nortikin
Copy link

ok, it works!!!!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants