qolibri icon indicating copy to clipboard operation
qolibri copied to clipboard

Provide build instructions for Windows and macOS

Open ghost opened this issue 5 years ago • 13 comments

Is it possible to build it and if yes, would you kindly provide a tutorial?

ghost avatar Aug 04 '18 23:08 ghost

Good question. The original qolibri did work on both, and I doubt the new commits have broken much, if anything. But unfortunately I will be unable to investigate this any time soon. Contributed build steps for either platform would be greatly appreciated. Because it is a Qt5 app, on Windows some of the steps might resemble the qBittorrent build.

ivan avatar Aug 04 '18 23:08 ivan

@mvf since you have a working Windows build, could you please add it to the 2.1.0 release? Once you accept to be a collaborator, you can hit Edit on 2.1.0 on https://github.com/ludios/qolibri/releases. I don't particularly care if it's a .zip file with DLLs or a self-contained .exe at this point, anything is a lot better than nothing for the Japanese learners on Windows.

ivan avatar Nov 04 '18 21:11 ivan

@ivan Thanks for the invite, I'll look into it when I get home.

mvf avatar Nov 05 '18 06:11 mvf

I have added an archive with shared Windows binaries to the 2.1.0 release (64-bits only for now, 32-bits should follow soon™). I would have preferred a static build, but that doesn't seem feasible in this case:

  • Qt WebEngine uses a separate QtWebEngineProcess.exe, which also links against Qt
  • The largest chunk is Qt5WebEngineCore.dll at ~70MiB, and static linking won't downsize that too much
  • Qt doesn't ship static libs, so we'd have to build Qt (and Chromium) ourselves :hurtrealbad:
  • Deploying the shared version is directly supported by Qt and there might be unforeseen issues with a custom static version

mvf avatar Nov 05 '18 17:11 mvf

Awesome, thanks. The build is working fine on my Windows 10 1803. I added a link from the README.

ivan avatar Nov 05 '18 17:11 ivan

I'm afraid 32-bit Windows builds will have to wait. There is no pre-built 32-bit Qt WebEngine and building it looks just painful. Official 32-bit builds are planned again for 5.12: QTBUG-63708.

mvf avatar Nov 08 '18 17:11 mvf

I don't know how useful this can be since I'm not even sure this is fully correct, but here are the steps I took to compile qolibri on macOS High Sierra, assuming make has already been installed:

  • git clone https://github.com/mistydemeo/eb.git (I tried the one from https://github.com/aehlke/eb first, but booklist.h was missing) and cd into it
  • compile and install it with ./configure + make + sudo make install
  • brew install qt cmake
  • git clone this repository, and cd into it
  • compile and install with cmake -DCMAKE_BUILD_TYPE=Release . + make + sudo make install

PendragonLore avatar Mar 07 '20 20:03 PendragonLore

Dumb question maybe, but would a compile be working on an m1 Mac? Has anyone tried this?

p2501mk avatar Sep 29 '22 05:09 p2501mk

I have cross-compiled for Apple Silicon but haven't actually run the app on an M1 Mac yet (still on Intel waiting for the M2 Mini :wink:).

qolibri HEAD should build on M1 using the steps above. Just make sure Brew installs Qt >=6.2 (seems to be at 6.3.1 ATM, so should be fine).

mvf avatar Sep 29 '22 10:09 mvf

Thank you for replying! I'm trying to decide between a powerful Chromebook and a Macbook Air M1 for Japanese studies, and Qolibri is one item on my pro/con list.. -_-;;

p2501mk avatar Sep 29 '22 11:09 p2501mk

I see, tough choice! :sweat_smile:

From a qolibri PoV you should be good either way: 2.1.4 should already run on M1 Macs via Rosetta. Future releases will support M1 natively (universal binary). ChromeOS should be able to run the Linux version via Crostini.

mvf avatar Sep 29 '22 14:09 mvf

Tough choice indeed :) I'm leaning M1 for silence. And yea Rosetta is nice and all, but I'd prefer native software..

p2501mk avatar Sep 29 '22 15:09 p2501mk