FLTK logo

STR #3023

FLTK matrix user chat room
(using Element browser app)   FLTK gitter user chat room   GitHub FLTK Project   FLTK News RSS Feed  
  FLTK Apps      FLTK Library      Forums      Links     Login 
 Home  |  Articles & FAQs  |  Bugs & Features  |  Documentation  |  Download  |  Screenshots  ]
 

Return to Bugs & Features | Roadmap 1.3 | SVN ⇄ GIT ]

STR #3023

Application:FLTK Library
Status:2 - Closed w/o Resolution
Priority:3 - Moderate, e.g. unable to compile the software
Scope:2 - Specific to an operating system
Subsystem:None
Summary:Compile Error on Oracle Linux 6.5, x64 (error: invalid conversion... function pointer))
Version:1.3.2
Created By:noloader
Assigned To:AlbrechtS
Fix Version:None
Update Notification:

Receive EMails Don't Receive EMails

Trouble Report Files:


Name/Time/Date Filename/Size  
 
#1 noloader
04:00 Dec 22, 2013
config.log
60k
 
     

Trouble Report Comments:


Name/Time/Date Text  
 
#1 noloader
18:24 Dec 21, 2013
Compiling filename_ext.cxx...
Compiling filename_isdir.cxx...
Compiling filename_list.cxx...
filename_list.cxx: In function ‘int fl_filename_list(const char*, dirent***, int (*)(dirent**, dirent**))’:
filename_list.cxx:121: error: invalid conversion from ‘int (*)(const void*, const void*)’ to ‘int (*)(const dirent**, const dirent**)’
filename_list.cxx:121: error:   initializing argument 4 of ‘int scandir(const char*, dirent***, int (*)(const dirent*), int (*)(const dirent**, const dirent**))’
make[1]: *** [filename_list.o] Error 1
make: *** [all] Error 1
*****
$ uname -a
Linux oracle-linux 3.8.13-16.3.1.el6uek.x86_64 #2 SMP Tue Dec 17 11:24:44 PST 2013 x86_64 x86_64 x86_64 GNU/Linux
*****
$ g++ -v
Using built-in specs.
Target: x86_64-redhat-linux
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
Thread model: posix
gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC)
*****
$ cpp -dM < /dev/null | sort
#define __amd64 1
#define __amd64__ 1
#define __BIGGEST_ALIGNMENT__ 16
#define __CHAR16_TYPE__ short unsigned int
#define __CHAR32_TYPE__ unsigned int
#define __CHAR_BIT__ 8
#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
#define __DBL_DIG__ 15
#define __DBL_EPSILON__ 2.2204460492503131e-16
#define __DBL_HAS_DENORM__ 1
#define __DBL_HAS_INFINITY__ 1
#define __DBL_HAS_QUIET_NAN__ 1
#define __DBL_MANT_DIG__ 53
#define __DBL_MAX_10_EXP__ 308
#define __DBL_MAX__ 1.7976931348623157e+308
#define __DBL_MAX_EXP__ 1024
#define __DBL_MIN_10_EXP__ (-307)
#define __DBL_MIN__ 2.2250738585072014e-308
#define __DBL_MIN_EXP__ (-1021)
#define __DEC128_EPSILON__ 1E-33DL
#define __DEC128_MANT_DIG__ 34
#define __DEC128_MAX__ 9.999999999999999999999999999999999E6144DL
#define __DEC128_MAX_EXP__ 6145
#define __DEC128_MIN__ 1E-6143DL
#define __DEC128_MIN_EXP__ (-6142)
#define __DEC128_SUBNORMAL_MIN__ 0.000000000000000000000000000000001E-6143DL
#define __DEC32_EPSILON__ 1E-6DF
#define __DEC32_MANT_DIG__ 7
#define __DEC32_MAX__ 9.999999E96DF
#define __DEC32_MAX_EXP__ 97
#define __DEC32_MIN__ 1E-95DF
#define __DEC32_MIN_EXP__ (-94)
#define __DEC32_SUBNORMAL_MIN__ 0.000001E-95DF
#define __DEC64_EPSILON__ 1E-15DD
#define __DEC64_MANT_DIG__ 16
#define __DEC64_MAX__ 9.999999999999999E384DD
#define __DEC64_MAX_EXP__ 385
#define __DEC64_MIN__ 1E-383DD
#define __DEC64_MIN_EXP__ (-382)
#define __DEC64_SUBNORMAL_MIN__ 0.000000000000001E-383DD
#define __DEC_EVAL_METHOD__ 2
#define __DECIMAL_BID_FORMAT__ 1
#define __DECIMAL_DIG__ 21
#define __ELF__ 1
#define __FINITE_MATH_ONLY__ 0
#define __FLT_DENORM_MIN__ 1.40129846e-45F
#define __FLT_DIG__ 6
#define __FLT_EPSILON__ 1.19209290e-7F
#define __FLT_EVAL_METHOD__ 0
#define __FLT_HAS_DENORM__ 1
#define __FLT_HAS_INFINITY__ 1
#define __FLT_HAS_QUIET_NAN__ 1
#define __FLT_MANT_DIG__ 24
#define __FLT_MAX_10_EXP__ 38
#define __FLT_MAX__ 3.40282347e+38F
#define __FLT_MAX_EXP__ 128
#define __FLT_MIN_10_EXP__ (-37)
#define __FLT_MIN__ 1.17549435e-38F
#define __FLT_MIN_EXP__ (-125)
#define __FLT_RADIX__ 2
#define __GCC_HAVE_DWARF2_CFI_ASM 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4 1
#define __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8 1
#define __GNUC__ 4
#define __GNUC_GNU_INLINE__ 1
#define __GNUC_MINOR__ 4
#define __GNUC_PATCHLEVEL__ 7
#define __GNUC_RH_RELEASE__ 4
#define __gnu_linux__ 1
#define __GXX_ABI_VERSION 1002
#define __INT_MAX__ 2147483647
#define __INTMAX_MAX__ 9223372036854775807L
#define __INTMAX_TYPE__ long int
#define __k8 1
#define __k8__ 1
#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
#define __LDBL_DIG__ 18
#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
#define __LDBL_HAS_DENORM__ 1
#define __LDBL_HAS_INFINITY__ 1
#define __LDBL_HAS_QUIET_NAN__ 1
#define __LDBL_MANT_DIG__ 64
#define __LDBL_MAX_10_EXP__ 4932
#define __LDBL_MAX__ 1.18973149535723176502e+4932L
#define __LDBL_MAX_EXP__ 16384
#define __LDBL_MIN_10_EXP__ (-4931)
#define __LDBL_MIN__ 3.36210314311209350626e-4932L
#define __LDBL_MIN_EXP__ (-16381)
#define __linux 1
#define __linux__ 1
#define linux 1
#define __LONG_LONG_MAX__ 9223372036854775807LL
#define __LONG_MAX__ 9223372036854775807L
#define __LP64__ 1
#define _LP64 1
#define __MMX__ 1
#define __NO_INLINE__ 1
#define __PTRDIFF_TYPE__ long int
#define __REGISTER_PREFIX__
#define __SCHAR_MAX__ 127
#define __SHRT_MAX__ 32767
#define __SIZEOF_DOUBLE__ 8
#define __SIZEOF_FLOAT__ 4
#define __SIZEOF_INT__ 4
#define __SIZEOF_LONG__ 8
#define __SIZEOF_LONG_DOUBLE__ 16
#define __SIZEOF_LONG_LONG__ 8
#define __SIZEOF_POINTER__ 8
#define __SIZEOF_PTRDIFF_T__ 8
#define __SIZEOF_SHORT__ 2
#define __SIZEOF_SIZE_T__ 8
#define __SIZEOF_WCHAR_T__ 4
#define __SIZEOF_WINT_T__ 4
#define __SIZE_TYPE__ long unsigned int
#define __SSE__ 1
#define __SSE2__ 1
#define __SSE2_MATH__ 1
#define __SSE_MATH__ 1
#define __STDC__ 1
#define __STDC_HOSTED__ 1
#define __UINTMAX_TYPE__ long unsigned int
#define __unix 1
#define __unix__ 1
#define unix 1
#define __USER_LABEL_PREFIX__
#define __VERSION__ "4.4.7 20120313 (Red Hat 4.4.7-4)"
#define __WCHAR_MAX__ 2147483647
#define __WCHAR_TYPE__ int
#define __WINT_TYPE__ unsigned int
#define __x86_64 1
#define __x86_64__ 1
 
 
#2 greg.ercolano
01:20 Dec 22, 2013
Can you:

1) Attach your config.log file

2) Attach the resulting "scandir-man.txt" after running the following:

   man scandir | col -b > /var/tmp/scandir-man.txt
 
 
#3 noloader
04:03 Dec 22, 2013
> 2) Attach the resulting "scandir-man.txt" after running the following:
>
>   man scandir | col -b > /var/tmp/scandir-man.txt
No man pages.

Here's the one I used to get past the issue:

#else
  // The vast majority of UNIX systems want the sort function to have this
  // prototype, most likely so that it can be passed to qsort without any
  // changes:
  // int n = scandir(dirloc, list, 0, (int(*)(const void*,const void*))sort);
  int n = scandir(dirloc, list, 0, (int(*)(const struct dirent**,const struct dirent**))sort);
#endif
 
 
#4 chris
09:35 Dec 22, 2013
Reminds me of a similiar problem I had recently after a fresh VM setup, where I wanted to build FLTK:

- fetched FLTK from svn
- ran configure (or make did it)
- compiled (make)
- after compiling jpeg/png,.. an error occured in a .cxx file
- realized after some confusion, that I had not installed g++ package
- installed g++
- re-run make
- now stopped at this very scandir line in filename_list.cxx

==> solution was simple: re-run configure!!

Now HAVE_SCANDIR_POSIX define became true and everything compiled.

configure did't complain about missing g++ at the first run (at least not loudly), and the scandir posix test seems to need a c++ compiler.


Could something like that have happened here too (In your log file I also see missing g++)?

Cheers,
chris
 
 
#5 greg.ercolano
16:17 Dec 22, 2013
From your log:

> configure:3646: checking for g++
> configure:3676: result: no
> [..]
> configure:3781: g++ -c -g  conftest.cpp >&5
./configure: line 1555: g++: command not found

    g++ not found can't be good.

    I agree w/chris, make sure g++ is in your path first
    then re-run configure followed by 'make'.
 
 
#6 noloader
04:57 Dec 23, 2013
>   g++ not found can't be good.
>   I agree w/chris, make sure g++ is in your path first
>   then re-run configure followed by 'make'.
Yeah, I did encounter that problem, but it was cleared with an `install gcc-c++`.

After installing g++, the compile error was present.

I'm not sure why the logs still complained about g++ problem after clearing it.
 
 
#7 greg.ercolano
15:08 Dec 23, 2013
It sounds like you're saying you can run "g++ -v" from a shell
and get a positive response, yet if you then run ./configure
from that same shell, it says "g++ not found" in the config.log.

That would be really strange; I suggest you investigate further
by adding 'g++ -v' as the *second* line in ./configure, and run it
to see if you get the g++ banner, or if you get command not found.

Focus on getting configure to find g++.
 
 
#8 ianmacarthur
15:43 Sep 04, 2014
Is this still alive, this STR?

From what the OP says, I wonder if this is an environment issue rather than a fltk issue?

Can we close this?
 
 
#9 AlbrechtS
11:14 Feb 28, 2015
This STR has not been updated by the submitter for two or more weeks and has been closed as required by the FLTK Configuration Management Plan. If the issue still requires resolution, please re-submit a new STR.  
     

Return to Bugs & Features ]

 
 

Comments are owned by the poster. All other content is copyright 1998-2024 by Bill Spitzak and others. This project is hosted by The FLTK Team. Please report site problems to 'erco@seriss.com'.