Well,
1]
I do not pretend to understand this, but I “fixed” the link issue. Though my 
fix leaves me a tiny bit squeamish. I was able to get past the linker error 
with this modification to common.mk:

LDFLAGS ?= $(as_needed_LDFLAG) -u xcb_str_sizeof

Can someone please help me to understand what –u actually did? Is it a safe 
modification?

I’ll note that inside /usr/lib64 is an older version of libxcb (1.8). It is 
there only because I needed to do the following (libX11-devel depends on 
libxcb):
yum install libX11-devel

My concern is to ensure that the newer versions of the libxcb stuff (that I 
compiled) overrides the old stuff found in /usr/lib64.

2]
Other changes that I made to common.mk include:
I3_CFLAGS  = -std=c99 -I/usr/local/cwp/include
LIBS = -L$(TOPDIR) -li3 -lm -L/usr/local/cwp/lib

Is there an environment variable that I could have defined which would have 
prevented the need for these last two lines?

3]
Last question relates to some of the libxcb elements that I did not seem to 
have to build. These include:
xcb-proto, xcb-util-image, xcb-util-renderutil

The fact that I did not have to build these seems odd. Should I have built them 
for completeness? I’ll also note two libraries that I had to build, which were 
not listed in DEPENDS: xcb-util-wm and xcb-util-keysyms.

4]
As mentioned I will fully publish my procedures, once I scrub them. I will 
stand up a new box and go step by step through my procedures, at that point I 
will put them online.

I’m about to try to give i3 a run now that it is built… fingers crossed.

From: Sargrad, Dave
Sent: Tuesday, October 28, 2014 10:07 AM
To: i3-discuss@i3.zekjur.net
Subject: RE: Struggling to build i3 4.8 on centos 6.5 - but almost there


Johannes,

Thanks again for helping me past that compile issue.



I am now attempting to link. I got past a problem with a spurious -l by 
changing how I disabled pango.



Apparently the proper way to disable pango is as follows (common.mk snippet):



#PANGO_CFLAGS := $(call cflags_for_lib, cairo)

#PANGO_CFLAGS += $(call cflags_for_lib, pangocairo)

I3_CPPFLAGS  += -DPANGO_SUPPORT=0

#PANGO_LIBS   := $(call ldflags_for_lib, cairo)

#PANGO_LIBS   += $(call ldflags_for_lib, pangocairo)



The link issue I am seeing is an undefined xcb symbol:


[i3] Link i3
/usr/lib64/libxcb-render.so.0: undefined reference to `xcb_str_sizeof'
collect2: ld returned 1 exit status
make: *** [i3] Error 1



I found the following online:

http://www.murga-linux.com/puppy/viewtopic.php?t=95934&sid=ca175185bed9514c33942f4795f29892



Here it was suggested that –rdynamic be added to the link options. This did not 
work for me.



Which library should contain this symbol?













This message is intended only for the addressee and may contain information 
that is company confidential or privileged. Any technical data in this message 
may be exported only in accordance with the U.S. International Traffic in Arms 
Regulations (22 CFR Parts 120-130) or the Export Administration Regulations (15 
CFR Parts 730-774). Unauthorized use is strictly prohibited and may be 
unlawful. If you are not the intended recipient, or the person responsible for 
delivering to the intended recipient, you should not read, copy, disclose or 
otherwise use this message. If you have received this email in error, please 
delete it, and advise the sender immediately.

Reply via email to