[собрали][qt 4.6.0, qwt 5.2.1] не могу собрать простейший пример

elenangel

собираю вот этот пример рисования графика с использованием qwt
получаю ошибку при сборке
 

C:\Qt\QwtBeginner>qmake

C:\Qt\QwtBeginner>mingw32-make
mingw32-make -f Makefile.Debug
mingw32-make[1]: Entering directory `C:/Qt/QwtBeginner'
g++ -enable-stdcall-fixup -Wl,-enable-auto-import -Wl,-enable-runtime-pseudo-reloc -mthreads -Wl -Wl,-subsystem,windows -o debug\QwtBeginner.exe debug/QwtBeginner.o debug/main.o debug/moc_QwtBeginner.o -L"c:\Qt\2010.02.1\qt\lib" -lmingw32
-lqtmaind -LC:/Qt/qwt-5.2.1/lib -lqwt -lQtGuid4 -lQtCored4
c:/qt/2010.02.1/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: cannot find -lqwt
collect2: ld returned 1 exit status
mingw32-make[1]: *** [debug\QwtBeginner.exe] Error 1
mingw32-make[1]: Leaving directory `C:/Qt/QwtBeginner'
mingw32-make: *** [debug] Error 2

C:\Qt\QwtBeginner>

подскажите чем оно может быть вызвано?

tamusyav

Qwt собран?

elenangel

вроде собран.
я делал

qmake
mingw32-make
mingw32-make install

и никаких ошибок не было.
вот вывод, извиняюсь за длину.
 C:\Qt\qwt-5.2.1>qmake

C:\Qt\qwt-5.2.1>mingw32-make
cd src\ && mingw32-make -f Makefile
mingw32-make[1]: Entering directory `C:/Qt/qwt-5.2.1/src'
mingw32-make -f Makefile.Debug
mingw32-make[2]: Entering directory `C:/Qt/qwt-5.2.1/src'
mingw32-make[2]: Nothing to be done for `first'.
mingw32-make[2]: Leaving directory `C:/Qt/qwt-5.2.1/src'
mingw32-make[1]: Leaving directory `C:/Qt/qwt-5.2.1/src'
cd textengines\ && mingw32-make -f Makefile
mingw32-make[1]: Entering directory `C:/Qt/qwt-5.2.1/textengines'
mingw32-make[1]: Nothing to be done for `first'.
mingw32-make[1]: Leaving directory `C:/Qt/qwt-5.2.1/textengines'
cd designer\ && mingw32-make -f Makefile
mingw32-make[1]: Entering directory `C:/Qt/qwt-5.2.1/designer'
mingw32-make -f Makefile.Debug
mingw32-make[2]: Entering directory `C:/Qt/qwt-5.2.1/designer'
mingw32-make[2]: Nothing to be done for `first'.
mingw32-make[2]: Leaving directory `C:/Qt/qwt-5.2.1/designer'
mingw32-make[1]: Leaving directory `C:/Qt/qwt-5.2.1/designer'

C:\Qt\qwt-5.2.1>mingw32-make install
cd src\ && mingw32-make -f Makefile install
mingw32-make[1]: Entering directory `C:/Qt/qwt-5.2.1/src'
mingw32-make -f Makefile.Debug install
mingw32-make[2]: Entering directory `C:/Qt/qwt-5.2.1/src'
copy /y "..\lib\libqwtd.a" "c:\Qt\Qwt-5.2.1\lib\libqwtd.a"
The file cannot be copied onto itself.
0 file(s) copied.
mingw32-make[2]: [install_target] Error 1 (ignored)
copy /y c:\Qt\qwt-5.2.1\src\qwt.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_abstract_scale_draw.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_array.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_color_map.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_clipper.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_double_interval.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_double_rect.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_dyngrid_layout.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_global.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_layout_metrics.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_math.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_magnifier.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_paint_buffer.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_painter.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_panner.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_picker.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_picker_machine.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_polygon.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_round_scale_draw.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_scale_div.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_scale_draw.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_scale_engine.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_scale_map.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_spline.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_symbol.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_text_engine.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_text_label.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_text.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_valuelist.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_curve_fitter.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_data.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_event_pattern.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_interval_data.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_legend.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_legend_item.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_legend_itemmanager.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_curve.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_dict.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_grid.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_item.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_layout.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_marker.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_printfilter.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_rasteritem.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_spectrogram.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_scaleitem.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_canvas.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_rescaler.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_panner.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_picker.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_zoomer.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_plot_magnifier.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_raster_data.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_scale_widget.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_abstract_slider.h c:\Qt\Qwt-5.2.1\include
1 file(s) copied.
copy /y c:\Qt\qwt-5.2.1\src\qwt_abstract_scale.h c:\Qt\Qwt-5.2.1\include

procenkotanya

не указан путь к библиотеке qwt.a (ключик -L)
да и судя по ошибкам в последнем листинге, сам qwt криво сконфигурен/устанавливается

elenangel

сегодня пробую то же самое на linux
поставил qtcreator и qwt из svn:

sudo apt-get install g++
sudo apt-get install subversion
sudo apt-get install qtcreator
svn co http://qwt.svn.sourceforge.net/svnroot/qwt/branches/qwt-5.2
cd qwt-5.2
qmake
make
sudo make install

в проекте в файле *.prf вписал версию QwtVersion = 5.2.1-svn предварительно посмотрев название директории куда она поставилась в /usr/local
теперь сборка проходит, но собранный файл не стартует:

Выполняется сборка проекта QwtBeginner...
Запускается: /usr/bin/make clean -w
make: Вход в каталог `/home/beaver/qwt/QwtBeginner'
rm -f moc_QwtBeginner.cpp
rm -f QwtBeginner.o main.o moc_QwtBeginner.o
rm -f *~ core *.core
make: Выход из каталога `/home/beaver/qwt/QwtBeginner'
Завершено с кодом возврата 0.
Настройки не изменились, этап QMake пропускается.
Запускается: /usr/bin/make -w
make: Вход в каталог `/home/beaver/qwt/QwtBeginner'
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/local/qwt-5.2.1-svn/include -I. -o QwtBeginner.o QwtBeginner.cpp
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/local/qwt-5.2.1-svn/include -I. -o main.o main.cpp
/usr/bin/moc-qt4 -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/local/qwt-5.2.1-svn/include -I. QwtBeginner.h -o moc_QwtBeginner.cpp
g++ -c -pipe -O2 -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I/usr/local/qwt-5.2.1-svn/include -I. -o moc_QwtBeginner.o moc_QwtBeginner.cpp
g++ -Wl,-O1 -o QwtBeginner QwtBeginner.o main.o moc_QwtBeginner.o -L/usr/lib -L/usr/local/qwt-5.2.1-svn/lib -lqwt -lQtGui -lQtCore -lpthread
make: Выход из каталога `/home/beaver/qwt/QwtBeginner'
Завершено с кодом возврата 0.

 

Запускается /home/beaver/qwt/QwtBeginner/QwtBeginner...
/home/beaver/qwt/QwtBeginner/QwtBeginner: error while loading shared libraries: libqwt.so.5: cannot open shared object file: No such file or directory

/home/beaver/qwt/QwtBeginner/QwtBeginner завершилась с кодом 127

conv3rsje

/usr/local/qwt-5.2.1-svn/lib
Вот это надо прописать либо в /etc/ld.so.conf (или кинуть в /etc/ld.so.conf.d либо в LD_LIBRARY_PATH прописать.
Подробнее в ld.so(8)

elenangel

создал в /etc/ld.so.conf.d файл qwt.conf с содержимым /usr/local/qwt-5.2.1-svn/lib
работает!
огромное спасибо!

elenangel

поправка.
просто добавление файла qwt.conf проблему не решает.
я еще сделал
 
  
comp4 ~$ cd /usr/lib
comp4 /usr/lib $ sudo ln /usr/local/qwt-5.2.1-svn/lib/libqwt.so
comp4 /usr/lib $ sudo ln /usr/local/qwt-5.2.1-svn/lib/libqwt.so.5
comp4 /usr/lib $ sudo ln /usr/local/qwt-5.2.1-svn/lib/libqwt.so.5.2
comp4 /usr/lib $ sudo ln /usr/local/qwt-5.2.1-svn/lib/libqwt.so.5.2.1

это я для чистоты эксперимента на другой машине проверял.

procenkotanya

не, это неправильно. надо было sudo ldconfig сделать

elenangel

а он тоже самое сделал бы?

procenkotanya

нет
Оставить комментарий
Имя или ник:
Комментарий: