nanogui: Thread: Multiple definition error when building Nano-X with VNC server


[<<] [<] Page 1 of 1 [>] [>>]
Subject: Multiple definition error when building Nano-X with VNC server
From: Pete Klemm ####@####.####
Date: 24 Feb 2012 15:21:46 -0000
Message-Id: <4F47AAF4.5030205@esysr.com>

Hi,

I am trying to build Nano-X with the latest source code from git repository.

I am running into multiple definition errors while 'Linking nano-X ...'

Linking nano-X ...
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x0): 
multiple definition of `fblinear8_left'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x0): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x40): 
multiple definition of `fblinear8_right'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x40): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x80): 
multiple definition of `fblinear8_down'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0x80): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0xc0): 
multiple definition of `fblinear8'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin8.o:(.data.rel+0xc0): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin16.o:(.data.rel.local+0x0): 
multiple definition of `fblinear16'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin16.o:(.data.rel.local+0x0): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin24.o:(.data.rel.local+0x0): 
multiple definition of `fblinear24'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin24.o:(.data.rel.local+0x0): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin32.o:(.data.rel.local+0x0): 
multiple definition of `fblinear32bgra'
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin32.o:(.data.rel.local+0x0): 
first defined here
/root/svn/gcm-microwin-repos/trunk/microwin/src/obj/drivers/fblin32.o:(.data.rel.local+0x10): 
multiple definition of `fblinear32rgba'
/
.
.
.

Could I have enabled some options that are incompatible in the config file?

Here is my config file:

####################################################################
# config: Microwindows and Nano-X configuration file
#
# This package is configured using this file for desktop Linux running
# In addition, a variety of mouse and keyboards drivers can be
# selected (see MOUSE AND KBD below)
#
# See the src/Configs directory for pre-built config files.
# Edit this or copy one src/config, and type "make clean; make"
####################################################################

####################################################################
# Build target platform.  Valid ARCH values are:
#
# LINUX-NATIVE
# LINUX-AVR32 (BIGENDIAN=Y)
# LINUX-TCC
# LINUX-ARM
# UCLINUX-ARM
# LINUX-MIPS
# LINUX-POWERPC (BIGENDIAN=Y)
# LINUX-SPARC (BIGENDIAN=Y)
# LINUX-BLACKFIN
# LINUX-SH
# SOLARIS (BIGENDIAN=Y)
# PSP
# NDS (Nintendo DS)
# TRIMEDIA
# MACOSX
# RTEMS
# ECOS
# CYGWIN
####################################################################
ARCH                     = LINUX-NATIVE
BIGENDIAN                = N
NATIVETOOLSPREFIX        =
ARMTOOLSPREFIX           = arm-linux-
MIPSTOOLSPREFIX          = mipsel-linux-
POWERPCTOOLSPREFIX       = powerpc-linux-
SHTOOLSPREFIX            = sh-linux-gnu
AVR32TOOLSPREFIX         = avr32-linux-
BLACKFINTOOLSPREFIX      = bfin-uclinux-
PSPTOOLSPREFIX           = psp-

####################################################################
#
# Compiling options
#
####################################################################
OPTIMIZE                 = Y
DEBUG                    = N
VERBOSE                  = N
THREADSAFE               = Y
GPROF                    = N

####################################################################
#
# Libraries to build: microwin, nano-X, engine, object frameworks
#
####################################################################
MICROWIN                 = N
NANOX                    = Y
ENGINE                   = N
SHAREDLIBS               = Y
OBJFRAMEWORK             = N

####################################################################
#
# Demos to build
#
####################################################################
MICROWINDEMO             = N
NANOXDEMO                = Y

####################################################################
#
# Applications to build
#
####################################################################
NANOWM                   = N
FBEMULATOR               = N

####################################################################
#
# If using Linux framebuffer, set to MWPF_TRUECOLOR8888, and use fbset.
# When running X11, this sets the X11 pixel emulation at runtime.
#
# On Linux or when running the standard framebuffer subdrivers,
# the runtime framebuffer BPP (bits per pixel) is used to select
# the runtime screen subdriver.  However, the format of the pixel
# itself must be selected at compile time, which sets macros used
# for MWCOLORVAL color conversions and conversion blit byte order.
# This also sets sizeof(MWPIXELVAL) for optimizing buffers sizes
# in GrArea/GrReadArea.
#
# define MWPF_PALETTE       /* pixel is packed 8 bits 1, 4 or 8 pal index*/
# define MWPF_TRUECOLOR8888 /* pixel is packed 32 bits byte order 
|B|G|R|A|*/
# define MWPF_TRUECOLORABGR /* pixel is packed 32 bits byte order 
|R|G|B|A|*/
# define MWPF_TRUECOLOR888  /* pixel is packed 24 bits byte order |B|G|R|*/
# define MWPF_TRUECOLOR565  /* pixel is packed 16 bits little endian 
RGB565*/
# define MWPF_TRUECOLOR555  /* pixel is packed 16 bits little endian 
RGB555*/
# define MWPF_TRUECOLOR332  /* pixel is packed 8 bits RGB 332*/
# define MWPF_TRUECOLOR233  /* pixel is packed 8 bits BGR 332*/
#
####################################################################
SCREEN_PIXTYPE           = MWPF_TRUECOLOR8888

####################################################################
# NanoX: Put Y to the following line to link the nano-X application
# with the server. This is required if UNIX sockets aren't available,
# or for speed or debugging.  This affects the nano-X server only.
####################################################################
LINK_APP_INTO_SERVER     = N

####################################################################
# Shared memory support for Nano-X client/server protocol speedup
####################################################################
HAVE_SHAREDMEM_SUPPORT   = N

####################################################################
# File I/O support
# Supporting either below drags in libc stdio, which may not be wanted
####################################################################
HAVE_FILEIO              = Y

####################################################################
# BMP, GIF reading support
####################################################################
HAVE_BMP_SUPPORT         = Y
HAVE_GIF_SUPPORT         = Y
HAVE_PNM_SUPPORT         = Y
HAVE_XPM_SUPPORT         = Y

####################################################################
# JPEG support through libjpeg, see README.txt in contrib/jpeg
####################################################################
HAVE_JPEG_SUPPORT        = Y
INCJPEG                  = .
LIBJPEG                  = /usr/lib/libjpeg.so

####################################################################
# PNG support via libpng and libz
####################################################################
HAVE_PNG_SUPPORT         = Y
INCPNG                   = .
LIBPNG                   = /usr/lib/libpng.so
INCZ                     = .
LIBZ                     = /usr/lib/libz.so

####################################################################
# TIFF support through libtiff
####################################################################
HAVE_TIFF_SUPPORT        = N
INCTIFF                  = .
LIBTIFF                  = /usr/lib/libtiff.so

####################################################################
# PCF font support - .pcf/.pcf.gz loadable fonts
####################################################################
HAVE_PCF_SUPPORT         = Y
HAVE_PCFGZ_SUPPORT       = Y
PCF_FONT_DIR             = "/usr/share/fonts/pcf"

####################################################################
# Truetype fonts - .ttf loadable fonts thru Freetype 2.x
####################################################################
HAVE_FREETYPE_2_SUPPORT  = Y
INCFT2LIB                = /usr/include
LIBFT2LIB                = /usr/local/lib/libfreetype.a
FREETYPE_FONT_DIR        = "/usr/share/fonts/truetype"

####################################################################
# T1 adobe type1 fonts - .pfb/.afm loadable thru t1lib
# t1lib.config must be setup and in T1LIB_FONT_DIR
####################################################################
HAVE_T1LIB_SUPPORT       = N
T1LIB_FONT_DIR           = "fonts/type1"
INCT1LIB                 = /usr/include
LIBT1LIB                 = /usr/lib/libt1.so

####################################################################
# FNT font support - .fnt/.fnt.gz loadable fonts (native bdf-converted)
####################################################################
HAVE_FNT_SUPPORT         = Y
HAVE_FNTGZ_SUPPORT       = Y
FNT_FONT_DIR             = "/usr/share/fonts/fnt"

####################################################################
# Japanese EUC-JP support using loadable MGL font
####################################################################
HAVE_EUCJP_SUPPORT       = N
EUCJP_FONT_DIR           = "fonts/japanese"

####################################################################
# Chinese Han Zi Ku loadable font support
####################################################################
HAVE_HZK_SUPPORT         = Y
HZK_FONT_DIR             = "/usr/share/fonts/chinese"

####################################################################
# DBCS Chinese BIG5 compiled in font support (big5font.c)
####################################################################
HAVE_BIG5_SUPPORT        = Y

####################################################################
# DBCS Chinese GB2312 compiled in font support (gb2312font.c)
####################################################################
HAVE_GB2312_SUPPORT      = N

####################################################################
# DBCS Japanese JISX0213 compiled in font support (jisx0213-12x12.c)
####################################################################
HAVE_JISX0213_SUPPORT    = N

####################################################################
# DBCS Korean HANGUL font support (jo16x16.c)
####################################################################
HAVE_KSC5601_SUPPORT     = N

####################################################################
# Fribidi and shape/joining support for right to left rendering
####################################################################
HAVE_FRIBIDI_SUPPORT     = N
HAVE_SHAPEJOINING_SUPPORT = N
INCFRIBIDI               = $(TOP)/../../../include
LIBFRIBIDI               = $(TOP)/../../../lib/libfribidi.a

####################################################################
# Generate screen driver interface only with no fonts or clipping
####################################################################
NOFONTS                  = N
NOCLIPPING               = N

####################################################################
# Window move algorithms for Microwindows
# Change for tradeoff between cpu speed and looks
# ERASEMOVE (nanowm) repaints only backgrounds while window dragging
# Otherwise an XOR redraw is used for window moves only after button up
# UPDATEREGIONS (win32 api only)paints in update clipping region only
####################################################################
ERASEMOVE                = Y
UPDATEREGIONS            = Y

####################################################################
# SCREEN DRIVERS
####################################################################

# X11 and FBE startup screen width, height, (depth for palette mode only)
SCREEN_WIDTH             = 640
SCREEN_HEIGHT            = 480
SCREEN_DEPTH             = 8

# X Window screen driver
# USE_EXPOSURE for XFree86 4.x or if backing store not working
X11                      = N
USE_EXPOSURE             = Y

# Framebuffer screen driver
FRAMEBUFFER              = Y

# memory screen driver
SCRMEM                   = N

# PSP screen driver
PSP                      = N

# Nintendo DS screen driver
SCRNDS                   = N

# set VTSWITCH to include virtual terminal switch code
# set FBREVERSE to reverse bit orders in 1,2,4 bpp
# set GRAYPALETTE to link with Gray Palette (valid only for 4bpp modes)
# set HAVETEXTMODE=Y for systems that can switch between text & graphics.
VTSWITCH                 = Y
FBREVERSE                = N
GRAYPALETTE              = N
HAVETEXTMODE             = N

# SA1100_LCD_LTLEND 4bpp driver with arm SA1100 LCD controller
# INVERT4BPP 4bpp inverted pixel driver for VTech Helio
SA1100_LCD_LTLEND        = N
INVERT4BPP               = N

####################################################################
# Mouse drivers
# GPMMOUSE    gpm mouse
# SERMOUSE    serial Microsoft, PC, Logitech, PS/2 mice (/dev/psaux)
# SUNMOUSE    Sun Workstation mouse (/dev/sunmouse)
# NOMOUSE    no mouse driver
#
# Touchscreen drivers
# IPAQMOUSE    Compaq iPAQ, Intel Assabet (/dev/h3600_tsraw)
# ZAURUSMOUSE    Sharp Zaurus (/dev/sharp_ts)
# TUXMOUSE    TuxScreen (/dev/ucb1x00-ts)
# ADSMOUSE    Applied Data Systems GC+ (/dev/ts)
# ADS7846MOUSE    ADS7846 chip, PSI OMAP Innovator (/dev/innnovator_ts)
# EPMOUSE    Embedded Planet (/dev/tpanel)
# VHMOUSE    Vtech Helio (/dev/tpanel)
# MTMOUSE    MicroTouch serial (/dev/ttyS1)
# PSIONMOUSE    Psion 5 (/dev/touch_psion)
# YOPYMOUSE    Yopy (/dev/yopy-ts)
# HARRIERMOUSE    NEC Harrier (/dev/tpanel)
# TSLIBMOUSE    Use tslib (/dev/input/event0)
# EVENTMOUSE    Simple standard event interface (/dev/input/event0)
# TTMOUSE       TomTom GO and ONE (/dev/ts)
####################################################################
GPMMOUSE                 = N
SERMOUSE                 = N
SUNMOUSE                 = N
NOMOUSE                  = N
IPAQMOUSE                = N
ZAURUSMOUSE              = N
TUXMOUSE                 = N
ADSMOUSE                 = N
ADS7846MOUSE             = N
EPMOUSE                  = N
VHMOUSE                  = N
MTMOUSE                  = N
PSIONMOUSE               = N
YOPYMOUSE                = N
HARRIERMOUSE             = N
LIRCMOUSE                = N
TSLIBMOUSE               = Y
TTMOUSE                  = N
PSPMOUSE                 = N
NDSMOUSE                 = N
EVENTMOUSE               = N

# keyboard or null kbd driver
TTYKBD                   = N
SCANKBD                  = N
PIPEKBD                  = N
IPAQKBD                  = N
LIRCKBD                  = N
PSPKBD                   = N
EVENTKBD                 = N
NOKBD                    = Y
# Secondary keyboard drivers for IR input
LIRCKBD2                 = N

####################################################################
# VNC server support through libvncserver
####################################################################
HAVE_VNCSERVER_SUPPORT   = Y
VNCSERVER_PTHREADED      = Y
LIBVNC                   = /usr/lib/libvncserver.a
INCVNC                   = /usr/include


[<<] [<] Page 1 of 1 [>] [>>]


Powered by ezmlm-browse 0.20.