Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование в *nix (http://forum.oszone.net/forumdisplay.php?f=35)
-   -   Проблема с NetBeans IDE 7.0 (http://forum.oszone.net/showthread.php?t=212002)

.Rock. 26-07-2011 20:44 1720497

Проблема с NetBeans IDE 7.0
 
Здравствуйте. Возникла следующая проблема в NetBeans'е:
любая программа на C++, нормально компилируясь, при запуске выдает ошибку.
Например
программа
Код:

#include <cstdlib>
using namespace std;
int main(int argc, char** argv)
{

    return 0;
}

лог компилятора
Код:

ОЧИСТИТЬ SUCCESSFUL (общее время: 60мс)
mkdir -p build/Debug/GNU-Linux-x86
rm -f build/Debug/GNU-Linux-x86/main.o.d
g++    -c -g -MMD -MP -MF build/Debug/GNU-Linux-x86/main.o.d -o build/Debug/GNU-Linux-x86/main.o main.cpp

ПОСТРОИТЬ SUCCESSFUL (общее время: 136мс)

лог запуска
Код:

"/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf
make[1]: Вход в каталог `/home/andrei/NetBeansProjects/CppApplication_1'
"/usr/bin/make"  -f nbproject/Makefile-Debug.mk dist/Debug/GNU-Linux-x86/cppapplication_1
make[2]: Вход в каталог `/home/andrei/NetBeansProjects/CppApplication_1'
mkdir -p dist/Debug/GNU-Linux-x86
g++    -o dist/Debug/GNU-Linux-x86/cppapplication_1 build/Debug/GNU-Linux-x86/main.o 
/usr/bin/ld: cannot find -lm
collect2: ld returned 1 exit status
make[2]: *** [dist/Debug/GNU-Linux-x86/cppapplication_1] Ошибка 1
make[2]: Выход из каталога `/home/andrei/NetBeansProjects/CppApplication_1'
make[1]: *** [.build-conf] Ошибка 2
make[1]: Выход из каталога `/home/andrei/NetBeansProjects/CppApplication_1'
make: *** [.build-impl] Ошибка 2

ПОСТРОИТЬ FAILED (значение выхода 2, общее время: 162мс)

Есть подозрение, что что-то напортачил в системе...

ruslandh 28-07-2011 09:32 1721350

Или libm не установлен, или не прописан путь до него

.Rock. 28-07-2011 16:23 1721687

libm - это пакет? В менеджере пакетов не нашел. Подскажите, где путь к нему должен быть прописан?
В общем, если можно, ответьте подробнее, делая скидку на то, что линукс поставил пару дней назад.

ruslandh 29-07-2011 07:58 1722037

Нет - это библиотека. Обычно лежит в /usr/lib

Kent 29-07-2011 10:43 1722105

Цитата:

Цитата .Rock.
В менеджере пакетов не нашел. »

glibc-devel

CXXFLAGS=-L/usr/lib

.Rock. 29-07-2011 11:58 1722152

ruslandh, Есть файл /usr/lib/i386-linux-gnu/libm.so . Попробовал переустановить NetBeans, но проблема остается.
Kent, [off]CXXFLAGS=-L/usr/lib"значение - выполнил в терминале. glibc-devel нужно установить?

Kent 29-07-2011 13:13 1722199

Цитата:

Цитата .Rock.
glibc-devel нужно установить? »

Нужно установить, если не установлен. В вашей системе может по-другому называться.

.Rock. 29-07-2011 13:35 1722212

скачал под свою разрядность системы glibc-devel-2.5-12.i386.rpm , не хочет ставиться "не удалось выполнить бинарный файл"
Система Ubuntu 10.04 LTS этот пакет нужен?

Kent 29-07-2011 17:40 1722400

Ищите этот пакет (или похожий) в репозитории своей системы, а не на стороне.

.Rock. 29-07-2011 21:47 1722537

Несколько с относительно похожими названиями поставил, ничего не изменилось. А описание этого пакета в менеджере можете сказать?
Какой-то форум "Гугление показывает, что это файл из glibc-devel, который для Ubuntu называется libc6-dev"
Из менеджера пакетов
"libc6-dev
Embedded GNU C Library: Development Libraries and Header Files"
(уже был установлен)
Вы про этот говорили?

Kent 29-07-2011 22:46 1722588

Наверное, этот пакет. Про описание не скажу, т. к. не пользуюсь Ubuntu.
Вообще-то должна подхватываться библиотека. Поищите информацию про флаги компилятора. Вот для примера: http://unixforum.org/index.php?showt...4&#entry507784

.Rock. 30-07-2011 21:09 1722957

Почитал о флагах, более-менее разобрался...
Код:

~/0$ gcc 0.c -l/usr/lib/i386-linux-gnu
/usr/bin/ld: cannot find -l/usr/lib/i386-linux-gnu
collect2: ld returned 1 exit status

libm.so лежит там...
С установкой LDFLAGS в среде попробовал, все то же.

Kent 30-07-2011 22:34 1722999

L заглавная должна быть. Загляните в man gcc.
И что показывает
Код:

/sbin/ldconfig -p | grep libm.so

.Rock. 31-07-2011 11:04 1723129

Никак не привыкну к учету регистра... Да, в таком виде
Код:

-L/usr/lib/i386-linux-gnu
все нормально компилируется и запускается.
Код:

/sbin/ldconfig -p | grep libm.so
        libm.so.6 (libc6, ABI ОС: Linux 2.6.15) => /lib/i386-linux-gnu/libm.so.6
        libm.so (libc6, ABI ОС: Linux 2.6.15) => /usr/lib/i386-linux-gnu/libm.so

Уезжаю до 14 апреля... Но после, если у вас останется желание помочь, буду рад продолжить эту тему
На случай, если в теме будут посетители... Вопрос остается открытым, из среды программы по-прежнему не запускаются.


Время: 16:53.

Время: 16:53.
© OSzone.net 2001-