I now have working 32-bit and 64-bit builds.  I added some logic to the
build script to allow me to override the PREFIX so that these two builds
can co-exist on the same machine.  The magic incantation on RHEL 5 is as
follows:

# 64-bit version
cd ~/tigervnc64/unix
PREFIX=`pwd`/xorg.build sh build-xorg-7.4 init
PREFIX=`pwd`/xorg.build sh build-xorg-7.4 build --with-included-jpeg

# 32-bit version cross-compiled on 64-bit system
cd ~/tigervnc/unix
PREFIX=`pwd`/xorg.build sh build-xorg-7.4 init
PREFIX=`pwd`/xorg.build sh build-xorg-7.4 build --host i686-pc-linux-gnu
--with-included-jpeg CFLAGS=-m32 CXXFLAGS=-m32 LDFLAGS=-m32

I would propose to make the above PREFIX the default value, instead of
storing the X11 module build under /tmp.  Users could still override
PREFIX with a directory in /tmp if they wanted.  Realistically, people
aren't going to want to re-run this script every time they do the
build.  They'll want to run it once to get the initial build, then
incrementally rebuild using make, which means that the dependency builds
need to be preserved someplace other than a /tmp directory that may go away.

Before the 32-bit build would work, I had to install a 32-bit version of
e2fsprogs-devel and add the following 32-bit development stubs:

/usr/lib/libcairo.so-->/usr/lib/libcairo.so.2
/usr/lib/libXpm.so->/usr/lib/libXpm.so.4
/lib/libdbus-1.so->/lib/libdbus-1.so.3

The 32-bit e2fsprogs-devel was necessary to build libSM, but libSM seems
to be only used by DRI.  Question-- does DRI even work with TigerVNC? 
If not, then I think the build script should disable it, as well as any
other extensions that are known not to work (and dependencies thereof.) 
That will greatly accelerate the build process and eliminate some
dependency requirements.

Another question -- The resulting Xvnc shows up with dependencies on the
following dynamic libs which will cause compatibility issues when
deploying the application:

Hard-coded dependencies to libs in TigerVNC build directory:
libXfont.so.1
libfontenc.so.1
libpixman-1.so.0
libX11.so.6
libXau.so.6
libXdmcp.so.6

System dependencies:
libfreetype.so.6
libhal.so.1
libdbus-1.so.3
libcrypto.so.6
libstdc++.so.6

The first list is of the most concern, because the LD run path of these
is hard coded to the TigerVNC development directory.  I am wondering
whether the build would work using the system-installed version of these
libraries instead, or perhaps if Xvnc should be built as a monolithic
executable with those libraries included statically.

From the second list, it will probably be necessary to link statically
with at least some of these (for sure libcrypto and libstdc++) in order
to produce a binary that will run on multiple Linux releases.  I don't
know if anyone cares about that other than me.


Peter Åstrand wrote:
>
> Just to be sure:
>
> Have you made any progress with this problem? Do you want to continue
> debugging the problem yourself or do you want me to investigate this
> some more?
>
> Best regards,
> Peter Åstrand
>
> On Thu, 19 Mar 2009, Peter Åstrand wrote:
>
>>
>>> Unfortunately, the new macros did not fix it.
>>>
>>>> Hmm, from this output, I can't tell whether this problem is caused by
>>>> the missing macros package, or of this is another problem. But let's
>>>> try the macros package fix first.
>>
>> Seems to be this problem:
>> https://bugs.freedesktop.org/show_bug.cgi?id=17593
>>
>> I wonder why it doesn't happen on our system. Are you using any
>> special CFLAGS? Perhaps there's a difference in the installed
>> packages? For reference, I've put the list of all packages installed
>> on our system on
>> http://www.cendio.com/~astrand/tigervnc/rhel-packages.txt.
>>
>> Best regards, ---
>> Peter Åstrand        ThinLinc Chief Developer
>> Cendio AB        http://www.cendio.com
>> Wallenbergs gata 4
>> 583 30 Linköping    Phone: +46-13-21 46 00
>
>
> ---
> Peter Åstrand        ThinLinc Chief Developer
> Cendio AB        http://www.cendio.com
> Wallenbergs gata 4
> 583 30 Linköping    Phone: +46-13-21 46 00


------------------------------------------------------------------------------
Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
easily build your RIAs with Flex Builder, the Eclipse(TM)based development
software that enables intelligent coding and step-through debugging.
Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
_______________________________________________
Tigervnc-devel mailing list
Tigervnc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel

Reply via email to