Opened 19 years ago
Closed 19 years ago
#6050 closed defect (fixed)
BUG: openmotif-2.3.0beta1 build fails with libiconv port installed
Reported by: | cssdev@… | Owned by: | yves@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 1.0 |
Keywords: | Cc: | mww@… | |
Port: |
Description
If the libiconv port is installed and active, then the openmotif 2.3.0beta1 port build fails:
/usr/bin/gcc-4.0 -I/opt/local/include -Wall -g -Wno-unused -Wno-comment -I/opt/local/include -I/ opt/local/include/freetype2 -I/opt/local/include -I/opt/local/include -DXTHREADS -I/opt/local/ include -I/usr/X11R6/include -o .libs/xmbind xmbind.o -L/opt/local/lib ../../lib/Xm/.libs/libXm.dylib -L/usr/X11R6/lib -lXmu -lXt -lXext -lXp /opt/local/lib/libXft.dylib /opt/local/lib/libfontconfig.dylib / opt/local/lib/libfreetype.dylib -lz /opt/local/lib/libexpat.dylib /opt/local/lib/libXrender.dylib -lX11 / opt/local/lib/libjpeg.dylib -lpng /usr/bin/ld: warning prebinding disabled because dependent library: /opt/local/lib/libXm.4.dylib is not prebound /usr/bin/ld: Undefined symbols: _libiconv _libiconv_close _libiconv_open collect2: ld returned 1 exit status make[2]: * [xmbind] Error 1 make[1]: * [all-recursive] Error 1 make: * [all-recursive] Error 1
It looks like there are two issues with this problem:
- The openmotif configure script finds iconv.h, but it only checks linking for iconv_open(). This fails if
libiconv is installed, as the test uses the port's iconv.h without looking for the corresponding libiconv_open() function when linking.
- The source file lib/Xm/ResEncod.c includes iconv.h without any config.h tests. As a result, this file
ALWAYS includes iconv.h. Due to the DP flags to include ${prefix}/include, this means that the libiconv port's header gets included regardless of the configure test.
It looks like the broken configure script needs to also check for libiconv_open() in addition to its regular iconv_open() check when trying to link with -liconv. The authors should probably also fix ResEncod.c to properly account for whether it should use iconv or not.
Attachments (1)
Change History (5)
comment:1 Changed 19 years ago by jmpp@…
Changed 19 years ago by cssdev@…
Attachment: | patch-configure.ac.diff added |
---|
Try to link with libiconv_open()
comment:2 Changed 19 years ago by yves@…
Status: | new → assigned |
---|
You got me confused a bit, as it builds fine for me with libiconv port active.
there is a new Portfile in cvs now which should fix the problem
thanks for your input
comment:4 Changed 19 years ago by yves@…
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
Not getting my feet too wet with this since I hardly ever use X11 and don't really know much about iconv, I'd suggest upgrading iconv manually first before trying to proceed. There are many failures related to the iconv upgrade process and I don't know what's the status on that (you should ask the maitainer), but I do know uninstalling and reinstalling it manually solves a lot of the conflicts. After that's done I'd proceed with the openmotif trials.
-jmpp