Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Установка GSL в Ubuntu  (Прочитано 1982 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн l0-ki

  • Автор темы
  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Установка GSL в Ubuntu
« : 29 Марта 2010, 23:50:00 »
Здравствуйте, прошу помочь советом в установке библиотеки GSL. У меня стоит Ubuntu-9.10.
По учебе возникла необходимость использовать какую-нибудь с/с++ библиотеку для операций с матрицами/векторами и всякими прочими интересными штуками (в частности мне нужно считать собственные значения и векторы для матрицы, а писать это руками некогда и не дело вообще). В общем выбор пал на gsl.
Я установил библиотеку по инструкции в прилагаемом файле install, но так как опыт установки библиотек (да и вообще приложений) под линукс довольно скудный я столкнулся с трудностями, короче говоря после установки волшебным образом все не заработало.
Делал я вот что:
1. Скачал gsl-1.9. Распаковал.
2. Скопировал в папочку в директории home/username
3. Зашел в нее из консоли
4. ./configure
5. make
6. make check > log 2>&1
7. make install (из-под root)
Периодически появлялись в тестах фейлы, но думаю некритично.
Все установилось по умолчанию в /usr/local
Ну я в общем-то обрадовался и решил компилить пример, самый первый из документации
test.c:
#include <stdio.h>
#include <gsl/gsl_sf_bessel.h>
    
int main (void)
{
double x = 5.0;
double y = gsl_sf_bessel_J0(x);
printf ("J0(%g) = %.18e\n", x, y);
return 0;
}

gcc test.c
На что он мне выдает, что функция gsl_sf_bessel_J0 им не понята и все такое, да и вообще  collect2 ld returned 1 exit status
Я вроде догадываюсь, что хедеры он вроде нашел в usr/local/include а все остальное (бинарники наверное нужные) не видит, или что-то в этом роде. Но так как я не знаю как бы указать что где сижу и читаю дальше инсталл.
Там был абзац еще, что
  Some systems require unusual options for compilation or linking that
the `configure' script does not know about.  You can give `configure'
initial values for variables by setting them in the environment.  Using
a Bourne-compatible shell, you can do that on the command line like
this:
     CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure

Or on systems that have the `env' program, you can do it like this:
     env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure

Я сделал
env CPPFLAGS=-I/usr/local/include LDFLAGS=-sНо мои усилия были напрасно, ибо ничего не поменялось.
Видимо тут какие-то стандартные действия в таких случаях надо делать, о которых я не подозреваю.
Подскажите пожалуйста как правильно все это делать. Или хотя бы ссылку на что-то более-менее разборчивое на эту тему.

PS И если кто-то порекомендует библиотеку получше со сходным функционалом, то буду тоже рад.
« Последнее редактирование: 29 Марта 2010, 23:53:03 от l0-ki »

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Re: Установка GSL в Ubuntu
« Ответ #1 : 30 Марта 2010, 06:09:25 »
gcc -I/usr/local/include test.c -L/usr/local/lib -lgslили что-то типа того. читай документацию l0-ki она рулит

 

Страница сгенерирована за 0.019 секунд. Запросов: 22.