c++.stlsoft - B64 cpp code does not compile on Fedora 7/g++-4.1.2
- Michael Coulman (50/53) Jul 11 2008 $ make -f makefile.unix
- Matthew (4/4) Jul 19 2008 Hi
- Michael Coulman (2/5) Jul 19 2008 Thanks! I appreciate both the reply and the commitment.
- Matthew Wilson (6/11) Aug 02 2008 Apologies for the ongoing delays with this. I've just addressed a couple...
- Michael Coulman (3/9) Aug 03 2008 OK. I'm keeping my eye on this thread for the work around and/or fix. TI...
- Matthew Wilson (2/11) Aug 10 2008
- Matthew Wilson (7/60) Aug 24 2008 I finally got to the bottom of this, and it's now resolved.
$ make -f makefile.unix g++ -D_DEBUG -UNDEBUG -c -Dunix -DB64_NO_IMPLICIT_LINK -I../../include -I"/opt/local/stlsoft/stlsoft-1.9.45/include" -o example.cpp.1.debug.o ../../examples/cpp/example.cpp.1/example.cpp.1.cpp /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/st ing/std/c_string.h: In function ‘stlsoft::ss_size_t stlsoft::c_str_size(const S&) [with S = std::basic_string<char, std::char_traits<char>, std::allocator<char>]’:../../include/b64/b64.hpp:648: instantiated from here /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:854: error: no matching function for call to ‘c_str_len(const std::basic_string<char, std::char_traits<char>, std::allocator<char>&)’../../include/b64/b64.h:394: note: candidates are: size_t stlsoft::c_str_len(b64::B64_RC) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:302: note: stlsoft::ss_size_t stlsoft::c_str_len(const stlsoft::ss_char_a_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:331: note: stlsoft::ss_size_t stlsoft::c_str_len(const stlsoft::ss_char_w_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:854: error: no matching function for call to ‘c_str_ptr(const std::basic_string<char, std::char_traits<char>, std::allocator<char>&)’../../include/b64/b64.h:403: note: candidates are: const char* stlsoft::c_str_ptr(b64::B64_RC) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:427: note: const stlsoft::ss_char_a_t* stlsoft::c_str_ptr(const stlsoft::ss_char_a_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string std/c_string.h:454: note: const stlsoft::ss_char_w_t* stlsoft::c_str_ptr(const stlsoft::ss_char_w_t*) make: *** [example.cpp.1.debug.o] Error 1 $ g++ -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --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 --with-cpu=generic --host=i386-redhat-linux Thread model: posix gcc version 4.1.2 20070925 (Red Hat 4.1.2-27) ~~~ I'd like to make use of the C++ flavor of B64, but it seems to be broken on Linux. TIA.
Jul 11 2008
Hi Sorry for the radio silence. I will be in a position to investigate this in 3-4 days' time, and expect to be able to effect a fix and have you up and running within a day or so. Cheers Matt
Jul 19 2008
On 2008-07-19 07:23:53 -1000, Matthew <no-one nowhere.none.none> said:Sorry for the radio silence. I will be in a position to investigate this in 3-4 days' time, and expect to be able to effect a fix and have you up and running within a day or so.Thanks! I appreciate both the reply and the commitment.
Jul 19 2008
Apologies for the ongoing delays with this. I've just addressed a couple of other minor issues with the library - http://www.digitalmars.com/webnews/newsgroups.php?art_group=c%2B%2B.stl oft&article_id=1616 - and can now focus on this. Couple more days at the most until we get a usable workaround; possibly another week for a full fix. HTH Matt "Michael Coulman" <michael.coulman mac.com> wrote in message news:g5tg9g$30qb$3 digitalmars.com...On 2008-07-19 07:23:53 -1000, Matthew <no-one nowhere.none.none> said:Sorry for the radio silence. I will be in a position to investigate this in 3-4 days' time, and expect to be able to effect a fix and have you up and running within a day or so.Thanks! I appreciate both the reply and the commitment.
Aug 02 2008
On 2008-08-02 17:44:50 -1000, "Matthew Wilson" <matthew hat.stlsoft.dot.org> said:Apologies for the ongoing delays with this. I've just addressed a couple of other minor issues with the library - http://www.digitalmars.com/webnews/newsgroups.php?art_group=c%2B%2B.stl oft&article_id=1616 - and can now focus on this. Couple more days at the most until we get a usable workaround; possibly another week for a full fix.OK. I'm keeping my eye on this thread for the work around and/or fix. TIA.
Aug 03 2008
Still working on it ... "Michael Coulman" <michael.coulman mac.com> wrote in message news:g7510h$9nt$1 digitalmars.com...On 2008-08-02 17:44:50 -1000, "Matthew Wilson" <matthew hat.stlsoft.dot.org> said:Apologies for the ongoing delays with this. I've just addressed a couple of other minor issues with the library - http://www.digitalmars.com/webnews/newsgroups.php?art_group=c%2B%2B.stlsoft&article_id=1616 - and can now focus on this. Couple more days at the most until we get a usable workaround; possibly another week for a full fix.OK. I'm keeping my eye on this thread for the work around and/or fix. TIA.
Aug 10 2008
I finally got to the bottom of this, and it's now resolved. The problem is there's a subtle defect in GCC's lookup mechanism for resolving types in function template overloads. The new version, 1.3.4 (http://synesis.com.au/software/b64.html), contains a workaround that's been tested on a bunch of different compilers, including GCC 4.x versions on 32 and 64-bit Ubuntu. Sorry it took so long ... Matt "Michael Coulman" <michael.coulman mac.com> wrote in message news:g58a0i$1hbq$1 digitalmars.com...$ make -f makefile.unix g++ -D_DEBUG -UNDEBUG -c -Dunix -DB64_NO_IMPLICIT_LINK -I../../include -I"/opt/local/stlsoft/stlsoft-1.9.45/include" -o example.cpp.1.debug.o ../../examples/cpp/example.cpp.1/example.cpp.1.cpp /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h: In function 'stlsoft::ss_size_t stlsoft::c_str_size(const S&) [with S = std::basic_string<char, std::char_traits<char>, std::allocator<char>]':../../include/b64/b64.hpp:648: instantiated from here /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:854: error: no matching function for call to 'c_str_len(const std::basic_string<char, std::char_traits<char>, std::allocator<char>&)'../../include/b64/b64.h:394: note: candidates are: size_t stlsoft::c_str_len(b64::B64_RC) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:302: note: stlsoft::ss_size_t stlsoft::c_str_len(const stlsoft::ss_char_a_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:331: note: stlsoft::ss_size_t stlsoft::c_str_len(const stlsoft::ss_char_w_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:854: error: no matching function for call to 'c_str_ptr(const std::basic_string<char, std::char_traits<char>, std::allocator<char>&)'../../include/b64/b64.h:403: note: candidates are: const char* stlsoft::c_str_ptr(b64::B64_RC) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:427: note: const stlsoft::ss_char_a_t* stlsoft::c_str_ptr(const stlsoft::ss_char_a_t*) /opt/local/stlsoft/stlsoft-1.9.45/include/stlsoft/shims/access/string/std/c_string.h:454: note: const stlsoft::ss_char_w_t* stlsoft::c_str_ptr(const stlsoft::ss_char_w_t*) make: *** [example.cpp.1.debug.o] Error 1 $ g++ -v Using built-in specs. Target: i386-redhat-linux Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --enable-plugin --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 --with-cpu=generic --host=i386-redhat-linux Thread model: posix gcc version 4.1.2 20070925 (Red Hat 4.1.2-27) ~~~ I'd like to make use of the C++ flavor of B64, but it seems to be broken on Linux. TIA.
Aug 24 2008