Russian Qt Forum

Qt => Установка, сборка, отладка, тестирование => Тема начата: Karl-Philipp от Май 24, 2009, 10:44



Название: make: g++: Command not found
Отправлено: Karl-Philipp от Май 24, 2009, 10:44
Установил Kubuntu 9.04.
qt-sdk-linux-x86-opensource-2009.02.bin установил в директорию /home/qtsdk-2009.02

при попытке откомпилировать в консоли вижу следующее:
Цитировать
Running build steps for project sdi...
Starting: /home/ruslan/qtsdk-2009.02/qt/bin/qmake /home/ruslan/work/code/alpha/sdi.pro -spec linux-g++ -r CONFIG+=debug
Exited with code 0.
Starting: /usr/bin/make -w
make: Entering directory `/home/ruslan/work/code/alpha'
g++ -c -pipe -g -Wall -W -D_REENTRANT -DQT_SQL_LIB -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../../qtsdk-2009.02/qt/mkspecs/linux-g++ -I. -I../../../qtsdk-2009.02/qt/include/QtCore -I../../../qtsdk-2009.02/qt/include/QtGui -I../../../qtsdk-2009.02/qt/include/QtSql -I../../../qtsdk-2009.02/qt/include -I. -I.build/unix/moc -I/home/ruslan/work/code/alpha/.build/unix/ui -o .build/unix/obj/debug/main.o src/main.cpp
make: g++: Command not found
make: *** [.build/unix/obj/debug/main.o] Error 127
make: Leaving directory `/home/ruslan/work/code/alpha'
Exited with code 2.
Error while building project sdi
When executing build step 'Make'

Похоже, что не запускается компилятор. Подскажите, пожалуйста, в чём проблема?
P.S. С Линуксом только начал разбираться.

----добавил----:

Компьютер к Интернету не подключён, поэтому скачал sdk и устанавливал так:
- в директории /home/qtsdk-2009.02 выполнил команду: chmod u+x qt-sdk-linux-x86-opensource-2009.02.bin

- далее в консоли выполнил: ./qt-sdk-linux-x86-opensource-2009.02.bin

Всё установилось нормально. Только компилировать почему-то не хочет.


Название: Re: make: g++: Command not found
Отправлено: Авварон от Май 24, 2009, 18:45
sudo aptitude install build-essential


Название: Re: make: g++: Command not found
Отправлено: Swappp от Май 24, 2009, 20:46
aptitude install qt-creator


Название: Re: make: g++: Command not found
Отправлено: Авварон от Май 24, 2009, 20:51
без интренета?:)


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 25, 2009, 16:37
Спасибо, друзья!
Только вот Авварон прав -  компьютер пока без Интернета. Надо как-то установить :)


Название: Re: make: g++: Command not found
Отправлено: Авварон от Май 25, 2009, 19:08
моя команда попросит вставить диск. По крайней мере, когда я сидел на  бубенте билд-эссеншл вместе со всеми зависимостями (в тч g++) лежал на диске с системой


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 25, 2009, 19:17
моя команда попросит вставить диск. По крайней мере, когда я сидел на  бубенте билд-эссеншл вместе со всеми зависимостями (в тч g++) лежал на диске с системой
Диск, видать, DVD-эдишн был, а у меня - CD.
В ответ на твою команду написало:
Цитировать
Unknown command "build-essential"


Название: Re: make: g++: Command not found
Отправлено: Авварон от Май 25, 2009, 19:46
бубента не бывает на двд на сколько мне помнится. значит что-то неправильно набрал - build-essential это не команда а имя пакета (надеюсь ты все 4 слова в 1й строке набирал?) можешь окрыть менеджер пакетов (либо kPackage либо Adept - не знаю, что сейчас в кубунте используется и сделать поиск пакета build-essential). Только в этом случае cd лучше сразу вставь
PS: вместо aptitude можешь набрать apt-get


Название: Re: make: g++: Command not found
Отправлено: sLiva от Май 25, 2009, 20:31
бубента не бывает на двд на сколько мне помнится

Как это не бывает, все есть, просто ссылка спрятана на странице загрузке чуть ниже

http://www.ubuntu.com/getubuntu/downloadmirrors#dvd

Вот миррор яндекса

http://mirror.yandex.ru/ubuntu-cdimage/releases/jaunty/release/

build-essential на DVD есть


Название: Re: make: g++: Command not found
Отправлено: Авварон от Май 25, 2009, 20:37

Как это не бывает, все есть, просто ссылка спрятана на странице загрузке чуть ниже

http://www.ubuntu.com/getubuntu/downloadmirrors#dvd

Вот миррор яндекса

http://mirror.yandex.ru/ubuntu-cdimage/releases/jaunty/release/

build-essential на DVD есть
ты мне предлагаешь бубенту качать?:)
и не путай человека с cd, на нём тоже пакет есть...


Название: Re: make: g++: Command not found
Отправлено: sLiva от Май 25, 2009, 20:57
Цитировать
ты мне предлагаешь бубенту качать?:)

не тебе а terlan-ну, на CD очень мало пакетов, вообще очень интернет-зависимый дистр

Цитировать
и не путай человека с cd, на нём тоже пакет есть...

сейчас посмотрел, да на CD тоже есть


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 29, 2009, 12:56
Всем спасибо, но только поставил нужное - полетели иксы на Кубунту.

Поставил Убунту :)

Вроде бы всё нормально. По аналогии поставил build-essential с помощью synaptic.
При компиляции программы создаётся только мэйкфайл в директории программы, а вспомогательные папки (а также makefile.release && makefile.debug) - нет :(
Выходит, что qmake не может создать их.
Видимо не хватает каких-то прав.

Как это побороть?

----------добавил--------------

вроде бы нашёл - надо изменить права директории с файлами, прав?

----------добавил--------------

Просто пересобрал проект (изменил немного про-файл, который был заточен под win)



Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 29, 2009, 16:04
Вроде продвинулся на шажок, но появилась следующая ошибка:

Цитировать
Starting: /home/ruslan/qtsdk-2009.02/qt/bin/qmake /home/ruslan/plasma/sc1505stable/sc.pro -spec linux-g++ -r CONFIG+=debug
Exited with code 0.
Starting: /usr/bin/make -w
make: Entering directory `/home/ruslan/plasma/sc1505stable'
g++ -Wl,-rpath,/home/ruslan/qtsdk-2009.02/qt/lib -o sc .build/unix/obj/debug/main.o .build/unix/obj/debug/sc.o .build/unix/obj/debug/sequenceanalyzer.o .build/unix/obj/debug/moc_sc.o -L/home/ruslan/qtsdk-2009.02/qt/lib -lQtGui -L/home/ruslan/qtsdk-2009.02/qt/lib -L/usr/X11R6/lib -pthread -lfreetype -lgobject-2.0 -lSM -lICE -pthread -pthread -lXrender -lfontconfig -lXext -lX11 -lQtCore -lm -pthread -lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread
/usr/bin/ld: cannot find -lfreetype
collect2: ld returned 1 exit status
make: Leaving directory `/home/ruslan/plasma/sc1505stable'
make: *** [sc] Error 1
Exited with code 2.
Error while building project sc
When executing build step 'Make'


Название: Re: make: g++: Command not found
Отправлено: Valeriy от Май 29, 2009, 20:51
/usr/bin/ld: cannot find -lfreetype     -- линковщик не нашёл либу freetype. Её надо установить.

Вообще, убунту - откровенно говоря плохой выбор для компа, не подключённого к интернету и предназначенного для разработки. Стандартная поставка не включает в себя очень много пакетов для разработки. И тем более убунту. Если в кубунте ещё можно ожидать наличие необходимых либ для Qt, то в убунте многих просто нет. Рекомендую или решить вопрос с интернетом, или поставить что-нибудь, что ставится с двд и идёт с кучей пакетов для разработки.


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 29, 2009, 21:16
Компьютер будет подключен к Интернету скоро, но работать надо уже :)
Спасибо за разъяснение.

Посмотрел в Установщике (synaptic) там уже есть (установлен) пакет libfreetype6.
Посмотрел вкладку Dependencies этого пакета, там были строки: Conflicts: freetype, Replaces: freetype0, Replaces: freetype1

Я так понимаю это конфликт библиотек? Как на данном этапе это можно исправить?


Название: Re: make: g++: Command not found
Отправлено: Valeriy от Май 29, 2009, 22:01
Кроме libfreetype6 есть ещё libfreetype6-dev, которая содержит файлы для разработки. Вот её надо установить. Печально то, что кроме неё, нужно установить ещё очень много всего. (Установишь её - полезут другие ошибки).

> Как на данном этапе это можно исправить?

Можно попробовать
sudo ln -s /usr/lib/libfreetype.so.6.3.20    /usr/lib/libfreetype.so
Но лучше было бы установить пакет. И это не спасёт от отсутствия других либ.


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Май 29, 2009, 22:06
Валерий, спасибо за ликбез. Вижу, что без Интернета не будет работы.

Интересно, а Кубунту, поставленная с аналогичного диска (Cd), будет содержать нужные дев-пакеты?


Название: Re: make: g++: Command not found
Отправлено: Valeriy от Май 29, 2009, 22:12
Нет, все не будет. Хотя доустанавливать придётся меньше.


Название: Re: make: g++: Command not found
Отправлено: ритт от Июнь 06, 2009, 21:11
эх, хотел бы я посоветовать перейти на гинту, но, боюсь, для новичка это будет совсем непросто )
а инет всё-равно потребуется...

список подзависимых пакетов для кутэ я где-то здесь приводил, если не путаю


Название: Re: make: g++: Command not found
Отправлено: Rcus от Июнь 06, 2009, 21:36
Дженту конечно удобна для разработчика, ее легко держать в транке и все такое, но если поблизости нет второго компьютера с доступом в интернет или распечатки хендбука то есть реальный шанс не дойти до компиляции иксов :)


Название: Re: make: g++: Command not found
Отправлено: Alex Custov от Июнь 07, 2009, 18:05
Кроме libfreetype6 есть ещё libfreetype6-dev, которая содержит файлы для разработки. Вот её надо установить. Печально то, что кроме неё, нужно установить ещё очень много всего. (Установишь её - полезут другие ошибки).

# aptitude install xorg-dev

поставит почти всё что нужно, метапакеты рулят ;)


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Июнь 17, 2009, 11:57
АХ, спасибо большое, сделал, а до этого (еще раньше) выполнил sudo aptitude install build-essential.

Но вываливается другая ошибка:
Цитировать
Running build steps for project sc...
Configuration unchanged, skipping QMake step.
Starting: /usr/bin/make -w
make: Вход в каталог `/home/ruslan/plasma/sc1505stable'
g++ -Wl,-rpath,/home/ruslan/qtsdk-2009.02/qt/lib -o sc .build/unix/obj/debug/main.o .build/unix/obj/debug/sc.o .build/unix/obj/debug/sequenceanalyzer.o .build/unix/obj/debug/moc_sc.o -L/home/ruslan/qtsdk-2009.02/qt/lib -lQtGui -L/home/ruslan/qtsdk-2009.02/qt/lib -L/usr/X11R6/lib -pthread -lfreetype -lgobject-2.0 -lSM -lICE -pthread -pthread -lXrender -lfontconfig -lXext -lX11 -lQtCore -lm -pthread -lgthread-2.0 -lrt -lglib-2.0 -ldl -lpthread
/usr/bin/ld: cannot find -lgobject-2.0
collect2: выполнение ld завершилось с кодом возврата 1
make: Выход из каталога `/home/ruslan/plasma/sc1505stable'
make: *** [sc] Ошибка 1
Exited with code 2.
Error while building project sc
When executing build step 'Make'


Название: Re: make: g++: Command not found
Отправлено: Авварон от Июнь 17, 2009, 13:07
Код:
sudo aptitude show libqt4-dev                                                                                                                           
Пакет: libqt4-dev                                                                                                                                                         
Состояние: не установлен                                                                                                                                                   
Версия: 4.5.0-0ubuntu4.1                                                                                                                                                   
Приоритет: необязательный                                                                                                                                                 
Раздел: libdevel                                                                                                                                                           
Сопровождающий: Kubuntu Developers <kubuntu-devel@lists.ubuntu.com>                                                                                                       
Размер в распакованном виде: 24,1M                                                                                                                                         
Зависимости: libc6 (>= 2.4), libgcc1 (>= 1:4.1.1), libqt4-dbus (= 4.5.0-0ubuntu4.1), libqt4-qt3support (= 4.5.0-0ubuntu4.1), libqt4-xml (= 4.5.0-0ubuntu4.1), libqtcore4 (=
                        4.5.0-0ubuntu4.1), libqtgui4 (= 4.5.0-0ubuntu4.1), libstdc++6 (>= 4.1.1), zlib1g (>= 1:1.1.4), libqt4-network (= 4.5.0-0ubuntu4.1), libqt4-svg (=
                        4.5.0-0ubuntu4.1), libqt4-webkit (= 4.5.0-0ubuntu4.1), libqt4-sql (= 4.5.0-0ubuntu4.1), libqt4-script (= 4.5.0-0ubuntu4.1), libqt4-scripttools (=
                        4.5.0-0ubuntu4.1), libqt4-xmlpatterns (= 4.5.0-0ubuntu4.1), libqt4-designer (= 4.5.0-0ubuntu4.1), libqt4-help (= 4.5.0-0ubuntu4.1), libqt4-assistant (=
                        4.5.0-0ubuntu4.1), libqt4-test (= 4.5.0-0ubuntu4.1), qt4-qmake (= 4.5.0-0ubuntu4.1), libxext-dev (>= 4.3.0.dfsg.1-4), libxrandr-dev (>= 4.3.0.dfsg.1-4),
                        x11proto-core-dev, libsm-dev (>= 4.3.0.dfsg.1-4), libxmu-dev (>= 4.3.0.dfsg.1-4), libice-dev (>= 4.3.0.dfsg.1-4), libx11-dev (>= 4.3.0.dfsg.1-4), libxt-dev
                        (>= 4.3.0.dfsg.1-4), libxrender-dev, libxcursor-dev, libxinerama-dev, libxi-dev, libmng-dev (>= 1.0.3), libpng12-0-dev, libjpeg62-dev, zlib1g-dev,
                        libfreetype6-dev, xlibmesa-gl-dev | libgl-dev, libglu1-xorg-dev | libglu1-mesa-dev | libglu-dev, libxft-dev, libaudio-dev, libpq-dev, libglib2.0-dev,
                        libsqlite0-dev, libssl-dev
Пред-зависимости: dpkg (>= 1.14.12ubuntu3)
Рекомендует: libqt4-opengl-dev (= 4.5.0-0ubuntu4.1)
Предлагает: qt4-dev-tools, qt4-doc, libmysqlclient15-dev, libsqlite3-dev, libiodbc2-dev
и так далее. Сдается тебе нужен пакет libglib2.0-dev (судя по зависимостям). Помню была такая штука в Debian sid когда я собирал кде, но что я докачивал хоть убей не помню (гугл говорит нужно xlibs-dev но в убунте такой пакет отсутствует)


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Июнь 17, 2009, 14:13
Может быть проблема в том, что SDK устанавливался из скачанного с qtsoftware.com пакета в директорию /home и из-за этого некоторые библиотеки не находятся, так как не прописаны нужные пути?


Название: Re: make: g++: Command not found
Отправлено: Авварон от Июнь 17, 2009, 14:55
нет, дело не в этом... можешь конечно сделать find / -name libgobject* но думаю он не найдет:) вообще линукс без интернета зло. С пакетом наврал - он у меня НЕ стоит, библиотека ЕСТь.
added: а вот libglib2.0-0 уже больше похоже на правду.
added2: пруфлинк http://packages.debian.org/cgi-bin/search_contents.pl?word=libgobject-2.0.so.0&searchmode=searchfiles&case=insensitive&version=unstable&arch=i386 (http://packages.debian.org/cgi-bin/search_contents.pl?word=libgobject-2.0.so.0&searchmode=searchfiles&case=insensitive&version=unstable&arch=i386)


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Июнь 17, 2009, 15:02
>> вообще линукс без интернета зло.
дык, Интернет то подключил уже :)


Название: Re: make: g++: Command not found
Отправлено: Авварон от Июнь 17, 2009, 15:08
так в чем проблема? sudo aptitude install libglib2.0-dev тебе ЩАЗтье


Название: Re: make: g++: Command not found
Отправлено: Karl-Philipp от Июнь 17, 2009, 15:12
та-дам!
Авварон, спасибо большое :)