Jo2003 / cd2netmd_gui

A tool like Sonys NetMD Simple Burner
GNU General Public License v3.0
42 stars 7 forks source link

Missing build documentation #5

Open tsundoku39 opened 2 years ago

tsundoku39 commented 2 years ago

I don't see anything in the Readme or elsewhere that describes how the project is to be compiled. While I'm trying to unravel it myself, I'm running into errors, and I would like a reference for what kind of build environment is expected and how the binaries were produced, especially for Linux. Could this information be added to the Readme?

Jo2003 commented 2 years ago

Hi, sorry, right now I haven't the time to go in detail about the whole build stuff. Since you are interested in Linux here are some informations:

Hope this helps, Jörg

tsundoku39 commented 2 years ago

Thank you for the details.

I'm confused by the linux.md page contents, though. Does this mean the project has a maximum compatible version of libraries like json-c and libcdio? Does it need to be built against your own forked version of libcue? I'm not clear on what is happening with the whole prebuild setup described here.

Jo2003 commented 2 years ago

The libraries listed in linux.md getting incompatible updates in the next Ubuntu versions (18.10 and later). To not break the compatibility of the App in these later Ubuntu versions I decided to pre-build these libraries and link them statically to the App.

Yes, you have to use my fork of libcue since the original has some naming issues in combination with libcdio (function naming).

If you build for your version of Linux only you can use the libraries shipped with your distro. But also in this case you might end up with the libcue naming issue.

If you need further help please give some further details about the problems you face. If you are confused, tell what exactly confuses you.

tsundoku39 commented 2 years ago

I was mostly confused by the prebuild arrangement because it is unusual for a Linux package, and while I see a lot of minimum version dependencies for packages, a maximum version dependency is much less common. What are the specific compatibility breaks?

When I have some time to focus on it, I may try tweaking the build setup for my own purposes to use system packages when possible, but the libcue vs. libcdio situation is really unfortunate. Thanks for clarifying your intentions!