You are not logged in.

Dear visitor, welcome to KDE-Forum.org. If this is your first visit here, please read the Help. It explains in detail how this page works. To use all features of this page, you should consider registering. Please use the registration form, to register here or read more information about the registration process. If you are already registered, please login here.

Prozzaks

Beginner

  • "Prozzaks" started this thread

Posts: 1

Location: Montréal, QC, Canada

Occupation: Software Developper

  • Send private message

1

Friday, March 30th 2007, 4:46pm

Building KDE with Konstruct fails (libglib-2.0.la: No such file or directory)

Hello KDE lovers,
I wanted to try the latest stable KDE version. Unfortunately, I'm not root on my box. :'( So I figured I'd build it from source and be done with it. That's when I discovered Konstruct. I have previously built KDE by compiling each package by hand, but needless to say it's a really time consuming process so I figured that I would give Konstruct a try.

Unfortunately, the build process fails! I tryed lauching it again and here is the output

Source code

1
2
3
4
5
6
7
make[7]: Entering directory `/data/misti/afsugil/konstruct/libs/arts/work/arts-1.5.6/mcop'
/bin/sh ../libtool --silent --tag=CXX --mode=link g++  -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -Wchar-subscripts -Wall -W -Wpointer-arith -O2 -I/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/build/include -I/data/misti/afsugil/kde3.5.6/usr/X11R6/include -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -O3 -pipe -march=nocona -mfpmath=sse -fomit-frame-pointer -I/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/build/include -I/data/misti/afsugil/kde3.5.6/usr/X11R6/include -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -O3 -pipe -march=nocona -mfpmath=sse -fomit-frame-pointer -I/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/build/include -I/data/misti/afsugil/kde3.5.6/usr/X11R6/include -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -O3 -pipe -march=nocona -mfpmath=sse -fomit-frame-pointer -I/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/build/include -I/data/misti/afsugil/kde3.5.6/usr/X11R6/include -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -O3 -pipe -march=nocona -mfpmath=sse -fomit-frame-pointer -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common  -ftemplate-depth-99   -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib-L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -L/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib -L/data/misti/afsugil/kde3.5.6/usr/X11R6/lib -o libmcop.la -rpath /data/misti/afsugil/kde3.5.6/lib -no-undefined -Wl,--no-undefined -Wl,--allow-shlib-undefined -version-info 1:0 -L/data/misti/afsugil/kde3.5.6/lib   -L/data/misti/afsugil/kde3.5.6/lib -L/usr/X11R6/lib    md5.lo libmcop_la.all_cc.lo   -lgmodule-2.0 -ldl -lgthread-2.0 -lrt -lglib-2.0   ../libltdl/libltdlc.la
libtool: link: warning: library `/data/misti/afsugil/kde3.5.6/data/misti/afsugil/kde3.5.6/lib/libgmodule-2.0.la' was moved.
grep: /data/misti/afsugil/kde3.5.6/lib/libglib-2.0.la: No such file or directory
/bin/sed: can't read /data/misti/afsugil/kde3.5.6/lib/libglib-2.0.la: No such file or directory
libtool: link: `/data/misti/afsugil/kde3.5.6/lib/libglib-2.0.la' is not a valid libtool archive
make[7]: *** [libmcop.la] Error 1


I only included the output from where things start to go wrong. It's already long enough!

Here is my gar.conf.mk file :

Source code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
#-*- mode: Fundamental; tab-width: 4; -*-
# ex:ts=4
# $Id: gar.conf.mk.in 627052 2007-01-25 15:25:34Z binner $

# This file contains configuration variables that are global to
# the GAR system.  Users wishing to make a change on a
# per-package basis should edit the category/package/Makefile, or
# specify environment variables on the make command-line.

# Variables that define the default *actions* (rather than just
# default data) of the system will remain in bbc.gar.mk
# (bbc.port.mk)

# Set this variable if you have at least Qt 3.3 (including moc, uic and headers)
# installed and want to skip the installation of the Qt 3.3 package.
# Make sure that $QTDIR/bin, $QTDIR/$(TARGET_LIBNAME) and $QTDIR/include are reasonable.

#HAVE_QT_3_3_INSTALLED = true

# Setting this variable will cause the results of your builds to
# be cleaned out after being installed.  Uncomment only if you
# desire this behavior!

#BUILD_CLEAN = true

# The GARCHIVEDIR is a directory containing cached files. It can be created
# manually, or with 'make garchive' once you've started downloading required
# files (say with 'make paranoid-checksum'. Example:

GARCHIVEDIR = /data/misti/afsugil/kde3.5.6-sources

# Set this variable if you want to compile KDE for a 64bit target (x86_64)

#HAVE_64BIT_TARGET = true

# Several variables depend on the target architecture

ifdef HAVE_64BIT_TARGET
  ENABLE_LIBSUFFIX="--enable-libsuffix=64"
  TARGET_LIBNAME = lib64
  TARGET_PLATFORM = linux-g++-64

  ## Distributions which use XOrg 7.0 like Fedora Core 5
  #TARGET_X11 = /usr
  #TARGET_X11_LIB = /usr/lib64

  ## Other distributions
  TARGET_X11 = /usr/X11R6
  TARGET_X11_LIB = /usr/X11R6/lib64

  TARGET_PKG_CONFIG_PATH = /usr/lib64/pkgconfig:/usr/local/lib64/pkgconfig

  # *Mandatory* compiler options on x86_64
  OWN_CFLAGS = -m64 -fPIC

  # Compiler options (optional)
  OWN_CFLAGS += -O2 -pipe

  # Optional compiler options for gcc >= 3.4.0
#  OWN_CFLAGS += -march=opteron -O3 -pipe

else
  ENABLE_LIBSUFFIX=
  TARGET_LIBNAME = lib
  TARGET_PLATFORM = linux-g++

  ## Distributions which use XOrg 7.0 like Fedora Core 5
  #TARGET_X11 = /usr
  #TARGET_X11_LIB = /usr/lib

  ## Other distributions
  TARGET_X11 = /usr/X11R6
  TARGET_X11_LIB = /usr/X11R6/lib

  TARGET_PKG_CONFIG_PATH = /usr/lib/pkgconfig:/usr/local/lib/pkgconfig

  # Compiler options (optional)
  OWN_CFLAGS = -O3 -pipe -march=nocona -mfpmath=sse -fomit-frame-pointer

endif

# These are the standard directory name variables from all GNU
# makefiles.  They're also used by autoconf, and can be adapted
# for a variety of build systems.
#
# TODO: set $(SYSCONFDIR) and $(LOCALSTATEDIR) to never use
# /usr/etc or /usr/var
prefix = /data/misti/afsugil/kde3.5.6
exec_prefix = $(prefix)
bindir = $(exec_prefix)/bin
sbindir = $(exec_prefix)/sbin
libexecdir = $(exec_prefix)/libexec
datadir = $(prefix)/share
sysconfdir = $(prefix)/etc
sharedstatedir = $(prefix)/share
localstatedir = $(prefix)/var
libdir = $(exec_prefix)/$(TARGET_LIBNAME)
infodir = $(BUILD_PREFIX)/info
lispdir = $(prefix)/share/emacs/site-lisp
includedir = $(BUILD_PREFIX)/include
mandir = $(BUILD_PREFIX)/man
docdir = $(BUILD_PREFIX)/share/doc
sourcedir = $(BUILD_PREFIX)/src

# the DESTDIR is used at INSTALL TIME ONLY to determine what the
# filesystem root should be.  The BUILD_PREFIX is the prefix that
# usurps the DESTDIR.  It should be considered relative to
# $(DESTDIR).  Thus, if includedir were set to
# $(BUILD_PREFIX)/include, it would expand out at install time
# (BUT NO SOONER) to /tmp/gar/../../tmp/build.  The /../../ at
# the front should be harmless, as .. for / is just / itself.
DESTDIR = /data/misti/afsugil/kde3.5.6
BUILD_PREFIX = /data/misti/afsugil/kde3.5.6/build
#BUILD_PREFIX ?= $(ROOTFROMDEST)/tmp/build

ifdef HAVE_QT_3_3_INSTALLED
  # allow us to link to libraries we installed
  CPPFLAGS := -I$(DESTDIR)$(includedir) -I$(QTDIR)/include -I$(DESTDIR)/usr/X11R6/include $(CPPFLAGS)
  CFLAGS := -I$(DESTDIR)$(includedir) -I$(QTDIR)/include -I$(DESTDIR)/usr/X11R6/include -L$(DESTDIR)$(libdir) -L$(QTDIR)/$(TARGET_LIBNAME) -L$(DESTDIR)$(TARGET_X11_LIB) $(CFLAGS)
  LDFLAGS := -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB) -L$(QTDIR)/$(TARGET_LIBNAME) $(LDFLAGS)
  # allow us to use programs we just built
  PATH := $(DESTDIR)$(bindir):$(DESTDIR)$(sbindir):$(DESTDIR)$(BUILD_PREFIX)/bin:$(DESTDIR)$(BUILD_PREFIX)/sbin:$(QTDIR)/bin:$(PATH)
  LD_LIBRARY_PATH := $(DESTDIR)$(libdir):$(DESTDIR)$(BUILD_PREFIX)/$(TARGET_LIBNAME):$(QTDIR)/$(TARGET_LIBNAME):$(LD_LIBRARY_PATH)
else
  # allow us to link to libraries we installed
  CPPFLAGS += -I$(DESTDIR)$(includedir) -I$(DESTDIR)/usr/X11R6/include
  CFLAGS += -I$(DESTDIR)$(includedir) -I$(DESTDIR)/usr/X11R6/include -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB)
  LDFLAGS += -L$(DESTDIR)$(libdir) -L$(DESTDIR)$(TARGET_X11_LIB)
  # allow us to use programs we just built
  PATH := $(DESTDIR)$(bindir):$(DESTDIR)$(sbindir):$(DESTDIR)$(BUILD_PREFIX)/bin:$(DESTDIR)$(BUILD_PREFIX)/sbin:$(PATH)
  LD_LIBRARY_PATH := $(DESTDIR)$(libdir):$(DESTDIR)$(BUILD_PREFIX)/$(TARGET_LIBNAME):$(LD_LIBRARY_PATH)
endif

# This is for foo-config chaos
PKG_CONFIG_PATH:=$(DESTDIR)$(libdir)/pkgconfig:$(TARGET_PKG_CONFIG_PATH):$(PKG_CONFIG_PATH)


# Now add own flags to CFLAGS and keep OWN_CFLAGS for qt-x11-free's Makefile.
CFLAGS += $(OWN_CFLAGS)

# Equalise CFLAGS and CXXFLAGS
CXXFLAGS := $(CFLAGS)

# If you have no following GNU tools installed change these lines
TAR = tar
MD5 = md5sum

# make these variables available to configure and build scripts
# outside of make's realm.
export DESTDIR prefix exec_prefix bindir sbindir libexecdir datadir sysconfdir
export sharedstatedir localstatedir libdir infodir lispdir includedir mandir
export docdir sourcedir
export CC CXX
export CPPFLAGS CFLAGS CXXFLAGS LDFLAGS PATH LD_LIBRARY_PATH LD_PRELOAD
export PKG_CONFIG_PATH BUILD_CLEAN

# prepend the local file listing
FILE_SITES = file://$(FILEDIR)/ file://$(GARCHIVEDIR)/


I don't understand the DESTDIR and BUILD_PREFIX variables. Could the build failure be caused by the values I set for them? My understanding is that DESTDIR=PREFIX and that BUILD_PREFIX is where I want the compilation files to be placed before the results are placed in PREFIX by make install.

Does anybody understand why the build fails or what I'm doing wrong?