[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-bugs-dist
Subject:    [Bug 114747] Compile error in ksycoca.cpp on Solaris 9 (temp.
From:       Jens Hatlak <jh () junetz ! de>
Date:       2005-12-08 22:41:06
Message-ID: 20051208224106.19046.qmail () ktown ! kde ! org
[Download RAW message or body]

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
         
http://bugs.kde.org/show_bug.cgi?id=114747         




------- Additional Comments From jh junetz de  2005-12-08 23:41 -------
I'm still seeing this on Sparc/Solaris 8, KDE 3.5, gcc 4.0.2, patches applied, \
configure rebuilt. The problem seems to be that the madvise test in configure passes \
even though the function is not available in the form used in ksycoca.cpp.

The error is:

ksycoca.cpp: In member function 'bool KSycoca::openDatabase(bool)':
ksycoca.cpp:148: error: 'madvise' was not declared in this scope

The relevant lines from config.log:

configure:43591: checking for madvise
configure:43648: gcc -o conftest -O2    -DQT_THREAD_SUPPORT -I/usr/local/include
 -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DUSE_SOLARIS -DSVR4 \
-L/usr/local/lib/qt-3.3/lib-g++3 -R/usr/local/lib/qt-3.3/lib-g++3 -L/usr/local/lib \
-R/usr/local/lib conftest.c  >&5 configure:43654: $? = 0
configure:43658: test -z
                         || test ! -s conftest.err
configure:43661: $? = 0
configure:43664: test -s conftest
configure:43667: $? = 0
configure:43679: result: yes

Some lines from /usr/include/sys/mman.h:

#ifdef  __STDC__
#if (_POSIX_C_SOURCE > 2) || defined(_XPG4_2)
extern void *mmap(void *, size_t, int, int, int, off_t);
extern int munmap(void *, size_t);
extern int mprotect(void *, size_t, int);
extern int msync(void *, size_t, int);
#if (!defined(_XPG4_2) || (_POSIX_C_SOURCE > 2)) || defined(__EXTENSIONS__)
extern int mlock(const void *, size_t);
extern int munlock(const void *, size_t);
extern int shm_open(const char *, int, mode_t);
extern int shm_unlink(const char *);
#endif  /* (!defined(_XPG4_2) || (_POSIX_C_SOURCE > 2))... */
/* transitional large file interface version */
#if     defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \
            !defined(__PRAGMA_REDEFINE_EXTNAME))
extern void *mmap64(void *, size_t, int, int, int, off64_t);
#endif  /* _LARGEFILE64_SOURCE... */
#else   /* (_POSIX_C_SOURCE > 2) || defined(_XPG4_2) */
extern caddr_t mmap(caddr_t, size_t, int, int, int, off_t);
extern int munmap(caddr_t, size_t);
extern int mprotect(caddr_t, size_t, int);
extern int msync(caddr_t, size_t, int);
extern int mlock(caddr_t, size_t);
extern int munlock(caddr_t, size_t);
extern int mincore(caddr_t, size_t, char *);
extern int memcntl(caddr_t, size_t, int, caddr_t, int, int);
extern int madvise(caddr_t, size_t, int);
/* transitional large file interface version */
#ifdef  _LARGEFILE64_SOURCE
extern caddr_t mmap64(caddr_t, size_t, int, int, int, off64_t);
#endif
#endif  /* (_POSIX_C_SOURCE > 2)  || defined(_XPG4_2) */

#if (!defined(_XPG4_2) || (_POSIX_C_SOURCE > 2)) || defined(__EXTENSIONS__)
extern int mlockall(int);
extern int munlockall(void);
#endif

/* mmap failure value */
#define MAP_FAILED      ((void *) -1)

#else   /* __STDC__ */
extern caddr_t mmap();
extern int munmap();
extern int mprotect();
extern int mincore();
extern int memcntl();
extern int msync();
extern int madvise();
extern int mlock();
extern int mlockall();
extern int munlock();
extern int munlockall();
/* transitional large file interface version */
#if     defined(_LARGEFILE64_SOURCE) && !((_FILE_OFFSET_BITS == 64) && \
            !defined(__PRAGMA_REDEFINE_EXTNAME))
extern caddr_t mmap64();
#endif  /* _LARGEFILE64_SOURCE... */
#endif  /* __STDC__ */


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic