Автор Тема: qelectrotech сборка из исходников  (Прочитано 6370 раз)

Оффлайн guzanovmax

  • Давно тут
  • **
  • Сообщений: 153
    • Email
Здравствуйте, уважаемые форумчане!

Прошу помочь в сборке программы "qelectrotech" из исходников (дистрибутив - кентавр 7 64bit). make выдает ошибку, но не могу понять в чем дело - все делаю по инструкции ("install"):

Спойлер
[max@adm-max qelectrotech-0.3rc-src]$ make
make -f Makefile.Release
make[1]: Вход в каталог `/home/max/Рабочий стол/qelectrotech-0.3rc-src'
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQET_ALLOW_OVERRIDE_CED_OPTION -DQET_ALLOW_OVERRIDE_CTBTD_OPTION -DQET_ALLOW_OVERRIDE_CD_OPTION -DQET_LANG_PATH=/usr/local/share/qelectrotech/lang/ -DQET_COMMON_COLLECTION_PATH=/usr/local/share/qelectrotech/elements/ -DQET_COMMON_TBT_PATH=/usr/local/share/qelectrotech/titleblocks/ -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_SQL_LIB -DQT_XML_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtNetwork -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtXml -I/usr/include/qt4/QtSql -I/usr/include/qt4/QtSvg -I/usr/include/qt4 -Isources -Isources/editor -Isources/titleblock -Irelease -Isources/ui -o release/aboutqet.o sources/aboutqet.cpp
/usr/bin/x86_64-alt-linux-g++: No such file or directory
make[1]: *** [release/aboutqet.o] Ошибка 1
make[1]: Выход из каталога `/home/max/Рабочий стол/qelectrotech-0.3rc-src'
make: *** [release] Ошибка 2

Спасибо

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: qelectrotech сборка из исходников
« Ответ #1 : 09.01.2014 11:06:16 »
/usr/bin/x86_64-alt-linux-g++: No such file or directory
apt-get install gcc-c++Там, правда, будет уточняющий вопрос, что-то вроде такого, с поправкой на версию репозитария:
Package gcc-c++ is a virtual package provided by:
  gcc4.5-c++ 4.5.4-alt1.M60P.1 [Installed]
  gcc4.4-c++ 4.4.5-alt3
  gcc4.3-c++ 4.3.2-alt16
  gcc4.1-c++ 4.1.2-alt10
  gcc3.4-c++ 3.4.5-alt14
You should explicitly select one to install.
Реально надо будет gcc<version>-c++, версию уточнить, исходя из установленного gcc:
rpm -qa|grep gcc

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 9 000
Re: qelectrotech сборка из исходников
« Ответ #2 : 09.01.2014 11:07:57 »
А компилятор кто ставить будет ? :) Установите пакет rpm-build и qt4-devel (если, конечно, такой есть в репозиотрии, но именно такой требуется для сборки), после чего повторите сборку.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 9 000
Re: qelectrotech сборка из исходников
« Ответ #3 : 09.01.2014 11:13:55 »
Вообще же, посмотрите в каталоге исходников файлы вроде README, INSTALL. В них частенько можно найти те сборочные зависимости, которые требуются (ну, помимо, собственно, самого gcc-c++). В альте все пакеты для сборки (разработки) имеют имена вроде имя_пакета_требуемого_для_сборки-devel.

Оффлайн guzanovmax

  • Давно тут
  • **
  • Сообщений: 153
    • Email
Re: qelectrotech сборка из исходников
« Ответ #4 : 09.01.2014 11:26:25 »
А компилятор кто ставить будет ? :) Установите пакет rpm-build и qt4-devel (если, конечно, такой есть в репозиотрии, но именно такой требуется для сборки), после чего повторите сборку.
все что вы перечислили уже установлено. Команда qmake-qt4 отрабатывает. Ошибка возникает у команды make. В руководстве по установке написано:
$ qmake (qmake-qt4 для систем основанных на Debian)
$ make
# umask 0022
# make install
rpm -qa|grep gcc

$ rpm -qa|grep gcc
i586-libgcc1-4.7.2-alt7
libgcc1-4.7.2-alt7
gcc-common-1.4.16-alt1
gcc4.7-4.7.2-alt7
gcc-c++-common-1.4.16-alt1


Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: qelectrotech сборка из исходников
« Ответ #5 : 09.01.2014 12:22:34 »
rpm -qa|grep gcc

$ rpm -qa|grep gcc
i586-libgcc1-4.7.2-alt7
libgcc1-4.7.2-alt7
gcc-common-1.4.16-alt1
gcc4.7-4.7.2-alt7
gcc-c++-common-1.4.16-alt1
Я же написал, как понять, что надо сделать
apt-get install gcc4.7-c++gcc-c++-common не имеет отношения к конкретному gcc<N>-c++, это набор общих файлов и, если надо, каталогов для всех вариантов gcc-c++, на то он и common.
« Последнее редактирование: 09.01.2014 12:26:20 от asy »

Оффлайн guzanovmax

  • Давно тут
  • **
  • Сообщений: 153
    • Email
Re: qelectrotech сборка из исходников
« Ответ #6 : 09.01.2014 13:23:59 »
rpm -qa|grep gcc

$ rpm -qa|grep gcc
i586-libgcc1-4.7.2-alt7
libgcc1-4.7.2-alt7
gcc-common-1.4.16-alt1
gcc4.7-4.7.2-alt7
gcc-c++-common-1.4.16-alt1
Я же написал, как понять, что надо сделать
apt-get install gcc4.7-c++gcc-c++-common не имеет отношения к конкретному gcc<N>-c++, это набор общих файлов и, если надо, каталогов для всех вариантов gcc-c++, на то он и common.
Спасибо, но теперь другая ошибка

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 9 000
Re: qelectrotech сборка из исходников
« Ответ #7 : 09.01.2014 13:28:44 »
ИМХО, не хватает зависимости. Поищите на сайте, в исходниках или в интернете, какие именно девел пакеты нужны, ведь список где-то должен быть (может быть что-то у вас не установлено или установлено, но не той версии).

Оффлайн Skull

  • Глобальный модератор
  • *****
  • Сообщений: 19 926
    • Домашняя страница
    • Email
Re: qelectrotech сборка из исходников
« Ответ #8 : 09.01.2014 14:07:52 »
ИМХО, не хватает зависимости. Поищите на сайте, в исходниках или в интернете, какие именно девел пакеты нужны, ведь список где-то должен быть (может быть что-то у вас не установлено или установлено, но не той версии).
Там внутренняя ошибка, которая, скорее всего, вылезла при сборке с as-needed.
Андрей Черепанов (cas@)

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: qelectrotech сборка из исходников
« Ответ #9 : 09.01.2014 14:21:19 »
Там внутренняя ошибка, которая, скорее всего, вылезла при сборке с as-needed.
Кстати да. Можно попробовать
LDFLAGS="$LDFLAGS -Wl,--no-as-needed" make

Оффлайн guzanovmax

  • Давно тут
  • **
  • Сообщений: 153
    • Email
Re: qelectrotech сборка из исходников
« Ответ #10 : 13.01.2014 14:06:04 »
Там внутренняя ошибка, которая, скорее всего, вылезла при сборке с as-needed.
Кстати да. Можно попробовать
LDFLAGS="$LDFLAGS -Wl,--no-as-needed" make
[max@adm-max qelectrotech-0.3rc-src]$ LDFLAGS="$LDFLAGS -Wl,--no-as-needed" make
make -f Makefile.Release
make[1]: Вход в каталог `/home/max/Рабочий стол/qelectrotech-0.3rc-src'
g++ -Wl,-O1 -o qelectrotech release/aboutqet.o release/autonumerotation.o release/basicmoveelementshandler.o release/borderproperties.o release/borderpropertieswidget.o release/bordertitleblock.o release/closediagramsdialog.o release/conductor.o release/conductorautonumerotation.o release/conductorautonumerotationwidget.o release/conductorprofile.o release/conductorproperties.o release/conductorpropertieswidget.o release/conductorsegment.o release/conductortextitem.o release/configdialog.o release/configpages.o release/customelement.o release/diagram.o release/diagramcommands.o release/diagramcontent.o release/diagramcontext.o release/diagramcontextwidget.o release/diagramimageitem.o release/diagramposition.o release/diagramprintdialog.o release/diagramschooser.o release/diagramtextitem.o release/diagramview.o release/element.o release/elementdefinition.o release/elementdeleter.o release/elementdialog.o release/elementscategorieslist.o release/elementscategorieswidget.o release/elementscategory.o release/elementscategorydeleter.o release/elementscategoryeditor.o release/elementscollection.o release/elementscollectioncache.o release/elementslocation.o release/elementsmover.o release/elementspanel.o release/elementspanelwidget.o release/elementtextitem.o release/elementtextsmover.o release/exportdialog.o release/exportproperties.o release/exportpropertieswidget.o release/fileelementdefinition.o release/fileelementscategory.o release/fileelementscollection.o release/fixedelement.o release/genericpanel.o release/ghostelement.o release/independenttextitem.o release/integrationmoveelementshandler.o release/interactivemoveelementshandler.o release/main.o release/moveelementsdescription.o release/nameslist.o release/nameslistwidget.o release/newelementwizard.o release/nomenclature.o release/numerotationcontext.o release/numerotationcontextcommands.o release/orientationset.o release/orientationsetwidget.o release/projectconfigpages.o release/projectview.o release/qet.o release/qetapp.o release/qetarguments.o release/qetdiagrameditor.o release/qeticons.o release/qetmainwindow.o release/qetmessagebox.o release/qetprintpreviewdialog.o release/qetproject.o release/qetregexpvalidator.o release/qetresult.o release/qetsingleapplication.o release/qettabbar.o release/qettabwidget.o release/qfilenameedit.o release/qgimanager.o release/qtextorientationspinboxwidget.o release/qtextorientationwidget.o release/recentfiles.o release/terminal.o release/titleblockcell.o release/titleblockproperties.o release/titleblockpropertieswidget.o release/titleblocktemplate.o release/titleblocktemplaterenderer.o release/treecoloranimation.o release/xmlelementdefinition.o release/xmlelementscategory.o release/xmlelementscollection.o release/arceditor.o release/customelementgraphicpart.o release/customelementpart.o release/editorcommands.o release/elementitemeditor.o release/elementprimitivedecorator.o release/elementscene.o release/elementview.o release/ellipseeditor.o release/lineeditor.o release/partarc.o release/partellipse.o release/partline.o release/partpolygon.o release/partrectangle.o release/partterminal.o release/parttext.o release/parttextfield.o release/polygoneditor.o release/qetelementeditor.o release/rectangleeditor.o release/styleeditor.o release/terminaleditor.o release/texteditor.o release/textfieldeditor.o release/dimension.o release/dimensionwidget.o release/gridlayoutanimation.o release/helpercell.o release/integrationmovetemplateshandler.o release/qettemplateeditor.o release/splittedhelpercell.o release/templatecellsset.o release/templatecellwidget.o release/templatecommands.o release/templatedeleter.o release/templatelocation.o release/templatelocationchooser.o release/templatelocationsaver.o release/templatelogomanager.o release/templatescollection.o release/templateview.o release/templatevisualcell.o release/richtexteditor.o release/diagramselection.o release/dialogautonum.o release/dialogwaiting.o release/numparteditorw.o release/selectautonumw.o release/moc_aboutqet.o release/moc_autonumerotation.o release/moc_basicmoveelementshandler.o release/moc_borderpropertieswidget.o release/moc_bordertitleblock.o release/moc_closediagramsdialog.o release/moc_conductor.o release/moc_conductorautonumerotationwidget.o release/moc_conductorpropertieswidget.o release/moc_conductortextitem.o release/moc_configdialog.o release/moc_configpage.o release/moc_configpages.o release/moc_customelement.o release/moc_diagram.o release/moc_diagramcontextwidget.o release/moc_diagramimageitem.o release/moc_diagramprintdialog.o release/moc_diagramschooser.o release/moc_diagramtextitem.o release/moc_diagramview.o release/moc_element.o release/moc_elementdefinition.o release/moc_elementdeleter.o release/moc_elementdialog.o release/moc_elementscategorieslist.o release/moc_elementscategorieswidget.o release/moc_elementscategory.o release/moc_elementscategorydeleter.o release/moc_elementscategoryeditor.o release/moc_elementscollection.o release/moc_elementscollectionitem.o release/moc_elementspanel.o release/moc_elementspanelwidget.o release/moc_elementtextitem.o release/moc_exportdialog.o release/moc_exportpropertieswidget.o release/moc_fileelementscategory.o release/moc_fileelementscollection.o release/moc_fixedelement.o release/moc_genericpanel.o release/moc_ghostelement.o release/moc_independenttextitem.o release/moc_integrationmoveelementshandler.o release/moc_interactivemoveelementshandler.o release/moc_moveelementsdescription.o release/moc_moveelementshandler.o release/moc_nameslistwidget.o release/moc_newelementwizard.o release/moc_nomenclature.o release/moc_orientationsetwidget.o release/moc_projectconfigpages.o release/moc_projectview.o release/moc_qetapp.o release/moc_qetarguments.o release/moc_qetdiagrameditor.o release/moc_qetmainwindow.o release/moc_qetprintpreviewdialog.o release/moc_qetproject.o release/moc_qetregexpvalidator.o release/moc_qetsingleapplication.o release/moc_qettabbar.o release/moc_qettabwidget.o release/moc_qfilenameedit.o release/moc_qtextorientationspinboxwidget.o release/moc_qtextorientationwidget.o release/moc_recentfiles.o release/moc_titleblockpropertieswidget.o release/moc_titleblocktemplate.o release/moc_titleblocktemplaterenderer.o release/moc_xmlelementdefinition.o release/moc_xmlelementscategory.o release/moc_xmlelementscollection.o release/moc_diagramselection.o release/moc_dialogautonum.o release/moc_dialogwaiting.o release/moc_numparteditorw.o release/moc_selectautonumw.o release/moc_arceditor.o release/moc_elementitemeditor.o release/moc_elementprimitivedecorator.o release/moc_elementscene.o release/moc_elementview.o release/moc_ellipseeditor.o release/moc_lineeditor.o release/moc_parttext.o release/moc_parttextfield.o release/moc_polygoneditor.o release/moc_qetelementeditor.o release/moc_rectangleeditor.o release/moc_styleeditor.o release/moc_terminaleditor.o release/moc_texteditor.o release/moc_textfieldeditor.o release/moc_dimensionwidget.o release/moc_helpercell.o release/moc_integrationmovetemplateshandler.o release/moc_movetemplateshandler.o release/moc_qettemplateeditor.o release/moc_splittedhelpercell.o release/moc_templatecellwidget.o release/moc_templatedeleter.o release/moc_templatelocationchooser.o release/moc_templatelocationsaver.o release/moc_templatelogomanager.o release/moc_templatescollection.o release/moc_templateview.o release/moc_richtexteditor_p.o release/qrc_qelectrotech.o    -L/usr/lib64 -lQtSvg -L/usr/X11R6/lib64 -L/usr/lib64 -L/usr/X11R6/lib -lQtSql -lQtXml -lQtGui -lQtNetwork -lQtCore -lpthread
release/elementscategorieslist.o: In function `ElementsCategoriesList::selectedLocation() const':
elementscategorieslist.cpp:(.text+0xcb): undefined reference to `ElementsLocation GenericPanel::valueForItem<ElementsLocation>(QTreeWidgetItem*) const'
release/elementscategorieslist.o: In function `ElementsCategoriesList::selectionChanged(QTreeWidgetItem*, QTreeWidgetItem*)':
elementscategorieslist.cpp:(.text+0x175): undefined reference to `ElementsLocation GenericPanel::valueForItem<ElementsLocation>(QTreeWidgetItem*) const'
release/elementspanel.o: In function `ElementsPanel::slot_doubleClick(QTreeWidgetItem*, int)':
elementspanel.cpp:(.text+0x162a): undefined reference to `ElementsLocation GenericPanel::valueForItem<ElementsLocation>(QTreeWidgetItem*) const'
elementspanel.cpp:(.text+0x165c): undefined reference to `TitleBlockTemplateLocation GenericPanel::valueForItem<TitleBlockTemplateLocation>(QTreeWidgetItem*) const'
elementspanel.cpp:(.text+0x1681): undefined reference to `QETProject* GenericPanel::valueForItem<QETProject*>(QTreeWidgetItem*) const'
elementspanel.cpp:(.text+0x1699): undefined reference to `Diagram* GenericPanel::valueForItem<Diagram*>(QTreeWidgetItem*) const'
collect2: error: ld returned 1 exit status
make[1]: *** [qelectrotech] Ошибка 1
make[1]: Выход из каталога `/home/max/Рабочий стол/qelectrotech-0.3rc-src'
make: *** [release] Ошибка 2

Честно, ничего не понял, не мой уровень...
« Последнее редактирование: 13.01.2014 18:39:52 от Skull »

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 9 000
Re: qelectrotech сборка из исходников
« Ответ #11 : 13.01.2014 14:20:04 »
Подождите, подождите. От пользователя запускается сборка посредством rpm -ba ..., но простой (для проверки) запуск make должен от рута выполняться.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: qelectrotech сборка из исходников
« Ответ #12 : 13.01.2014 14:35:04 »
(для проверки) запуск make должен от рута выполняться.
Это с чего бы ?! Нет. Речь же не про make install, а просто про make - сборка.

Оффлайн sb

  • Модератор глобальный
  • *****
  • Сообщений: 9 000
Re: qelectrotech сборка из исходников
« Ответ #13 : 13.01.2014 14:41:09 »
(для проверки) запуск make должен от рута выполняться.
Это с чего бы ?! Нет. Речь же не про make install, а просто про make - сборка.
Ну, хорошо, ежели так, запишем :)

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 104
Re: qelectrotech сборка из исходников
« Ответ #14 : 13.01.2014 14:46:00 »
Ну, хорошо, ежели так, запишем :)
Ну, тогда, до кучи. Просто по make, если склероз не изменяет, выполняется правило all, в которое правило install не включают. Но никто и ничто не мешает пошутить, кроме канделябра товарища. ;)