Closed Bug 144182 Opened 23 years ago Closed 23 years ago

Static linking and xlib do not mix

Categories

(SeaMonkey :: Build Config, defect, P2)

x86
Linux

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.0.1

People

(Reporter: mks, Assigned: netscape)

Details

Attachments

(1 file)

If you set --enable-toolkit-xlib Mozilla will not link. It fails because the libgfx_xlib.a file is placed into components_inactive but the link really wants them in components. Thus the make fails not knowing how to build the components/libgfx_xlib.a file. (Which would have resulted in a link failure if the dependancy was not there) This happens because the default toolkit is GTK for the platform. The configure.in code checks this to determin the location. By setting the --enable-default-toolkit=xlib the build/link then fails with the following: nsStaticComponents.o: In function `nsWidgetXLibModule_NSGetmodule': nsStaticComponents.o(.text.nsWidgetXLibModule_NSGetmodule+0x9): undefined reference to `nsWidgetXLibModule_gModuleInfo' ../../dist/lib/libxlibxtbin.a(xlibxtbin.o): In function `xtbin::xtbin_init(void)': xlibxtbin.o(.xtbin::text.xtbin_init(void)+0x35): undefined reference to `XtDisplayToApplicationContext' (and related errors as they continue down the screen...) Both times this was from a clean build. (make -f client.mk clean) We were looking into using xlib since the remaining benefits of GTK are not actually in play in our environment. (Other than needing a static linking for performance and resource issues) Note that I have the following: ac_add_options --enable-crypto ac_add_options --disable-debug ac_add_options --enable-optimize="-O2 -march=i686" ac_add_options --disable-ldap ac_add_options --disable-bidi ac_add_options --disable-tests ac_add_options --enable-reorder ac_add_options --enable-toolkit-xlib ac_add_options --enable-default-toolkit=xlib ac_add_options --disable-shared ac_add_options --enable-static
.
Assignee: jaggernaut → Roland.Mainz
Status: UNCONFIRMED → NEW
Component: XP Toolkit/Widgets → Build Config
Ever confirmed: true
T_LIBS will be defined when the patch for bug 126163 lands. This still doesn't clear up the secondary toolkit issue. We should probably exit configure early if mutiple toolkits are specified for a static build.
Comment on attachment 83445 [details] [diff] [review] Fix module name issue & link against XT_LIBS for xlib static builds r=bryner
Attachment #83445 - Flags: review+
Patch has been checked in on the trunk.
Assignee: Roland.Mainz → seawood
Blocks: 138348
Severity: normal → major
Keywords: mozilla1.0
Priority: -- → P2
Whiteboard: [fixed on trunk]
Target Milestone: --- → mozilla1.0
Target Milestone: mozilla1.0 → mozilla1.0.1
.
No longer blocks: 138348
Status: NEW → RESOLVED
Closed: 23 years ago
Keywords: mozilla1.0
Resolution: --- → FIXED
Whiteboard: [fixed on trunk]
Target Milestone: mozilla1.0.1 → mozilla1.1alpha
Comment on attachment 83445 [details] [diff] [review] Fix module name issue & link against XT_LIBS for xlib static builds Please land this on the 1.0.1 branch. Once there, replace the "mozilla1.0.1+" keyword with the "fixed1.0.1" keyword.
Attachment #83445 - Flags: approval+
Target Milestone: mozilla1.1alpha → mozilla1.0.1
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: