2015-04-01 5 views
0

Je commence juste avec Löve et je l'aime! Je suis actuellement en train de le tester sous Ubuntu 14.04.Problèmes avec libturbojpeg compilation love-0.9.2

J'ai été capable de compiler love 0.8.0 sans problème, mais j'ai des problèmes pour compiler 0.9.2 à partir de bitbucket. Il semble, j'aurais pu eaten by a grue...

J'ai eu cette erreur lors de la liaison, en raison de libturbojpeg:

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/libturbojpeg.a(libturbojpeg_la-turbojpeg.o): relocation R_X86_64_32 against `.data' can not be used when making a shared object; recompile with -fPIC 

Selon this StackOverflow entry, il semble que la valeur par défaut libturbojpeg binaire installé dans Ubuntu via apt-get:

[email protected]:~/tomas/love/love-0.9.2-bitbucket$ dpkg -L libjpeg-turbo8-dev | grep libturbojpeg.a 
/usr/lib/x86_64-linux-gnu/libturbojpeg.a 
[email protected]:~/tomas/love/love-0.9.2-bitbucket$ dpkg -l libjpeg-turbo8-dev 
Desired=Unknown/Install/Remove/Purge/Hold 
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend 
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) 
||/ Name        Version    Architecture   Description 
+++-==================================-======================-======================-========================================================================= 
ii libjpeg-turbo8-dev:amd64   1.3.0-0ubuntu2   amd64     Development files for the IJG JPEG library 

n'est pas compilé avec -fPIC, donc je suppose que je vais devoir obtenir que son code source, recompiler avec cette option et modifier quelque chose dans le bui Procédure ld de löve pour pointer vers la compilée.

Suis-je dans la bonne direction, ou puis-je avoir raté quelque chose?

Cordialement, Tom

PD: Je me demande pourquoi cette bibliothèque doit être compilé avec -fPIC dans ce cas précis ...

-fPIC 
     If supported for the target machine, emit position-independent code, suitable for dynamic linking and avoiding any limit on the size of the 
     global offset table. This option makes a difference on the m68k, PowerPC and SPARC. 

Répondre

0

Eh bien, il semble mise à jour à 0,9 .2 étiquette fait le travail:

hg update 0.9.2 
./platform/unix/automagic 
./configure 
make 

Vérifiez here pour la question sur bitbucket.

Alex Szpakowski: Cela ne contribue pas vraiment le problème exact, mais LÖVE 0.9.2 ne dépend pas ou lien avec libturbojpeg. Le dernier code dans le référentiel LÖVE est pour 0.10.0, qui a différentes dépendances que 0.9.2 (et n'est pas encore complet/publié.) Si vous voulez pour compiler 0.9.2 pour Linux (plutôt que d'utiliser un .deb ou PPA), vous devriez probablement télécharger la source ici: https://bitbucket.org/rude/love/downloads/love-0.9.2-linux-src.tar.gz , ou mise à jour à la balise 0.9.2 dans le dépôt Mercurial et exécuter automagique etc.