Trico-Everfire / p2-publishing-tool

MIT License
15 stars 2 forks source link

Partial fix for Linux #8

Closed ghost closed 2 years ago

ghost commented 2 years ago

Issue 6 is fixed complety* with the addition of local compilation with submodules, with the liberty of enhance the project structure and README.md

*: Note that problems can still occur given that no all used libraries are being packed with the binary and submodules may need configuration to be sure they use themselves as dependencies.

Trico-Everfire commented 2 years ago

Sorry for the late response. I haven't had the chance to test this yet, I'll read through it and merge.

Trico-Everfire commented 2 years ago

I can't get it to run, are there instructions on how to make it run? it seems to be nested with submodules. I don't understand it.

craftablescience commented 2 years ago

@Bohmthedudevulture I tried cloning on Windows. It failed after downloading 7.5gb of Qt, because the filenames ended up too long. Can you precompile the binaries instead of submoduling everything? You could even edit the existing binaries to use the correct RPATH, if that's the problem. Qt's source code won't be changed, so it's more economical like this

Trico-Everfire commented 2 years ago

@Bohmthedudevulture I tried cloning on Windows. It failed after downloading 7.5gb of Qt, because the filenames ended up too long. Can you precompile the binaries instead of submoduling everything? You could even edit the existing binaries to use the correct RPATH, if that's the problem. Qt's source code won't be changed, so it's more economical like this

Same here on linux, it tried cloning GB of QT which isn't needed.

ghost commented 2 years ago

@Bohmthedudevulture and @craftablescience (1) You don't need to clone all of the Qt repository, just his base submodule, and compile it with the icu binaries. (2) You must also, and firstly compile the submodule icu. (3) The Qt base qmake will generate a cmake imports where a line is wrong, is a trivial fix with a StackOverflow at respect (that is mentioned in the README). (4) Finally, I just updated the README to have clear instructions.

craftablescience commented 2 years ago

@Bohmthedudevulture I do have to clone the entire Qt repo, because you made the entire thing a submodule.

ghost commented 2 years ago

@craftablescience

@Bohmthedudevulture I do have to clone the entire Qt repo, because you made the entire thing a submodule.

You don't have to. --- Neither after that.

craftablescience commented 2 years ago

@Bohmthedudevulture i know how submodules work, thanks. What my point is is what's the point of adding the entire Qt repo as a submodule when you don't use nearly any of it? It's wasteful and pointless. And no new users are going to know not to download submodules.

ghost commented 2 years ago

@craftablescience (1) New users, no just download the releases?. (2) Well, it can be added to the instructions, or instead submodule Qt's base submodule instead.

craftablescience commented 2 years ago

Is it not possible to precompile Qt instead?

ghost commented 2 years ago

@craftablescience

Is it not possible to precompile Qt instead?

In windows, may be really easy to get the standalone binary. But in linux you basically have to compile it yourself anyway. And given that we have to ship all the no GNU user space dependencies and link they with the local copies, is just easier to sub-module the dependencies and give a build script, this is ignoring that independently that independently builds may differ more than the RPATH.

craftablescience commented 2 years ago

Fair enough then. It would still be great if you could change it to only have the necessary submodules though

Trico-Everfire commented 2 years ago

The TLDR here is that unless the submodule issue has been fixed, we'll likely won't merge this.

Trico-Everfire commented 2 years ago

also, if it's of your interest, @Bohmthedudevulture, the github action already downloads the full QT libraries and compiles them, all that really needs to be fixed is the linking.