Opened 5 years ago

Closed 5 years ago

#59121 closed defect (fixed)

blackbox @0.75 does not build on PPC Tiger, Mac OS X 10.4.11, because of a type mismatch?

Reported by: ballapete (Peter "Pete" Dyballa) Owned by: kencu (Ken)
Priority: Normal Milestone:
Component: ports Version: 2.6.0
Keywords: tiger Cc:
Port: blackbox

Description

libtool: compile:  /opt/local/bin/g++-mp-6 -DHAVE_CONFIG_H -I. -I.. -include config.h -I.. -I/opt/local/include/ossp -I/opt/local/include/freetype2 -I/opt/local/include/libpng16 -I/opt/local/include -I/opt/local/include/LegacySupport -I/opt/local/include/LegacySupport -pipe -Os -Wno-format-security -std=c++98 -arch ppc -c Unicode.cc  -fno-common -DPIC -o .libs/Unicode.o
Unicode.cc: In instantiation of 'void bt::convert(const char*, const char*, const _Source&, _Target&) [with _Source = std::__cxx11::basic_string<char>; _Target = std::__cxx11::basic_string<unsigned int>]':
Unicode.cc:204:49:   required from here
Unicode.cc:103:23: error: invalid conversion from 'char**' to 'const char**' [-fpermissive]
       size_t l = iconv(cd, &inp, &in_bytes, &outp, &out_bytes);
                       ^
In file included from Unicode.cc:30:0:
/opt/local/include/iconv.h:82:15: note:   initializing argument 2 of 'size_t libiconv(libiconv_t, const char**, size_t*, char**, size_t*)'
 extern size_t iconv (iconv_t cd, const char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft);
               ^
Unicode.cc: In instantiation of 'void bt::convert(const char*, const char*, const _Source&, _Target&) [with _Source = std::__cxx11::basic_string<unsigned int>; _Target = std::__cxx11::basic_string<char>]':
Unicode.cc:217:58:   required from here
Unicode.cc:103:23: error: invalid conversion from 'char**' to 'const char**' [-fpermissive]
       size_t l = iconv(cd, &inp, &in_bytes, &outp, &out_bytes);
                       ^
In file included from Unicode.cc:30:0:
/opt/local/include/iconv.h:82:15: note:   initializing argument 2 of 'size_t libiconv(libiconv_t, const char**, size_t*, char**, size_t*)'
 extern size_t iconv (iconv_t cd, const char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft);
               ^
make[2]: *** [Unicode.lo] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_lil.fr.rsync.macports.org_release_tarballs_ports_x11_blackbox/blackbox/work/blackbox-0.75/lib'
make[1]: *** [all-recursive] Error 1

I do not understand C++. The preprocessor produces:

# 63 "/opt/local/include/iconv.h" 3
extern "C" {






#define iconv_open libiconv_open

extern libiconv_t libiconv_open (const char* tocode, const char* fromcode);







#define iconv libiconv

extern size_t libiconv (libiconv_t cd, const char* * inbuf, size_t *inbytesleft, char* * outbuf, size_t *outbytesleft);



#define iconv_close libiconv_close

extern int libiconv_close (libiconv_t cd);



}
# 114 "/opt/local/include/iconv.h" 3

Attachments (1)

main.log (50.4 KB) - added by ballapete (Peter "Pete" Dyballa) 5 years ago.
Main.log from build on Tiger with PowerPC 7447A

Download all attachments as: .zip

Change History (4)

Changed 5 years ago by ballapete (Peter "Pete" Dyballa)

Attachment: main.log added

Main.log from build on Tiger with PowerPC 7447A

comment:1 Changed 5 years ago by kencu (Ken)

It's not 100% clear to me why it would build with gcc6 on Leopard but not build with gcc6 on Tiger, and gives up this error...

Anyway, adding -fpermissive to the configure.cxxflags seems to be what it is telling you to do to fix the problem, so please give that at try (down near the bottom of the portfile, add):

configure.cxxflags-append -fpermissive

and report back success or failure.

comment:2 in reply to:  1 Changed 5 years ago by ballapete (Peter "Pete" Dyballa)

Replying to kencu:

Yes, blackbox builds with the additional compiler switch -fpermissive.

comment:3 Changed 5 years ago by kencu (Ken)

Owner: set to kencu
Resolution: fixed
Status: newclosed

In 74c2491ca2bdbd300faaba5ad5bc6d5337daa627/macports-ports (master):

blackbox: fix build on Tiger

closes: #59121#comment:2

Note: See TracTickets for help on using tickets.