FFTW 2.x crée un fichier .la (sous le répertoire fftw/.libs).Comment puis-je obtenir un fichier .so à partir d'un fichier .la?
Je pense que j'ai besoin d'un fichier .so pour lier. (Je ne suis pas sûr, parce que je suis un débutant gcc).
FFTW 2.x crée un fichier .la (sous le répertoire fftw/.libs).Comment puis-je obtenir un fichier .so à partir d'un fichier .la?
Je pense que j'ai besoin d'un fichier .so pour lier. (Je ne suis pas sûr, parce que je suis un débutant gcc).
En général, sous Linux, un fichier .so est une bibliothèque dynamique et un fichier .a ou .la est associé de manière statique. Lequel vous avez besoin dépend de votre application et comment vous avez installé/construit la bibliothèque. Pour un tutoriel sur la liaison statique ou dynamique, voir this site. Aussi, avez-vous construit fftw vous-même à partir de la source, ou avez-vous utilisé un gestionnaire de paquets? Cela aiderait à répondre à votre question. En ce qui concerne l'utilisation de gcc, consultez ce manual page, cela pourrait effacer certaines choses. Donc, oui, la réponse courte est soit de coller avec le .a ou lors de la construction de fftw spécifier que vous voulez une bibliothèque partagée. ./configure --enable-shared
je l'ai construit à partir de la source – Ries
les autres libs que j'utilise sont tous .so et sont liés à l'aide de -lpython2.4 par exemple, où j'ai un libpython2.4.so.0.0.0 – Ries
Eh bien, dans ce cas, quand vous compilez la bibliothèque dont vous avez besoin pour spécifier 'shared' et non 'static'. Si vous utilisez une distribution comme unbuntu ou fedora, utilisez simplement le gestionnaire de paquets et installez le paquet -devel. Lors de la construction, ajoutez --enable-shared lorsque vous appelez ./configure A partir du manuel fftw. http://www.fftw.org/fftw3_doc/Installation-on-Unix.html#Installation-on-Unix – zdav
Une raison particulière pour laquelle vous utilisez une ancienne version de FFTW? –
Je ne pouvais pas obtenir la version 3.x à construire du tout sur ma machine. Quelque chose dans le répertoire "tests" l'a fait échouer. Je ne peux pas me souvenir du problème exact maintenant, mais 2.x construit bien. – Ries