Starting from the middle of January (not precisely) the Xorg binary, when built from ports, is unable to start on 7-CURRENT since it can not dlopen() some required modules (the bitmap module is the most frequent cause of the errors). Investigation showed that Xorg lacks the global symbols from the 'loader' subsystem to be exported for the glopen()/dlsym(). The addition of the --export-dynamic flag to the 'ld' linker solved that problem. Not sure that this is related to the recent removal of the objformat, but I've not investigated this. Here are two relevant mailing list topics: http://lists.freebsd.org/pipermail/freebsd-ports/2007-February/038495.html http://lists.freebsd.org/pipermail/freebsd-current/2007-February/069116.html The problem is not specific to sparc: it is spotted on sparc64, i386 and ia64. My fix was tested for i386 and ia64. No answer from sparc64 side yet. Fix: You should add the following lines to the end of the files/FreeBSD.cf file: ----- /* * Add --export-dynamic flag for FreeBSD 7.x and later. */ #if OSMajorVersion >= 7 #define ExtraLoadOptions -Wl,--export-dynamic #endif ----- How-To-Repeat: Install 7-CURRENT, build xorg-server on it and try to start Xorg binary. It will complain about the libbitmap.so and unresolved symbols.
Responsible Changed From-To: freebsd-ports-bugs->freebsd-x11 Over to maintainer
After some investigation I have found a hint to connect this problem to the removal of objformat(1) on -CURRENT. In short, the port needs the same patch that was applied to the devel/imake-6 port because it uses a private copy of the imake sources during build. I am not sure if it is needed for every xorg port, but probably all of them need it that build and install libraries. The patch is trivial and is attached to avoid mangling. -- Regards: Szilveszter ADAM Budapest Hungary
> this file FreeBSD.cf doesnt exist OK, I was in rush and made a mistake. Attaching the proper patch to the files/patch-FreeBSD.cf --- patch-patch-FreeBSD.cf begins here --- --- patch-FreeBSD.cf.orig Mon Feb 19 10:46:16 2007 +++ patch-FreeBSD.cf Mon Feb 19 10:45:52 2007 @@ -1,5 +1,5 @@ ---- config/cf/FreeBSD.cf.orig Sun Aug 15 10:03:36 2004 -+++ config/cf/FreeBSD.cf Sun Feb 6 03:56:59 2005 +--- FreeBSD.cf.orig Wed May 4 08:14:57 2005 ++++ FreeBSD.cf Mon Feb 19 10:39:59 2007 @@ -78,6 +78,7 @@ #define HasIssetugid YES #define HasPoll YES @@ -59,9 +59,9 @@ # else # define LibraryRpathLoadFlags -R $(USRLIBDIRPATH) # endif -@@ -442,7 +444,9 @@ - #define AsVISOption -Av9a - #define AsOutputArchSize 64 +@@ -446,7 +448,9 @@ + #ifdef PpcArchitecture + #define XF86INT10_BUILD X86INT10_STUB #endif - +#ifdef PpcArchitecture @@ -70,7 +70,7 @@ #define StandardDefines -DCSRG_BASED #if OSMajorVersion > 1 -@@ -463,18 +467,8 @@ +@@ -467,18 +471,8 @@ #define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC #endif @@ -91,3 +91,18 @@ #ifndef PreIncDir # define PreIncDir /usr/include +@@ -576,6 +570,14 @@ + #if (GccMajorVersion == 2 && GccMinorVersion == 95) + #define GccOptBug295 + #endif ++ ++/* ++ * Add --export-dynamic flag for FreeBSD 7.x and later. ++ */ ++#if OSMajorVersion >= 7 ++#define ExtraLoadOptions -Wl,--export-dynamic ++#endif ++ + + #include <bsdLib.rules> + --- patch-patch-FreeBSD.cf ends here --- > the file is patch-FreeBSD.cf i put that lines and rebuild xorg-server > and still have the issue. What port version do you have? What is the output from the 'elfdump -a /usr/X11R6/bin/Xorg'. Szilveszter Adam has suggested another workaround, maybe you should try it. It is on the PR page now. -- Eygene
Mon, Feb 19, 2007 at 10:58:56AM +0300, Eygene Ryabinkin wrote: > > OK, I was in rush and made a mistake. Attaching the proper patch > to the files/patch-FreeBSD.cf I was in a rush again. Here is the correct version of my patch to files/patch-FreeBSD.cf that will enable the patched patch to find the file to patch ;)) --- patch-patch-FreeBSD.cf begins here --- --- patch-FreeBSD.cf.orig Mon Feb 19 10:46:16 2007 +++ patch-FreeBSD.cf Mon Feb 19 10:45:52 2007 @@ -1,5 +1,5 @@ ---- config/cf/FreeBSD.cf.orig Sun Aug 15 10:03:36 2004 -+++ config/cf/FreeBSD.cf Sun Feb 6 03:56:59 2005 +--- config/cf/FreeBSD.cf.orig Wed May 4 08:14:57 2005 ++++ config/cf/FreeBSD.cf Mon Feb 19 10:39:59 2007 @@ -78,6 +78,7 @@ #define HasIssetugid YES #define HasPoll YES @@ -59,9 +59,9 @@ # else # define LibraryRpathLoadFlags -R $(USRLIBDIRPATH) # endif -@@ -442,7 +444,9 @@ - #define AsVISOption -Av9a - #define AsOutputArchSize 64 +@@ -446,7 +448,9 @@ + #ifdef PpcArchitecture + #define XF86INT10_BUILD X86INT10_STUB #endif - +#ifdef PpcArchitecture @@ -70,7 +70,7 @@ #define StandardDefines -DCSRG_BASED #if OSMajorVersion > 1 -@@ -463,18 +467,8 @@ +@@ -467,18 +471,8 @@ #define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC #endif @@ -91,3 +91,18 @@ #ifndef PreIncDir # define PreIncDir /usr/include +@@ -576,6 +570,14 @@ + #if (GccMajorVersion == 2 && GccMinorVersion == 95) + #define GccOptBug295 + #endif ++ ++/* ++ * Add --export-dynamic flag for FreeBSD 7.x and later. ++ */ ++#if OSMajorVersion >= 7 ++#define ExtraLoadOptions -Wl,--export-dynamic ++#endif ++ + + #include <bsdLib.rules> + --- patch-patch-FreeBSD.cf ends here --- -- Eygene
lesi 2007-02-22 21:18:01 UTC FreeBSD ports repository Modified files: x11-servers/xorg-server Makefile.inc Added files: x11-servers/xorg-server/files patch-imake.c Log: Fix loading modules on current by adding patch from devel/imake-6 since local copy of imake is used at configuring. Since FreeBSD versions older than 300004 are not supported, simplify patch to just return elf for default. PR: ports/109091 Submitted by: Szilveszter Adam (sziszi at bsd dot hu) Revision Changes Path 1.18 +2 -1 ports/x11-servers/xorg-server/Makefile.inc 1.1 +38 -0 ports/x11-servers/xorg-server/files/patch-imake.c (new) _______________________________________________ cvs-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/cvs-all To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
State Changed From-To: open->closed Patch from devel/imake-6 was copied over and simplified a bit. Thanks!
Just a quick 'me too.' Prior to the port's update today I had the same problem, the fix worked. hth, Doug -- This .signature sanitized for your protection