Страниц: 1 [2] 3
  Печать  
Автор Тема: CppUnit  (Прочитано 24832 раз)
mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #15 : Июля 21, 2009, 04:56:06 pm »

Блин, тут не так то всё и просто. У тебя в config/  установлена ссылка на:

config.guess -> /usr/share/automake-1.10/config.guess

У меня же самая поздняя версия:

/usr/share/automake-1.7

Теперь мне ещё и automake собирать. А-аааааааааа... Sad
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #16 : Июля 21, 2009, 05:06:44 pm »

Я же сказал, сотри эти линки, на их место поставь файлы из оригинального архива.

Или достань их из этого архива: http://embedded.org.ua/qprs/automake-1.10.1.tar.gz
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #17 : Июля 21, 2009, 05:50:51 pm »

Я же сказал, сотри эти линки, на их место поставь файлы из оригинального архива.

Или достань их из этого архива: http://embedded.org.ua/qprs/automake-1.10.1.tar.gz


Да, я тормознул малёха... Smiley

Удалил ссылки, скопривол файлы и вот:

checking for a BSD-compatible install... config/install-sh -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... config/install-sh -c -d
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make sets $(MAKE)... (cached) yes
checking for a BSD-compatible install... config/install-sh -c
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking dependency style of g++... gcc
checking build system type... i386-pc-nto-qnx6.3.2
checking host system type... i386-pc-nto-qnx6.3.2
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for fgrep... /usr/bin/grep -F
checking for ld used by gcc... /usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld
checking if the linker (/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/qnx632/host/qnx6/x86/usr/bin/nm -B
checking the name lister (/usr/qnx632/host/qnx6/x86/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1089
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... no
checking for /usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld option to reload object files... -r
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/qnx632/host/qnx6/x86/usr/bin/nm -B output from gcc object... failed
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking whether we are using the GNU C++ compiler... (cached) yes
checking whether g++ accepts -g... (cached) yes
checking dependency style of g++... (cached) gcc
checking how to run the C++ preprocessor... g++ -E
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking for gcc option to produce PIC... -fPIC -shared -DPIC
checking if gcc PIC flag -fPIC -shared -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... ldqnx.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking for ld used by g++... /usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld
checking if the linker (/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld) is GNU ld... yes
checking whether the g++ linker (/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC -shared -DPIC
checking if g++ PIC flag -fPIC -shared -DPIC works... yes
checking if g++ static flag -static works... yes
checking if g++ supports -c -o file.o... yes
checking if g++ supports -c -o file.o... (cached) yes
checking whether the g++ linker (/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-ld) supports shared libraries... yes
checking dynamic linker characteristics... ldqnx.so
checking how to hardcode library paths into programs... immediate
checking for shl_load... no
checking for shl_load in -ldld... no
checking for dlopen in -ldl... no
checking for dlopen in -lsvld... no
checking for dld_link in -ldld... no
checking for doxygen... no
checking for cmath... yes
checking whether the compiler supports Run-Time Type Identification... yes
checking whether the compiler supports GCC C++ ABI name demangling... no
checking whether the compiler implements namespaces... yes
checking whether std::string::compare takes a string in argument 1... yes
checking whether the compiler has stringstream... yes
checking whether the library defines class strstream... checking strstream usability... yes
checking strstream presence... yes
checking for strstream... yes
yes
checking for isfinite... no
checking for finite... no
configure: creating ./config.status
config.status: creating Makefile
config.status: creating cppunit.pc
config.status: creating cppunit.spec
config.status: creating cppunit-config
config.status: creating src/Makefile
config.status: creating src/DllPlugInTester/Makefile
config.status: creating src/cppunit/Makefile
config.status: creating include/Makefile
config.status: creating include/cppunit/Makefile
config.status: creating include/cppunit/config/Makefile
config.status: creating include/cppunit/extensions/Makefile
config.status: creating include/cppunit/plugin/Makefile
config.status: creating include/cppunit/portability/Makefile
config.status: creating include/cppunit/tools/Makefile
config.status: creating include/cppunit/ui/Makefile
config.status: creating include/cppunit/ui/mfc/Makefile
config.status: creating include/cppunit/ui/qt/Makefile
config.status: creating include/cppunit/ui/text/Makefile
config.status: creating doc/Makefile
config.status: creating doc/Doxyfile
config.status: creating examples/Makefile
config.status: creating examples/simple/Makefile
config.status: creating examples/hierarchy/Makefile
config.status: creating examples/cppunittest/Makefile
config.status: creating examples/ClockerPlugIn/Makefile
config.status: creating examples/DumperPlugIn/Makefile
config.status: creating examples/money/Makefile
config.status: creating config/config.h
config.status: config/config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands
config.status: executing default commands
creating include/cppunit/config-auto.h - prefix CPPUNIT for config/config.h defines
/

dirname: too many operands
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #18 : Июля 21, 2009, 09:50:47 pm »

Это нормально. После этого запускай make, затем make check. Просто опять те же авторы cppunit почему то считают, что "dirname --" будет работать на всех платформах, а не только на линуксе.
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #19 : Июля 22, 2009, 02:14:54 pm »

Вот, пробовал собрать:

user:> make check 2> _makecheck

Содержание _makecheck:

In file included from DllPlugInTester.cpp:16:
CommandLineParser.h:26: syntax error before `;'
DllPlugInTester.cpp: In function `bool runTests(const CommandLineParser &)':
DllPlugInTester.cpp:35: `PlugInManager' undeclared in namespace `CppUnit'
DllPlugInTester.cpp:35: parse error before `;'
DllPlugInTester.cpp:70: `plugInManager' undeclared (first use this function)
DllPlugInTester.cpp:70: (Each undeclared identifier is reported only once
DllPlugInTester.cpp:70: for each function it appears in.)
DllPlugInTester.cpp:70: `struct CommandLinePlugInInfo' has no member named `m_parameters'
DllPlugInTester.cpp: In function `int main(int, const char **)':
DllPlugInTester.cpp:240: parse error before `&'
DllPlugInTester.cpp:244: confused by earlier errors, bailing out
make[2]: *** [DllPlugInTester.o] Error 1
make[1]: *** [check-recursive] Error 1
make: *** [check-recursive] Error 1
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #20 : Июля 22, 2009, 02:21:31 pm »

А просто make отработал ?
Записан

lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #21 : Июля 22, 2009, 03:05:32 pm »

Не поленился достать винт с 6.3.2 ...

2.95.3 компилятор собирает всё, но когда доходит до тестов валится при линковке с кучей не найденных имён классов в libstdc++.so.5, от 2.95.3 другого ожидать не приходится.
3.3.5 компилятор всё собрал: и make и make check.

Собирать с помощью GCC 3.3.5 в QNX 6.3.2 так:

CC="qcc -V3.3.5,gcc_ntox86" CXX="QCC -V3.3.5,gcc_ntox86" CFLAGS="-I/usr/include" LDFLAGS="-L/usr/lib -L/lib" ./configure --prefix=/usr
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #22 : Июля 22, 2009, 03:09:41 pm »

А gcc 3.3.5 тоже проблематично установить дополнительно к 2.95.3?

Спасибо за терпение и помощь. 
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #23 : Июля 22, 2009, 03:10:17 pm »

А просто make отработал ?

Нет, тоже были ошибки, много ошибок.
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #24 : Июля 22, 2009, 03:24:08 pm »

Нет, gcc 3.3.5 идёт в комплекте, но вызываться может только через QCC/qcc, только я помню, что нужно было поставить все патчи для 6.3.2, чтобы работал 3.3.5. Иначе там 3.1.x какой-то компилятор шёл, с ним было проблем много.

И ещё. C ABI совместимо между 2.95.3 и 3.x веткой, а вот C++ ABI нет, т.е. весь код нужно собирать одним компилятором.
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #25 : Июля 22, 2009, 03:39:18 pm »

Посмотрел версию и вроде бы там 3.1.*  и не пахнет.

qcc -V:

cc: targets available in /usr/qnx632/host/qnx6/x86/etc/qcc:
   2.95.3,gcc_ntoarmbe   
   2.95.3,gcc_ntoarmle   
   2.95.3,gcc_ntomipsbe   
   2.95.3,gcc_ntomipsle   
   2.95.3,gcc_ntoppcbe   
   2.95.3,gcc_ntoshle   
   2.95.3,gcc_ntox86   (default)
   2.95.3,gcc_ntox86_gpp   
   2.95.3,gcc_ntoarmbe_acpp   
   2.95.3,gcc_ntoarmbe_acpp-ne   
   2.95.3,gcc_ntoarmbe_cpp   
   2.95.3,gcc_ntoarmbe_cpp-ne   
   2.95.3,gcc_ntoarmbe_ecpp   
   2.95.3,gcc_ntoarmbe_ecpp-ne   
   2.95.3,gcc_ntoarmle_acpp   
   2.95.3,gcc_ntoarmle_acpp-ne   
   2.95.3,gcc_ntoarmle_cpp   
   2.95.3,gcc_ntoarmle_cpp-ne   
   2.95.3,gcc_ntoarmle_ecpp   
   2.95.3,gcc_ntoarmle_ecpp-ne   
   2.95.3,gcc_ntomipsbe_acpp   
   2.95.3,gcc_ntomipsbe_acpp-ne   
   2.95.3,gcc_ntomipsbe_cpp   
   2.95.3,gcc_ntomipsbe_cpp-ne   
   2.95.3,gcc_ntomipsbe_ecpp   
   2.95.3,gcc_ntomipsbe_ecpp-ne   
   2.95.3,gcc_ntomipsle_acpp   
   2.95.3,gcc_ntomipsle_acpp-ne   
   2.95.3,gcc_ntomipsle_cpp   
   2.95.3,gcc_ntomipsle_cpp-ne   
   2.95.3,gcc_ntomipsle_ecpp   
   2.95.3,gcc_ntomipsle_ecpp-ne   
   2.95.3,gcc_ntoppcbe_acpp   
   2.95.3,gcc_ntoppcbe_acpp-ne   
   2.95.3,gcc_ntoppcbe_cpp   
   2.95.3,gcc_ntoppcbe_cpp-ne   
   2.95.3,gcc_ntoppcbe_ecpp   
   2.95.3,gcc_ntoppcbe_ecpp-ne   
   2.95.3,gcc_ntoshle_acpp   
   2.95.3,gcc_ntoshle_acpp-ne   
   2.95.3,gcc_ntoshle_cpp   
   2.95.3,gcc_ntoshle_cpp-ne   
   2.95.3,gcc_ntoshle_ecpp   
   2.95.3,gcc_ntoshle_ecpp-ne   
   2.95.3,gcc_ntox86_acpp   
   2.95.3,gcc_ntox86_acpp-ne   
   2.95.3,gcc_ntox86_cpp   
   2.95.3,gcc_ntox86_cpp-ne   
   2.95.3,gcc_ntox86_ecpp   
   2.95.3,gcc_ntox86_ecpp-ne   
   3.3.5,gcc_ntoarmbe   
   3.3.5,gcc_ntoarmle   
   3.3.5,gcc_ntomipsbe   
   3.3.5,gcc_ntomipsle   
   3.3.5,gcc_ntoppcbe   
   3.3.5,gcc_ntoshle   
   3.3.5,gcc_ntox86   
   3.3.5,gcc_ntoarmbe_acpp   
   3.3.5,gcc_ntoarmbe_acpp-ne   
   3.3.5,gcc_ntoarmbe_cpp   
   3.3.5,gcc_ntoarmbe_cpp-ne   
   3.3.5,gcc_ntoarmbe_ecpp   
   3.3.5,gcc_ntoarmbe_ecpp-ne   
   3.3.5,gcc_ntoarmbe_gpp   
   3.3.5,gcc_ntoarmle_acpp   
   3.3.5,gcc_ntoarmle_acpp-ne   
   3.3.5,gcc_ntoarmle_cpp   
   3.3.5,gcc_ntoarmle_cpp-ne   
   3.3.5,gcc_ntoarmle_ecpp   
   3.3.5,gcc_ntoarmle_ecpp-ne   
   3.3.5,gcc_ntoarmle_gpp   
   3.3.5,gcc_ntomipsbe_acpp   
   3.3.5,gcc_ntomipsbe_acpp-ne   
   3.3.5,gcc_ntomipsbe_cpp   
   3.3.5,gcc_ntomipsbe_cpp-ne   
   3.3.5,gcc_ntomipsbe_ecpp   
   3.3.5,gcc_ntomipsbe_ecpp-ne   
   3.3.5,gcc_ntomipsbe_gpp   
   3.3.5,gcc_ntomipsle_acpp   
   3.3.5,gcc_ntomipsle_acpp-ne   
   3.3.5,gcc_ntomipsle_cpp   
   3.3.5,gcc_ntomipsle_cpp-ne   
   3.3.5,gcc_ntomipsle_ecpp   
   3.3.5,gcc_ntomipsle_ecpp-ne   
   3.3.5,gcc_ntomipsle_gpp   
   3.3.5,gcc_ntoppcbe_acpp   
   3.3.5,gcc_ntoppcbe_acpp-ne   
   3.3.5,gcc_ntoppcbe_cpp   
   3.3.5,gcc_ntoppcbe_cpp-ne   
   3.3.5,gcc_ntoppcbe_ecpp   
   3.3.5,gcc_ntoppcbe_ecpp-ne   
   3.3.5,gcc_ntoppcbe_gpp   
   3.3.5,gcc_ntoshle_acpp   
   3.3.5,gcc_ntoshle_acpp-ne   
   3.3.5,gcc_ntoshle_cpp   
   3.3.5,gcc_ntoshle_cpp-ne   
   3.3.5,gcc_ntoshle_ecpp   
   3.3.5,gcc_ntoshle_ecpp-ne   
   3.3.5,gcc_ntoshle_gpp   
   3.3.5,gcc_ntox86_acpp   
   3.3.5,gcc_ntox86_acpp-ne   
   3.3.5,gcc_ntox86_cpp   
   3.3.5,gcc_ntox86_cpp-ne   
   3.3.5,gcc_ntox86_ecpp   
   3.3.5,gcc_ntox86_ecpp-ne   
   3.3.5,gcc_ntox86_gpp

ps: что такое ABI?
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #26 : Июля 22, 2009, 03:57:27 pm »

Значит у тебя всё в порядке со всеми патчами (сейчас припоминаю, что это был патч для 6.3, чтобы поднять его до 6.3.2). ABI - Application Binary Interface: http://en.wikipedia.org/wiki/Application_binary_interface

Вот тут касательно GCC, C++, etc: http://gcc.gnu.org/onlinedocs/gcc/Compatibility.html
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #27 : Июля 22, 2009, 04:06:23 pm »

Т.е. мне нужно в Makefile прописать, чтобы испльзовался компайлер более свежей версии? Т.к. сейчас используется:

/usr/qnx632/host/qnx6/x86/usr/bin/gcc -> ntox86-gcc-2.95.3
/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-gcc-2.95.3

А нужный "спрятали" под:

/usr/qnx632/host/qnx6/x86/usr/bin/ntox86-gcc-3.3.5 -> i386-pc-nto-qnx6.3.0-gcc
/usr/qnx632/host/qnx6/x86/usr/bin/i386-pc-nto-qnx6.3.0-gcov
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
lestat
QOR.Moderator
*****
Offline Offline

Сообщений: 985


I don't trust anything


Просмотр профиля WWW
« Ответ #28 : Июля 22, 2009, 04:14:16 pm »

Ничего не нужно прописывать, запусти заново configure но с теми переменными окружения, что я указал:

CC="qcc -V3.3.5,gcc_ntox86" CXX="QCC -V3.3.5,gcc_ntox86" CFLAGS="-I/usr/include" LDFLAGS="-L/usr/lib -L/lib" ./configure --prefix=/usr

И всё, больше ничего не нужно, потом make, потом make check.
Записан

mr.hermess
Участник
*
Offline Offline

Сообщений: 41


*****


Просмотр профиля
« Ответ #29 : Июля 22, 2009, 04:30:54 pm »

Теперь errors вроде бы не было.

make install установит локально, или запишет в /usr/bin?
Записан

Испльзую: QNX Svarog 6.3.2 2006/03/16-14:19:50EST x86pc x86
Страниц: 1 [2] 3
  Печать  
 
Перейти в: