pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/45392: cad/qcad (HEAD pre-pkgsrc-2011Q3) build failure on i386-current (5.99.55)



>Number:         45392
>Category:       pkg
>Synopsis:       cad/qcad (HEAD pre-pkgsrc-2011Q3) build failure on 
>i386-current (5.99.55)
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Thu Sep 22 16:10:01 +0000 2011
>Originator:     John D. Baker
>Release:        5.99.55/i386
>Organization:
>Environment:
NetBSD skuld.technoskunk.fur 5.99.55 NetBSD 5.99.55 (SKULD) #6: Tue Sep 20 
11:40:34 CDT 2011  
sysop%skuld.technoskunk.fur@localhost:/d0/build/current/obj/i386/sys/arch/i386/compile/SKULD
 i386

>Description:
Building cad/qcad on 5.99.55/i386 (and possibly others) fails as follows:

[...]
c++ -I./src -O2 -I/usr/pkg/include -I/usr/pkg/qt3/include -I/usr/include 
-I/usr/X11R7/include -I/usr/X11R7/include/freetype2  -I/usr/X11R7/include 
-DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" 
-DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DUNIX=1 
-DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 
-DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 
-DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -c 
src/dl_writer_ascii.cpp -o src/dl_writer_ascii.o
In file included from src/dl_writer_ascii.h:35:0,
                 from src/dl_writer_ascii.cpp:34:
src/dl_writer.h: In member function 'void DL_Writer::entityAttributes(const 
DL_Attributes&) const':
src/dl_writer.h:337:54: error: 'strcasecmp' was not declared in this scope
src/dl_writer_ascii.cpp: In member function 'virtual void 
DL_WriterA::dxfReal(int, double) const':
src/dl_writer_ascii.cpp:72:40: error: 'strlen' was not declared in this scope
src/dl_writer_ascii.cpp:81:37: error: 'strlen' was not declared in this scope
src/dl_writer_ascii.cpp: In static member function 'static void 
DL_WriterA::strReplace(char*, char, char)':
src/dl_writer_ascii.cpp:147:24: error: 'strlen' was not declared in this scope
gmake: *** [src/dl_writer_ascii.o] Error 1
*** Error code 2

Stop.
make: stopped in /d0/nbsd/pkgsrc/cad/qcad
*** Error code 1

Stop.
make: stopped in /d0/nbsd/pkgsrc/cad/qcad

>How-To-Repeat:
On recent 5.99.55/i386, update pkgsrc to HEAD and attempt to build
cad/qcad.
>Fix:
Being C++, access to the C "strlen()" function is gained by adding:

#include <cstring>

to

$WRKOBJDIR/cad/qcad/work/qcad-2.0.5.0-1-community.src/dxflib/include/dl_writer_ascii.h

Unfortunately, this does not add a prototype for "strcasecmp()".

The C include <strings.h> contains the prototype for "strcasecmp()", but
mixing C++ includes and C includes would probably be ill-advised.


Fallout from the switch to GCC 4.5.3?




Home | Main Index | Thread Index | Old Index