Date: Sat, 3 Apr 2004 00:04:04 EST-10EDT,10,-1,0,7200,3,-1,0,7200,3600 Subject: [UnixOS2_Archive] No. 335 ************************************************** Friday 02 April 2004 Number 335 ************************************************** Subjects for today 1 Re: Building DLLs : Knut St. Osmundsen" 2 Re: wxWindows build problem : Stefan Neis 3 RE: Building DLLs : Dave Webster 4 cannot export symbol _nl_msg_cat_cntr of type 9 : John Poltorak 5 Re: z_s.lib --> z_s.a : Dave and Natalie" 6 Re: Building DLLs : Dave and Natalie" 7 Autoconf v2.59 : John Poltorak **= Email 1 ==========================** Date: Thu, 01 Apr 2004 17:20:47 +0200 From: "Knut St. Osmundsen" Subject: Re: Building DLLs Stefan Neis wrote: > Hi, > > I'm currently fiddling with building DLLs for wxWindows and have been > adding support for building libraries in both a.out and OMF format, > both static libs and DLLs. However, when trying to build a.out DLLs > I'm having problems with long symbols for different functions which > share a "long" common prefix: gcc -Zdll ... complains about the > symbols being identical, although they are not. Is that a limitation > of a.out build (i.e. you just have to use -Zomf for such DLLs) or is > there some special linker flag which would enable building a.out > versions as well? Can you give examples of these long symbol names? And how long are 'long' in this case? I don't think a.out have a symbol length limitation worse than OMF, so I'm curious about what trouble you're seeing. It's likely a linker bug, and if it works with the OMF linkers you'll have to stick with using that untill I get the binutils ld fixed. There is no flag for building both a.out and omf binaries, that doesn't make much sense IMHO. Kind Regards, knut PS. OMF have a 255 bytes limit so emxomf does a little hashing of the name to try making it unique. Normally you need to have really nasty C++ template code to get symbols of more than 255 bytes. **= Email 2 ==========================** Date: Thu, 1 Apr 2004 18:04:26 +0200 (CEST) From: Stefan Neis Subject: Re: wxWindows build problem On Thu, 1 Apr 2004, John Poltorak wrote: > After setting MAKESHELL the error above disappears, but then I get a > number of warnings and errors:- > > > make > ./bk-deps gcc -c -o wxregex_regcomp.o -Ilib/wx/include/base-2.5 -I./include -O2 -Zmt -D__ST_MT_ERRNO__ -Wall src/regex/regcomp.c > src/regex/regcomp.c: In function `parseqatom': > src/regex/regcomp.c:902: warning: subscript has type `char' > src/regex/regc_lex.c: In function `prefixes': > In file included from src/regex/regcomp.c:2175: Those are normal... > src/regex/regc_locale.c:625: `isupper' undeclared here (not in a function) > src/regex/regc_locale.c:625: initializer element for `cclasses[10].isfunc' is not constant > src/regex/regc_locale.c:627: `isxdigit' undeclared here (not in a function) > src/regex/regc_locale.c:627: initializer element for `cclasses[11].isfunc' is not constant > make: *** [wxregex_regcomp.o] Error 1 Those are somewhat surprising, though (i.e. I never got those). EMX without fix 4 being applied to the headers? Regards, Stefan **= Email 3 ==========================** Date: Thu, 1 Apr 2004 10:10:22 -0600 From: Dave Webster Subject: RE: Building DLLs PS. OMF have a 255 bytes limit so emxomf does a little hashing of the name to try making it unique. Normally you need to have really nasty C++ template code to get symbols of more than 255 bytes. Well we know about that one..... **= Email 4 ==========================** Date: Fri, 2 Apr 2004 00:06:11 +0000 From: John Poltorak Subject: cannot export symbol _nl_msg_cat_cntr of type 9 In trying to rebuild the port of gettext 0.10.39 I get this error msg:- print -r "LIBRARY intl INITINSTANCE" > .libs/intl.def print -r "DESCRIPTION \"intl\"" >> .libs/intl.def print -r DATA >> .libs/intl.def print -r " SINGLE NONSHARED" >> .libs/intl.def print -r EXPORTS >> .libs/intl.def emxexp -u intl-compat.lo bindtextdom.lo dcgettext.lo dgettext.lo gettext.lo finddomain.lo loadmsgcat.lo localealias.lo textdomain.lo l10nflist.lo explodename.lo dcigettext.lo dcngettext.lo dngettext.lo ngettext.lo plural.lo localcharset.lo >> .libs/intl.def gcc -Zdll -O2 -s -Zmt -D__ST_MT_ERRNO__ -o .libs/intl.dll intl-compat.lo bindtextdom.lo dcgettext.lo dgettext.lo gettext.lo finddomain.lo loadmsgcat.lo localealias.lo textdomain.lo l10nflist.lo explodename.lo dcigettext.lo dcngettext.lo dngettext.lo ngettext.lo plural.lo localcharset.lo .libs/intl.def emxbind: cannot export symbol _nl_msg_cat_cntr of type 9 C:\UNIXOS2\EMX\BIN\ld.exe: emxbind failed Does this look familiar to anyone? -- John **= Email 5 ==========================** Date: Thu, 01 Apr 2004 20:15:28 -0800 From: "Dave and Natalie" Subject: Re: z_s.lib --> z_s.a On Thu, 1 Apr 2004 08:31:49 +0200 (CEST), Stefan Neis wrote: >On Wed, 31 Mar 2004, Dave and Natalie wrote: > >> Hi, is it possible to create a static a.out lib from a static OMF lib? And if so what is the command? > >No, AFAIK, there are only tools that work the other way round. That's why >I think that libs should _never_ be generated in OMF mode... Oh well back to the beginning Actually not to hard to change from OMF to a.out, seems to work fine just without the -Zomf. Interestingly most of the common libs seem to be generated in OMF mode Dave **= Email 6 ==========================** Date: Thu, 01 Apr 2004 20:16:05 -0800 From: "Dave and Natalie" Subject: Re: Building DLLs On Thu, 01 Apr 2004 17:20:47 +0200, Knut St. Osmundsen wrote: > >There is no flag for building both a.out and omf binaries, that doesn't >make much sense IMHO. Well when building common DLLs such as zlib for distributation it is nice to include both a.out and omf export libs (and static) so anyone using it has a choice Dave **= Email 7 ==========================** Date: Fri, 2 Apr 2004 09:27:43 +0000 From: John Poltorak Subject: Autoconf v2.59 Does anyone know if Autoconf v2.59 works straight out of the box on OS/2? Does Innotek's version have any modifications to the distributed source? -- John