freeMXF.org http://freemxf.org/forum/ |
|
Linux compilation errors http://freemxf.org/forum/viewtopic.php?f=3&t=161 |
Page 1 of 1 |
Author: | tvtuser [ Tue Aug 19, 2008 5:56 pm ] |
Post subject: | Linux compilation errors |
Hi there, I am trying to compile the MXFLib in Fedora 9, and I am getting some rather odd compilation errors. Is this anything that anybody has seen before? Thanks Max make all-recursive make[1]: Entering directory `/home/max/downloads/mxflib-1.0.1' Making all in mxflib make[2]: Entering directory `/home/max/downloads/mxflib-1.0.1/mxflib' if g++ -DHAVE_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DDEFAULT_DICT_PATH=\"/usr/local/share/mxflib\" -Wall -g -O2 -MT crypto.o -MD -MP -MF ".deps/crypto.Tpo" -c -o crypto.o crypto.cpp; \ then mv -f ".deps/crypto.Tpo" ".deps/crypto.Po"; else rm -f ".deps/crypto.Tpo"; exit 1; fi In file included from ../mxflib/mxflib.h:89, from crypto.cpp:31: ../mxflib/types.h: In constructor ‘mxflib::UL::UL(mxflib::SmartPtr<mxflib::UL>)’: ../mxflib/types.h:154: error: ‘memset’ was not declared in this scope ../mxflib/types.h:154: error: ‘memcpy’ was not declared in this scope ../mxflib/types.h: In copy constructor ‘mxflib::UL::UL(const mxflib::UL&)’: ../mxflib/types.h:157: error: ‘memcpy’ was not declared in this scope ../mxflib/types.h: In constructor ‘mxflib::UUID::UUID(mxflib::SmartPtr<mxflib::UUID>)’: ../mxflib/types.h:304: error: ‘memset’ was not declared in this scope ../mxflib/types.h:304: error: ‘memcpy’ was not declared in this scope ../mxflib/types.h: In copy constructor ‘mxflib::UUID::UUID(const mxflib::UUID&)’: ../mxflib/types.h:307: error: ‘memcpy’ was not declared in this scope ../mxflib/types.h: In member function ‘mxflib::UUID& mxflib::UUID::operator=(const mxflib::UL&)’: Ultimately, it crashes out with an error at the end of the complication ../mxflib/primer.h:82: instantiated from here ../mxflib/types.h:100: error: ‘memcmp’ was not declared in this scope ../mxflib/types.h:101: error: ‘memcmp’ was not declared in this scope make[2]: *** [crypto.o] Error 1 make[2]: Leaving directory `/home/max/downloads/mxflib-1.0.1/mxflib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/max/downloads/mxflib-1.0.1' make: *** [all] Error 2 My .configure file looks like: checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for gawk... gawk checking whether make sets $(MAKE)... yes checking for g++... g++ 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 g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 checking for ranlib... ranlib checking for gcc... gcc 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 dependency style of gcc... gcc3 checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -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 fcntl.h usability... yes checking fcntl.h presence... yes checking for fcntl.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking sys/timeb.h usability... yes checking sys/timeb.h presence... yes checking for sys/timeb.h... yes checking for stdbool.h that conforms to C99... yes checking for _Bool... yes checking for an ANSI C-conforming const... yes checking for inline... inline checking whether time.h and sys/time.h may both be included... yes checking for error_at_line... yes checking for _LARGEFILE_SOURCE value needed for large files... no checking for working memcmp... yes checking for strftime... yes checking for vprintf... yes checking for _doprnt... no checking for floor... no checking for gettimeofday... yes checking for memmove... yes checking for memset... yes checking for strcasecmp... yes checking for strerror... yes checking for strtoul... yes checking uuid/uuid.h usability... no checking uuid/uuid.h presence... no checking for uuid/uuid.h... no checking windows.h usability... no checking windows.h presence... no checking for windows.h... no checking for doxygen... false configure: WARNING: *** doxygen not found, docs will not be built checking for dot... NO configure: WARNING: *** dot not found (part of Graphviz), class graphs will not be built configure: creating ./config.status config.status: creating tests/Makefile config.status: creating tests/atlocal config.status: creating Makefile config.status: creating docs/Makefile config.status: creating docs/doxyfile.cfg config.status: creating mxfdump/Makefile config.status: creating mxflib/Makefile config.status: creating mxfsplit/Makefile config.status: creating mxfwrap/Makefile config.status: creating simplewrap/Makefile config.status: creating mxf2dot/Makefile config.status: creating mxfcrypt/Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing tests/atconfig commands Hope you can help or point me in the correct direction. Thanks |
Author: | Matt Beard [ Wed Aug 20, 2008 1:56 pm ] |
Post subject: | |
Fedora 9 comes with gcc 4.3 which has had some tidying done to the include files. The result is that some standard headers that got included automatically in the past now need to be specified separately. I have uploaded a fixed version of the source on SourceForge. |
Author: | tvtuser [ Thu Aug 21, 2008 9:50 am ] |
Post subject: | |
Matt Beard wrote: I have uploaded a fixed version of the source on SourceForge.
Many applogies, but I went to the Sourceforge download page at http://sourceforge.net/project/showfile ... p_id=65032 - but could not see where the modified code was - or have you placed it in CVS? |
Author: | Matt Beard [ Thu Aug 21, 2008 2:57 pm ] |
Post subject: | |
It's an extra file under the " 1.0.1-Beta" release. |
Author: | tvtuser [ Thu Aug 21, 2008 3:17 pm ] |
Post subject: | |
Hi there, Thanks for posting the new beta version up; I think there is still a small issue as I am still getting the following error when making. make all-recursive make[1]: Entering directory `/home/max/downloads/mxflib-beta-1.0.1-gcc4.3' Making all in mxflib make[2]: Entering directory `/home/max/downloads/mxflib-beta-1.0.1-gcc4.3/mxflib' if g++ -DHAVE_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DDEFAULT_DICT_PATH=\"/usr/local/share/mxflib\" -Wall -g -O2 -MT crypto.o -MD -MP -MF ".deps/crypto.Tpo" \ -c -o crypto.o `test -f 'crypto.cpp' || echo './'`crypto.cpp; \ then mv -f ".deps/crypto.Tpo" ".deps/crypto.Po"; \ else rm -f ".deps/crypto.Tpo"; exit 1; \ fi In file included from ../mxflib/mxflib.h:38, from crypto.cpp:31: ../mxflib/system.h: In function ‘void mxflib::MakeUUID(mxflib::UInt8*)’: ../mxflib/system.h:514: error: ‘memcpy’ was not declared in this scope make[2]: *** [crypto.o] Error 1 make[2]: Leaving directory `/home/max/downloads/mxflib-beta-1.0.1-gcc4.3/mxflib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/max/downloads/mxflib-beta-1.0.1-gcc4.3' make: *** [all] Error 2 Thanks Max |
Author: | Matt Beard [ Mon Sep 01, 2008 11:15 am ] |
Post subject: | |
There is also the need for a #include <cstring> at the top of system.h for some configurations. Fixed now in cvs and a new tar.gz file in the downloads area. |
Author: | rbm [ Tue Sep 02, 2008 7:21 am ] |
Post subject: | |
Max, Would a SUSE system be easier to use? AK |
Author: | rbm [ Wed Sep 03, 2008 9:23 am ] |
Post subject: | |
Matt, What is the preferred OS etc. that you have built your code on, so we can get round the compilation issues? AK[/quote] |
Author: | tvtuser [ Wed Sep 03, 2008 10:38 am ] |
Post subject: | |
In terms of versions of OSs, it shouldn't really matter too much. I would expect the code to compile on SuSE systems, Redhat and Debian based systems. The only thing that we need to be concerned about the code runs on GCC 4.3. Thanks Max |
Author: | tvtuser [ Wed Sep 03, 2008 11:30 am ] |
Post subject: | |
Chaps - Version 2 actually compiles! I'll stick with it and let you know how it goes. |
Author: | rbm [ Wed Sep 03, 2008 12:56 pm ] |
Post subject: | |
Max, Is that with gcc 4.3 i.e. For SLES: http://software.opensuse.org/search?bas ... &p=1&q=gcc |
Author: | tvtuser [ Wed Sep 03, 2008 2:08 pm ] |
Post subject: | |
Alasdair, Yes, it worked using gcc 4.3 - typing gcc --version produced: gcc (GCC) 4.3.0 20080428 (Red Hat 4.3.0-8) Thanks Max |
Author: | Matt Beard [ Fri Sep 05, 2008 2:46 pm ] |
Post subject: | |
Before each release I test on Windows XP or 2000 with MSVC6, Windows XP or 2000 with MSVC7.1, PowerPC Mac with OSX and "current" version of gcc, some variant of Linux (usually the latest Ubuntu) and its gcc. I have also done tests at various times with various other Linux distributions (including Debian on an Arm920), and Vista. I have also tested with Visual Studio 2005 and Visual Studio Express 2008. |
Page 1 of 1 | All times are UTC |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |