Автор Тема: Създаване на .la от .so  (Прочетена 1710 пъти)

deltaplaner

  • Напреднали
  • *****
  • Публикации: 104
  • Distribution: Debian GNU/Linux
  • Window Manager: KDE
    • Профил
Създаване на .la от .so
« -: May 04, 2007, 02:24 »
Опитвам се да компилирам kcometen3-1.1, но стигам до:
Примерен код
libtool: link: cannot find the library `/usr/lib/libGL.la'


Примерен код
$ ls /usr/lib/*libGL* -dFl
lrwxrwxrwx 1 root root 27 2007-04-30 03:40 /usr/lib/libGL.so -> /usr/X11R6/lib/libGL.so.1.2
lrwxrwxrwx 1 root root 27 2007-04-30 03:40 /usr/lib/libGL.so.1 -> /usr/X11R6/lib/libGL.so.1.2

$ ls /usr/X11R6/lib/*libGL* -dFl
-rwxr-xr-x 1 root root 523K 2006-09-16 11:52 /usr/X11R6/lib/FGL.renamed.libGL.so.1.2*
-rw-r--r-- 1 root root 583K 2006-09-16 11:47 /usr/X11R6/lib/libGL.a
lrwxrwxrwx 1 root root   27 2007-04-30 03:40 /usr/X11R6/lib/libGL.so -> /usr/X11R6/lib/libGL.so.1.2
lrwxrwxrwx 1 root root   27 2007-04-30 03:40 /usr/X11R6/lib/libGL.so.1 -> /usr/X11R6/lib/libGL.so.1.2
-rw-r--r-- 1 root root 765K 2007-04-30 03:40 /usr/X11R6/lib/libGL.so.1.2
-rw-r--r-- 1 root root 640K 2006-09-16 11:47 /usr/X11R6/lib/libGLU.a
lrwxrwxrwx 1 root root   13 2007-04-30 03:38 /usr/X11R6/lib/libGLU.so -> libGLU.so.1.3*
lrwxrwxrwx 1 root root   13 2007-04-30 03:38 /usr/X11R6/lib/libGLU.so.1 -> libGLU.so.1.3*
-rwxr-xr-x 1 root root 549K 2006-09-16 11:52 /usr/X11R6/lib/libGLU.so.1.3*
-rw-r--r-- 1 root root  28K 2006-09-16 11:47 /usr/X11R6/lib/libGLw.a
lrwxrwxrwx 1 root root   13 2007-04-30 03:38 /usr/X11R6/lib/libGLw.so -> libGLw.so.1.0*
lrwxrwxrwx 1 root root   13 2007-04-30 03:38 /usr/X11R6/lib/libGLw.so.1 -> libGLw.so.1.0*
-rwxr-xr-x 1 root root  26K 2006-09-16 11:52 /usr/X11R6/lib/libGLw.so.1.0*


Въпросът ми е може ли по някакъв начин да се изгради .la библиотека от .so. Пробвах също така да направя link libGL.la -> libGL.a, но резултата е следния:
Примерен код
libtool: link: `/usr/X11R6/lib/libGL.la' is not a valid libtool archive
Активен

P4 2.66 GHz (533Mhz); 2x1GB DDR2 (533Mhz) RAM; GF 8600GT 256MB DDR3; SATA2 MAXTOR 80 GB HDD; SATA2 SEAGATE 320 GB HDD

ivo1204

  • Напреднали
  • *****
  • Публикации: 987
    • Профил
Създаване на .la от .so
« Отговор #1 -: May 04, 2007, 07:29 »
На въпроса ти дали може "да се изгради .la библиотека от .so", може , друг въпрос е дали е редно в твоя случай.
libtool :
http://www.gnu.org/software/libtool/

Копираш някъде тази :
 /usr/X11R6/lib/libGL.so.1.2 , например в /tmp/build
cd //tmp/build
libtool --mode=link gcc -g -O -o libGL.so.1.2.la  libGL.so.1.2  -rpath /usr/lib
libtool --mode=install install -c libGL.1.2.la /usr/lib
/Аз лично не бих правил това  /



Активен

deltaplaner

  • Напреднали
  • *****
  • Публикации: 104
  • Distribution: Debian GNU/Linux
  • Window Manager: KDE
    • Профил
Създаване на .la от .so
« Отговор #2 -: May 06, 2007, 04:22 »
Стана. Само, че вместо при изпълнението на командите да използвам направо /usr/lib, използвах друга празна директория за всеки случай, след което копирах след малка редакция с текстов редактор файла libGL.la в /usr/lib.
Благодаря за помощта ... и да живее свободния софтуер и Линукс '<img'>



Активен

P4 2.66 GHz (533Mhz); 2x1GB DDR2 (533Mhz) RAM; GF 8600GT 256MB DDR3; SATA2 MAXTOR 80 GB HDD; SATA2 SEAGATE 320 GB HDD

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
Създаване на .la от .so
« Отговор #3 -: May 08, 2007, 15:20 »
kcometen3-1.1 го компилирах на slackware 11 без никакви проблеми и не искаше .../libGL.la . Нещо друго не е наред ( може би от инсталираните не X Window драйвери за видео картата ) .
Активен

deltaplaner

  • Напреднали
  • *****
  • Публикации: 104
  • Distribution: Debian GNU/Linux
  • Window Manager: KDE
    • Профил
Създаване на .la от .so
« Отговор #4 -: May 09, 2007, 02:00 »
Със сигурност е от драйверите на ATI. Преди малко пробвах една Nvidia. При инсталацията на драйверите й си слага и .la библиотеката.



Активен

P4 2.66 GHz (533Mhz); 2x1GB DDR2 (533Mhz) RAM; GF 8600GT 256MB DDR3; SATA2 MAXTOR 80 GB HDD; SATA2 SEAGATE 320 GB HDD

sdr

  • Напреднали
  • *****
  • Публикации: 655
    • Профил
Създаване на .la от .so
« Отговор #5 -: May 09, 2007, 10:08 »
А нямаше ли един момент където може да се линква директно към .so файл? Или съм нещо в грешка?
Активен

rpetrov

  • Напреднали
  • *****
  • Публикации: 571
    • Профил
    • WWW
Създаване на .la от .so
« Отговор #6 -: May 09, 2007, 17:06 »
Цитат (sdr @ Май 09 2007,10:08)
А нямаше ли един момент където може да се линква директно към .so файл? Или съм нещо в грешка?

Аз забравих да уточня, че при мен мина без файла libGL.la . Имам само *GL.so*:
Примерен код
$ ls /usr/lib/*libGL* -dFl
lrwxrwxrwx 1 root root 23 2007-05-05 00:31 /usr/lib/libGL.so -> /usr/X11R6/lib/libGL.so*
lrwxrwxrwx 1 root root 25 2007-05-05 00:31 /usr/lib/libGL.so.1 -> /usr/X11R6/lib/libGL.so.      1*
$ ls /usr/X11R6/lib/*libGL* -dFl
-rw-r--r-- 1 root root 596292 2007-04-20 02:12 /usr/X11R6/lib/libGL.a
lrwxrwxrwx 1 root root     12 2007-05-05 00:31 /usr/X11R6/lib/libGL.so -> libGL.so.1.2*
lrwxrwxrwx 1 root root     12 2007-05-05 00:31 /usr/X11R6/lib/libGL.so.1 -> libGL.so.1.2*
-rwxr-xr-x 1 root root 535224 2007-04-20 02:17 /usr/X11R6/lib/libGL.so.1.2*
-rw-r--r-- 1 root root 655134 2007-04-20 02:12 /usr/X11R6/lib/libGLU.a
lrwxrwxrwx 1 root root     13 2007-05-05 00:31 /usr/X11R6/lib/libGLU.so -> libGLU.so.1.3*
lrwxrwxrwx 1 root root     13 2007-05-05 00:31 /usr/X11R6/lib/libGLU.so.1 -> libGLU.so.1.3      *
-rwxr-xr-x 1 root root 562080 2007-04-20 02:17 /usr/X11R6/lib/libGLU.so.1.3*
-rw-r--r-- 1 root root  27674 2007-04-20 02:12 /usr/X11R6/lib/libGLw.a
lrwxrwxrwx 1 root root     13 2007-05-05 00:31 /usr/X11R6/lib/libGLw.so -> libGLw.so.1.0*
lrwxrwxrwx 1 root root     13 2007-05-05 00:31 /usr/X11R6/lib/libGLw.so.1 -> libGLw.so.1.0      *
-rwxr-xr-x 1 root root  26454 2007-04-20 02:17 /usr/X11R6/lib/libGLw.so.1.0*

Може би soname не е наред. При мен е :
Примерен код
$ objdump -x /usr/X11R6/lib/libGL.so | grep SONAME
  SONAME      libGL.so.1


Може би е проблем, че съществува файла FGL.renamed.libGL.so.1.2 .
Активен