[resend - originally sent around 28 July 2007 IIRC, something ate it going to the list - now with more info] Hi, I'm trying to build the current cvs on a case-sensitive HFS+ volume (darwin/osx). In my particular case, the build volume BigUn3 is case-sensitive, while the system/boot/root/install volume itself is not. (Apple preinstalls OSX onto a non-case-sensitive format, so this _is_ a very common case.) Building xf86 stumbles in certain places -- one is shown here: # pwd /Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver/Xprint # make make: Entering directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver/Xprint' rm -f Util.o /usr/bin/cc -c -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -I. -I../../../programs/Xserver/mfb -I../../../programs/Xserver/mi -I../../../programs/Xserver/cfb -I../../../programs/Xserver/Xext -I../../../programs/Xserver/include -I../../../lib/X11 -I../../../exports/include -D__i386__ -D__DARWIN__ -DNO_ALLOCA -DCSRG_BASED -DSHAPE -DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY -DXSYNC -DXF86BIGFONT -DBIGREQS -DPANORAMIX -DRENDER -DRANDR -DRES -DPIXPRIV -DNDEBUG -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFree86Server -DSMART_SCHEDULE -DBUILDDEBUG -DX_BYTE_ORDER=X_LITTLE_ENDIAN -DDDXOSINIT -DSERVER_LOCK -DDDXOSFATALERROR -DDDXOSVERRORF -DMITSHM -DMITMISC -DXTEST -DXTRAP -DXCMISC -DXRECORD -DTOGCUP -DDBE -DEVI -DSCREENSAVER -DXV -DXVMC -DGLXEXT -DGLX_DIRECT_RENDERING -DGLX_USE_APPLEGL -fno-common -DFONTCACHE -UXINPUT -UXKB -UDPMSExtension -UPANORAMIX -UGLXEXT -UXF86DRI -UXF86VIDMODE -UXF86MISC -UXFreeXDGA -UXTESTEXT1 -USCREENSAVER -UXV -UXVMC -UXFree86LOADER -D_XP_PRINT_SERVER_ -DXPRINTDIR=\"/usr/X11R6/lib/X11/xserver\" -DXPRASTERDDX -DXPPCLDDX -DXPPSDDX util.c i686-apple-darwin8-gcc-4.0.1: util.c: No such file or directory i686-apple-darwin8-gcc-4.0.1: no input files make: *** [Util.o] Error 1 make: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver/Xprint' # ls -al total 348 drwxr-xr-x 36 root scifi 1224 2007-07-28 17:48 . drwxr-xr-x 47 root scifi 1598 2007-07-28 17:33 .. lrwxr-xr-x 1 root scifi 50 2007-07-28 17:21 AttrValid.c -> ../../../../xc/programs/Xserver/Xprint/AttrValid.c lrwxr-xr-x 1 root scifi 50 2007-07-28 17:21 AttrValid.h -> ../../../../xc/programs/Xserver/Xprint/AttrValid.h lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 DiPrint.h -> ../../../../xc/programs/Xserver/Xprint/DiPrint.h lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 Imakefile -> ../../../../xc/programs/Xserver/Xprint/Imakefile lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 Init.c -> ../../../../xc/programs/Xserver/Xprint/Init.c -rw-r--r-- 1 root scifi 72476 2007-07-28 17:48 Init.o -rw-r--r-- 1 root scifi 70830 2007-07-28 17:36 Makefile -rw-r--r-- 1 root scifi 33270 2007-07-28 17:33 Makefile.bak lrwxr-xr-x 1 root scifi 44 2007-07-28 17:21 Oid.c -> ../../../../xc/programs/Xserver/Xprint/Oid.c lrwxr-xr-x 1 root scifi 44 2007-07-28 17:21 Oid.h -> ../../../../xc/programs/Xserver/Xprint/Oid.h lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 OidDefs.h -> ../../../../xc/programs/Xserver/Xprint/OidDefs.h lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 OidStrs.h -> ../../../../xc/programs/Xserver/Xprint/OidStrs.h lrwxr-xr-x 1 root scifi 25 2007-07-28 17:34 Quarks.c -> ../../../lib/X11/Quarks.c -rw-r--r-- 1 root scifi 7036 2007-07-28 17:48 Quarks.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 Util.c -> ../../../../xc/programs/Xserver/Xprint/Util.c lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 ValTree.c -> ../../../../xc/programs/Xserver/Xprint/ValTree.c drwxr-xr-x 10 root scifi 340 2007-07-28 17:36 XTrap drwxr-xr-x 44 root scifi 1496 2007-07-28 17:36 Xext lrwxr-xr-x 1 root scifi 51 2007-07-28 17:21 attributes.c -> ../../../../xc/programs/Xserver/Xprint/attributes.c lrwxr-xr-x 1 root scifi 51 2007-07-28 17:21 attributes.h -> ../../../../xc/programs/Xserver/Xprint/attributes.h -rw-r--r-- 1 root scifi 91724 2007-07-28 17:48 attributes.o drwxr-xr-x 8 root scifi 272 2007-07-28 17:36 dbe lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 ddxInit.c -> ../../../../xc/programs/Xserver/Xprint/ddxInit.c drwxr-xr-x 29 root scifi 986 2007-07-28 17:36 dix lrwxr-xr-x 1 root scifi 51 2007-07-28 17:21 mediaSizes.c -> ../../../../xc/programs/Xserver/Xprint/mediaSizes.c lrwxr-xr-x 1 root scifi 40 2007-07-28 17:34 miinitext.c -> ../../../programs/Xserver/mi/miinitext.c drwxr-xr-x 27 root scifi 918 2007-07-28 17:36 os drwxr-xr-x 28 root scifi 952 2007-07-28 17:36 pcl drwxr-xr-x 3 root scifi 102 2007-07-28 17:21 pcl-mono drwxr-xr-x 27 root scifi 918 2007-07-28 17:36 ps drwxr-xr-x 7 root scifi 238 2007-07-28 17:36 randr drwxr-xr-x 8 root scifi 272 2007-07-28 17:36 raster drwxr-xr-x 8 root scifi 272 2007-07-28 17:36 record drwxr-xr-x 16 root scifi 544 2007-07-28 17:36 render The lower-case 'util.c' string is not in this subdir's Imakefile or Makefile; in fact I can't grep for it without finding a few hundred other hits i.e. which one's "this" one. ;) So to get around this I simply put a symlink in this subdir: ln -s Util.c util.c which then causes Util.o to not be found, so another symlink is needed: ln -s util.o Util.o in a backwards fashion. I don't know why I haven't stumbled on this before: I'm using the same current GNU make-3.81.90+ from their cvs repo, and I've built xf86-cvs before on case-sensitive HFS+ volumes. p.s. I now have a new 24-inch iMac with core2 duo chipset, maxed out SDRAM, extra firewire disks, etc. We're actually running a fixed build of this version of xf86 already (using current cvs/svn of pan2 and many gnome components also; see User-Agent header of this post ;) ). -*- Okay further build issues come about that are related to the above. [...] ranlib libcfb32.a make[4]: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver/cfb32' /usr/bin/cc -o Xprt -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -Wl,-search_paths_first -L../../exports/lib Xprint/ddxInit.o Xprint/miinitext.o Xprint/dix/libdix.a Xprint/os/libos.a Xprint/libprinter.a Xprint/raster/libraster.a Xprint/pcl/libpcl.a Xprint/ps/libps.a cfb32/libcfb32.a cfb/libcfb.a mfb/libmfb.a mi/libmi.a Xprint/Xext/libext.a Xprint/dbe/libdbe.a Xprint/record/librecord.a Xprint/XTrap/libxtrap.a lbx/liblbx.a ../../lib/lbxutil/liblbxutil.a Xprint/randr/librandr.a Xprint/render/librender.a -L/usr/X11R6/lib -L../../exports/lib -lXfont -L/usr/X11R6/lib -lfreetype -lz -lXau -lXdmcp /usr/bin/ld: archive: Xprint/libprinter.a has no table of contents, add one with ranlib(1) (can't load from it) collect2: ld returned 1 exit status make: *** [Xprt] Error 1 make: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver' All ya gotta do is: # ranlib Xprint/libprinter.a then continue with a normal make, then we hit this third stumble: make[1]: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver/cfb32' /usr/bin/cc -o Xprt -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -Wl,-search_paths_first -L../../exports/lib Xprint/ddxInit.o Xprint/miinitext.o Xprint/dix/libdix.a Xprint/os/libos.a Xprint/libprinter.a Xprint/raster/libraster.a Xprint/pcl/libpcl.a Xprint/ps/libps.a cfb32/libcfb32.a cfb/libcfb.a mfb/libmfb.a mi/libmi.a Xprint/Xext/libext.a Xprint/dbe/libdbe.a Xprint/record/librecord.a Xprint/XTrap/libxtrap.a lbx/liblbx.a ../../lib/lbxutil/liblbxutil.a Xprint/randr/librandr.a Xprint/render/librender.a -L/usr/X11R6/lib -L../../exports/lib -lXfont -L/usr/X11R6/lib -lfreetype -lz -lXau -lXdmcp /usr/bin/ld: Undefined symbols: _ReplaceAnyString _TransferBytes _CopyContentsAndDelete _ReplaceFileString _XpFinishDocData _XpOpenTmpFile _XpSendDocumentData collect2: ld returned 1 exit status make: *** [Xprt] Error 1 make: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/Xserver' Apparently this is because libprinter.a didn't get [U,u]til.o rolled into it due to its earlier case-sensitive build issues. So manually add util.o to this link cmd, which now needs -Wl,-m to accept duplicate symbols: /usr/bin/cc -o Xprt -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -Wl,-search_paths_first -L../../exports/lib Xprint/ddxInit.o Xprint/miinitext.o Xprint/dix/libdix.a Xprint/os/libos.a Xprint/libprinter.a Xprint/raster/libraster.a Xprint/pcl/libpcl.a Xprint/ps/libps.a cfb32/libcfb32.a cfb/libcfb.a mfb/libmfb.a mi/libmi.a Xprint/Xext/libext.a Xprint/dbe/libdbe.a Xprint/record/librecord.a Xprint/XTrap/libxtrap.a lbx/liblbx.a ../../lib/lbxutil/liblbxutil.a Xprint/randr/librandr.a Xprint/render/librender.a -L/usr/X11R6/lib -L../../exports/lib -lXfont -L/usr/X11R6/lib -lfreetype -lz -lXau -lXdmcp Xprint/util.o -Wl,-m -*- Same type thing happens here: [...] make: Entering directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/lbxproxy/di' rm -f pm.o /usr/bin/cc -c -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -I. -I../include -I../../../exports/include -D__i386__ -D__DARWIN__ -DNO_ALLOCA -DCSRG_BASED -DSHAPE -DXINPUT -DXKB -DLBX -DXAPPGROUP -DXCSECURITY -DXSYNC -DXF86BIGFONT -DBIGREQS -DPANORAMIX -DRENDER -DRANDR -DRES -DPIXPRIV -DNDEBUG -DAVOID_GLYPHBLT -DPIXPRIV -DSINGLEDEPTH -DXFree86Server -DSMART_SCHEDULE -DBUILDDEBUG -DX_BYTE_ORDER=X_LITTLE_ENDIAN -DBIGREQS -DIPv6 PM.c i686-apple-darwin8-gcc-4.0.1: PM.c: No such file or directory i686-apple-darwin8-gcc-4.0.1: no input files make: *** [pm.o] Error 1 make: Leaving directory `/Volumes/BigUn3/Projects/xf86_cvs/build/programs/lbxproxy/di' # pwd /Volumes/BigUn3/Projects/xf86_cvs/build/programs/lbxproxy/di # ls -al total 1220 drwxr-xr-x 62 root scifi 2108 2007-07-28 19:20 . drwxr-xr-x 11 root scifi 374 2007-07-28 17:33 .. lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 Imakefile -> ../../../../xc/programs/lbxproxy/di/Imakefile -rw-r--r-- 1 root scifi 81038 2007-07-28 17:37 Makefile -rw-r--r-- 1 root scifi 27765 2007-07-28 17:33 Makefile.bak lrwxr-xr-x 1 root scifi 47 2007-07-28 17:21 atomcache.c -> ../../../../xc/programs/lbxproxy/di/atomcache.c -rw-r--r-- 1 root scifi 37308 2007-07-28 19:20 atomcache.o lrwxr-xr-x 1 root scifi 43 2007-07-28 17:21 cache.c -> ../../../../xc/programs/lbxproxy/di/cache.c -rw-r--r-- 1 root scifi 40340 2007-07-28 19:20 cache.o lrwxr-xr-x 1 root scifi 42 2007-07-28 17:21 cmap.c -> ../../../../xc/programs/lbxproxy/di/cmap.c -rw-r--r-- 1 root scifi 62532 2007-07-28 19:20 cmap.o lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 cmaputil.c -> ../../../../xc/programs/lbxproxy/di/cmaputil.c -rw-r--r-- 1 root scifi 54564 2007-07-28 19:20 cmaputil.o lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 connection.h -> ../../../../xc/programs/lbxproxy/di/connection.h lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 dispatch.c -> ../../../../xc/programs/lbxproxy/di/dispatch.c lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 dispatch.h -> ../../../../xc/programs/lbxproxy/di/dispatch.h -rw-r--r-- 1 root scifi 45896 2007-07-28 19:20 dispatch.o lrwxr-xr-x 1 root scifi 48 2007-07-28 17:21 extensions.c -> ../../../../xc/programs/lbxproxy/di/extensions.c -rw-r--r-- 1 root scifi 40184 2007-07-28 19:20 extensions.o lrwxr-xr-x 1 root scifi 41 2007-07-28 17:21 gfx.c -> ../../../../xc/programs/lbxproxy/di/gfx.c lrwxr-xr-x 1 root scifi 41 2007-07-28 17:21 gfx.h -> ../../../../xc/programs/lbxproxy/di/gfx.h -rw-r--r-- 1 root scifi 70616 2007-07-28 19:20 gfx.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 globals.c -> ../../../../xc/programs/lbxproxy/di/globals.c -rw-r--r-- 1 root scifi 24964 2007-07-28 19:20 globals.o lrwxr-xr-x 1 root scifi 42 2007-07-28 17:21 init.c -> ../../../../xc/programs/lbxproxy/di/init.c -rw-r--r-- 1 root scifi 28548 2007-07-28 19:20 init.o lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 lbxfuncs.c -> ../../../../xc/programs/lbxproxy/di/lbxfuncs.c lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 lbxfuncs.h -> ../../../../xc/programs/lbxproxy/di/lbxfuncs.h -rw-r--r-- 1 root scifi 62844 2007-07-28 19:20 lbxfuncs.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 lbxutil.c -> ../../../../xc/programs/lbxproxy/di/lbxutil.c lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 lbxutil.h -> ../../../../xc/programs/lbxproxy/di/lbxutil.h -rw-r--r-- 1 root scifi 44348 2007-07-28 19:20 lbxutil.o lrwxr-xr-x 1 root scifi 42 2007-07-28 17:21 main.c -> ../../../../xc/programs/lbxproxy/di/main.c -rw-r--r-- 1 root scifi 36812 2007-07-28 19:20 main.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 options.c -> ../../../../xc/programs/lbxproxy/di/options.c -rw-r--r-- 1 root scifi 47036 2007-07-28 19:20 options.o lrwxr-xr-x 1 root scifi 40 2007-07-28 17:21 pm.c -> ../../../../xc/programs/lbxproxy/di/pm.c lrwxr-xr-x 1 root scifi 43 2007-07-28 17:21 props.c -> ../../../../xc/programs/lbxproxy/di/props.c -rw-r--r-- 1 root scifi 40940 2007-07-28 19:20 props.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 reqtype.c -> ../../../../xc/programs/lbxproxy/di/reqtype.c -rw-r--r-- 1 root scifi 2500 2007-07-28 19:20 reqtype.o lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 resource.c -> ../../../../xc/programs/lbxproxy/di/resource.c -rw-r--r-- 1 root scifi 41668 2007-07-28 19:20 resource.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 swaprep.c -> ../../../../xc/programs/lbxproxy/di/swaprep.c -rw-r--r-- 1 root scifi 38092 2007-07-28 19:20 swaprep.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 swapreq.c -> ../../../../xc/programs/lbxproxy/di/swapreq.c -rw-r--r-- 1 root scifi 12944 2007-07-28 19:20 swapreq.o lrwxr-xr-x 1 root scifi 44 2007-07-28 17:21 tables.c -> ../../../../xc/programs/lbxproxy/di/tables.c lrwxr-xr-x 1 root scifi 44 2007-07-28 17:21 tables.h -> ../../../../xc/programs/lbxproxy/di/tables.h -rw-r--r-- 1 root scifi 8324 2007-07-28 19:20 tables.o lrwxr-xr-x 1 root scifi 42 2007-07-28 17:21 tags.c -> ../../../../xc/programs/lbxproxy/di/tags.c -rw-r--r-- 1 root scifi 37520 2007-07-28 19:20 tags.o lrwxr-xr-x 1 root scifi 46 2007-07-28 17:21 unsquish.c -> ../../../../xc/programs/lbxproxy/di/unsquish.c -rw-r--r-- 1 root scifi 20280 2007-07-28 19:20 unsquish.o lrwxr-xr-x 1 root scifi 43 2007-07-28 17:21 utils.c -> ../../../../xc/programs/lbxproxy/di/utils.c lrwxr-xr-x 1 root scifi 43 2007-07-28 17:21 utils.h -> ../../../../xc/programs/lbxproxy/di/utils.h -rw-r--r-- 1 root scifi 56616 2007-07-28 19:20 utils.o lrwxr-xr-x 1 root scifi 42 2007-07-28 17:21 wire.c -> ../../../../xc/programs/lbxproxy/di/wire.c -rw-r--r-- 1 root scifi 68708 2007-07-28 19:20 wire.o lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 zeropad.c -> ../../../../xc/programs/lbxproxy/di/zeropad.c lrwxr-xr-x 1 root scifi 45 2007-07-28 17:21 zeropad.h -> ../../../../xc/programs/lbxproxy/di/zeropad.h -rw-r--r-- 1 root scifi 25856 2007-07-28 19:20 zeropad.o To get around this, do a symlink like with the util.c problem above: ln -s pm.c PM.c Let make run s'more, then the object will be missing, which needs: ln -s PM.o pm.o Let make run s'more, it'll need you to run ranlib on it, then continue on with normal make, and the next link step will need this object tacked on as well: # pwd /Volumes/BigUn3/Projects/xf86_cvs/build/programs/lbxproxy # /usr/bin/cc -o lbxproxy -Os -g -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -no-cpp-precomp -UNEED_SCREEN_REGIONS -Wl,-search_paths_first -L../../exports/lib di/main.o di/libdilbx.a os/libos.a ../../lib/lbxutil/liblbxutil.a -L/usr/X11R6/lib -lICE -lXext -lX11 -lz di/PM.o -Wl,-m -*- After these hacks, the rest of the build seems to go fine, even the XDarwin.app is fixed. I think if the case-sensitive issues with [u,U]til.[c,o] and [PM][pm].[c,o] are fixed, the other link problems will automatically be fixed, too. Thanks for any help. I can open a bugzilla report if needed for more details. _______________________________________________ Devel mailing list Devel@xxxxxxxxxxx http://XFree86.Org/mailman/listinfo/devel