#18368 closed defect (outdated)

wxwidgets 3.1.2 build fail on solaris 11 for intel

Reported by: liuqiong7618 Owned by:
Priority: normal Milestone:
Component: build Version: 3.0.3
Keywords: Cc: oneeyeman@…
Blocked By: Blocking:
Patch: no

Description

The wxwidgets version is 3.1.2
The gcc version is 4.8.
The OS version is solaris 11_3

I configure the wxwidgets with command:

In file included from ../include/wx/chartype.h:69:0,

from ../include/wx/debug.h:17,
from ../include/wx/defs.h:862,
from ../include/wx/wxprec.h:12,
from ../src/common/any.cpp:12:

/usr/include/wchar.h:141:12: note: ‘std::wcsncasecmp’

extern int wcsncasecmp(const wchar_t *, const wchar_t *, size_t);


* Error code 1
make: Fatal error: Command failed for target `baselib_any.o'

Please check the log.txt

Attachments (3)

log.txt download (17.0 KB) - added by liuqiong7618 19 months ago.
solaris11.png download (123.0 KB) - added by liuqiong7618 19 months ago.
config.log download (192.6 KB) - added by liuqiong7618 19 months ago.

Download all attachments as: .zip

Change History (10)

Changed 19 months ago by liuqiong7618

Changed 19 months ago by liuqiong7618

comment:1 Changed 19 months ago by vadz

This is pretty weird, as the compiler doesn't seem to have any declarations for the normal C functions in /usr/include/wchar.h but only the C++ versions. I don't understand how is this possible, could you please check this header to see what's going on there? Maybe we need to predefine something to get these declarations?

BTW, what did configure say about wcslen? If you don't have its output any more, you can still check config.log for it. Did it find this function? I expect it did, but it'd be nice to check.

Unfortunately I don't have access to Solaris any more, so I can't test anything myself.

Changed 19 months ago by liuqiong7618

comment:2 Changed 19 months ago by liuqiong7618

  • Cc jonesliu@… added

Hello:
I upload the config.log

comment:3 Changed 19 months ago by vadz

Thanks, it shows that gcc does find all the wide-char functions, so they're definitely there, but somehow their declarations are not seen. Again, please check your /usr/include/wchar.h contents to try to understand why does this happen, I can't help you with this unfortunately.

comment:4 Changed 19 months ago by liuqiong7618

  • Cc jonesliu@… removed

Hi:
I found the solution.
If I install the gcc by "pkg install gcc-48", I can't make it.
If I install the gcc by "pkg install gcc-45", I can make it successfully.
If I install the gcc by "pkg install gcc-3", I can make it successfully.

So, the gcc version should be under gcc-45.

comment:5 Changed 19 months ago by vadz

Is there any difference in configure results between 4.5 and 4.8?

comment:6 Changed 19 months ago by oneeyeman

  • Cc oneeyeman@… added

Hi,
You can also try to install latest Solaris Studio. wxWidgets is build successfully with Studio 12.6 and Solaris 11.4.

comment:7 Changed 16 months ago by oneeyeman

  • Resolution set to outdated
  • Status changed from new to closed

As mentioned previously wxWidgets can successfully be built on latest Open Solaris 11.4 with latest Solaris Studio 12.6 (at least version 3.1.1).
The previous versions of OS/compiler are not available for download.

I think this ticket can successfully be closed.

Please re-open if you can reproduce build failure on the recent Solaris platform with the latest gcc/Solaris Studio.

Note: See TracTickets for help on using tickets.