muesli / telephant

A lightweight but modern Mastodon client for the desktop
MIT License
190 stars 14 forks source link

Compiling on arm #7

Open thearkadia opened 5 years ago

thearkadia commented 5 years ago

I'm compiling telephant on arm with go version go1.8 linux/arm

when doing go get -u -v I get:


github.com/therecipe/qt/quickcontrols2
../../therecipe/qt/quickcontrols2/quickcontrols2.cpp:9:22: fatal error: QByteArray: No such file or directory
 #include <QByteArray>
                      ^
compilation terminated.
github.com/muesli/telephant/accounts/mastodon
# github.com/therecipe/qt/core
../../therecipe/qt/core/core.cpp:9:30: fatal error: QAbstractAnimation: No such file or directory
 #include <QAbstractAnimation>
                              ^
compilation terminated.
muesli commented 5 years ago

Sounds like you haven't installed the Qt dependencies - or at least it couldn't find them.

CryptKid commented 5 years ago

This doesn't seem to be arm-specific, I'm experiencing the same issue building it inside a docker container running all the steps listed in README and installing golang-go and git, could you @muesli please add the Qt dependency installation instruction to README?

muesli commented 5 years ago

@CryptKid Sadly that's a very distribution-specific thing. The Qt bindings have a bit of information regarding the Qt installation on their Wiki:

https://github.com/therecipe/qt/wiki/Installation-on-Linux

muesli commented 5 years ago

Alternatively, you can try building the entire thing in a Docker container itself:

$GOPATH/bin/qtdeploy -docker build linux

Obviously you'd still need the Qt5 libraries at run-time (no the -dev packages though!). Last but not least, you could even try a static build within Docker, which should also resolve that "issue".

thearkadia commented 5 years ago

What about doing for us who want to do it without Docker?

On May 10, 2019, at 3:27 PM, Christian Muehlhaeuser notifications@github.com wrote:

Alternatively, you can try building the entire thing in a Docker container itself:

$GOPATH/bin/qtdeploy -docker build linux Obviously you'd still need the Qt5 libraries at run-time (no the -dev packages though!). Last but not least, you could even try a static build within Docker, which should also resolve that "issue".

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/muesli/telephant/issues/7#issuecomment-491404060, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQIUALH5ITVM6524QLUV23PUXEBDANCNFSM4HMFGDGQ.

muesli commented 5 years ago

@thearkadia Just use your distro's Qt5 packages.

thearkadia commented 5 years ago

could there be a command list in the readme for this situation?

On May 10, 2019, at 4:03 PM, Christian Muehlhaeuser notifications@github.com wrote:

@thearkadia https://github.com/thearkadia Just use your distro's Qt5 packages.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/muesli/telephant/issues/7#issuecomment-491413505, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQIUANTB7ZDUWQZOB32NIDPUXIHPANCNFSM4HMFGDGQ.

muesli commented 5 years ago

@thearkadia That very much depends on the distribution you use. I could probably provide it for Arch & Ubuntu, but beyond that it's tough to maintain and verify those lists.

Obviously packaged versions of Telephant will make this less of an issue in the future.

thearkadia commented 5 years ago

I’d appreciate an ubuntu one

On May 10, 2019, at 4:06 PM, Christian Muehlhaeuser notifications@github.com wrote:

@thearkadia https://github.com/thearkadia That very much depends on the distribution you use. I could probably provide it for Arch & Ubuntu, but beyond that it's tough to maintain and verify those lists.

Obviously packaged versions of Telephant will make this less of an issue in the future.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/muesli/telephant/issues/7#issuecomment-491414547, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQIUANOVXYZUB73VM6T6ULPUXIVJANCNFSM4HMFGDGQ.

muesli commented 5 years ago

@thearkadia The official bindings wiki recommends sudo apt-get -y install libqt*5-dev qt*5-dev even though that seems a bit excessive for me. Will have to verify.

Then set your $QT_PKG_CONFIG to true and follow the README.

thearkadia commented 5 years ago

where do I set $QT_PKG_CONFIG

On May 10, 2019, at 4:27 PM, Christian Muehlhaeuser notifications@github.com wrote:

@thearkadia https://github.com/thearkadia The official bindings wiki recommends sudo apt-get -y install libqt5-dev qt5-dev even though that seems a bit excessive for me. Will have to verify.

Then set your $QT_PKG_CONFIG to true and follow the README.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/muesli/telephant/issues/7#issuecomment-491420257, or mute the thread https://github.com/notifications/unsubscribe-auth/ABQIUAM5JV4CCXLZO2V3T5DPUXLDZANCNFSM4HMFGDGQ.

muesli commented 5 years ago

That's simply an environment variable.

export QT_PKG_CONFIG=true

I'm just looking into another build issue with Ubuntu/Debian based distros, though. May or may not be related.

muesli commented 5 years ago

I've just updated the README with build instructions for Ubuntu that I just ran through in a VM myself. Hope this helps!

thearkadia commented 5 years ago

there's another issue with compiling on arm =\

package math/bits: unrecognized import path "math/bits" (import path does not begin with hostname)

here's the full output if you want to see it https://pastebin.com/1kATPcsi

therecipe commented 5 years ago

@thearkadia math/bits is a new package that was added in Go 1.9, I think you will probably just need to update your Go installation for this to work.

muesli commented 5 years ago

Thanks @therecipe. I shall bump the Go requirement in the README to reflect that.

thearkadia commented 5 years ago

@muesli great. Will you include instructions to install the right version of Go on ubuntu? It's not in the repos so its more of a process

thearkadia commented 5 years ago

@muesli installing the dependencies in the readme and the running the rpi build i get this

libEGL warning: DRI2: failed to authenticate
qt5ct: using qt5ct plugin
Error retrieving lists: Get /api/v1/lists: unsupported protocol scheme ""
JIT is disabled for QML. Property bindings and animations will be very slow. Visit https://wiki.qt.io/V4 to learn about possible solutions for your platform.
JIT is disabled for QML. Property bindings and animations will be very slow. Visit https://wiki.qt.io/V4 to learn about possible solutions for your platform.
QQmlApplicationEngine failed to load component
qrc:/qml/telephant.qml:2 module "QtQuick.Controls" version 2.5 is not installed
muesli commented 5 years ago

Is this the RPi3 build I uploaded to the 0.1pre release, or something you've built yourself?

thearkadia commented 5 years ago

The build you uploaded

On Jun 2, 2019, at 3:19 AM, Christian Muehlhaeuser notifications@github.com wrote:

Is this the RPi3 build I uploaded to the 0.1pre release, or something you've built yourself?

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or mute the thread.