Re: Cmake et options

トップ ページ

このメッセージに返信
著者: anne.guilde@free.fr
日付:  
To: guilde
題目: Re: Cmake et options
Le 23/04/2018 à 16:56, Marc a écrit :
> Le 23/04/2018 à 15:34, anne.guilde@??? a écrit :
>> J'ai des erreurs avec le taglib que j'ai compilé...
>
> Elle existe déjà compilée, non ?
>
> Sinon, tu n'as pas moyen d'installer plutôt les sources de la librairie
> par les paquets. Cherche dans les paquets disponibles ceux qui
> commencent par 'libtag' et qui finissent par '-dev'.
>
> Chez moi il y a pas mal de candidats :
> libtag1-dev
> libtagc0-dev
> libtag-extras-dev
> libtaglib-cil-dev
> libtaglib-ocaml-dev
> ...
>


Oui oui
C'est installé et c'est peut-être le problème.

Il faut le taglib static et debian n'a pas la version static.
J'ai compilé avec l'option static qui n'existe pas dans les paquets debian.

Frédéric avait essayé de faire la version static le 04/04/2018 à 9h37.
---
Ce que je ferais, plutôt, c'est récupérer les sources du paquet debian :

$ apt source libtag1-dev

puis modifier le fichier debian/rules pour qu'il compile la librairie
statique. Ensuite, tu re-construis les paquets debian (il va en fait
plusieurs, donc le -dev), et tu installes juste le -dev.

À vue de pif, il faudrait modifier ceci dans debian/rules :

override_dh_auto_configure:
         dh_auto_configure $(DH_AUTO_ARGS) -- \
                 -DCMAKE_USE_RELATIVE_PATHS=ON -DWITH_ASF=ON -DWITH_MP4=ON \
                 -DLIB_INSTALL_DIR:PATH=/usr/lib/$(DEB_HOST_MULTIARCH) \
                 -DBUILD_SHARED_LIBS=ON


en ajoutant -DBUILD_STATIC_LIBS=ON

Je teste pour voir...
---

et à 9h52

---
Ben ça n'a pas l'air de marcher :o(

Comprend pas bien pourquoi ce paquet ne compile pas la librairie
statique... Elles y sont, d'habitude.
---

Frédéric m'avait dt le 04/04/2018 à 18h28
---
Dans le lien pointé par Jérôme (en bas) :

https://github.com/taglib/taglib/blob/master/INSTALL.md

"To build a static library, set the following two options with CMake:

     -DBUILD_SHARED_LIBS=OFF -DENABLE_STATIC_RUNTIME=ON


Including ENABLE_STATIC_RUNTIME=ON indicates you want TagLib built using
the static runtime library, rather than the DLL form of the runtime."
---

Je n'ai jamais vu sur cette page -DBUILD_SHARED_LIBS=OFF
-DENABLE_STATIC_RUNTIME=ON

rien compris de ce que frédéric a vu et où :(

Le seule endroit où j'ai vu, c'est dans le CMakeLists.txt
---
include_directories( ${TAGLIB_INCLUDE_PATH} )

add_definitions( -DTAGLIB_STATIC )

---

Je vais essayer de virer le .dev de la debian et de recompiler.

Anne