Hi At some point I had used -ldl in the xml gyp file but then I dropped that when I purely targeted chrome and not any of the other targets ... in fact I haven't even tried building the other targets for a while so it's quite possible that they won't build as shared targets.
Try hammer app and see if that works or add '-ldl' after '-lm' in libxml.gyp near the xmlcatalog stuff. Thanks! --Craig On Fri, Apr 24, 2009 at 2:26 PM, Dean McNamee <[email protected]> wrote: > > The obvious fix would be to add -ldl, but I don't see why libxml > should be using it... > > From a quick peek at the code, I saw xmlmodules.c using dlerror / etc > for dynamic module support. Since libxml is running sandboxed, do we > really want dynamic module support? > > In specific, it seems like we have LIBXML_MODULES_ENABLED defined in > our xmlversion.h... > > On Fri, Apr 24, 2009 at 2:18 PM, nshah <[email protected]> wrote: >> >> This group is very impressive, always so quick in reply! >> Thanks for quick reply! >> I did hammer --verbose and here is the command if that helps: >> >> cd /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/base >> && ../chrome/tools/build/linux/version.sh >> file_version_info_linux.h.version /home/dev/ProgramFiles/v8/home/ >> chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/ >> global_intermediate/base/file_version_info_linux.h >> flock /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/linker.lock gcc -o /home/dev/ProgramFiles/v8/home/ >> chrome-svn/tarball/chromium/src/sconsbuild/Debug/xmlcatalog -L/home/ >> dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/sconsbuild/ >> Debug/lib -Wl,-rpath=/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/ >> chromium/src/sconsbuild/Debug/lib -m32 -pthread /home/dev/ProgramFiles/ >> v8/home/chrome-svn/tarball/chromium/src/sconsbuild/Debug/obj/ >> third_party/libxml/xmlcatalog.o -Wl,--start-group -lm -lxml2 -Wl,--end- >> group >> /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym' >> /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror' >> /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen' >> /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose' >> collect2: ld returned 1 exit status >> scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >> src/sconsbuild/Debug/xmlcatalog] Error 1 >> gcc -o /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >> sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-tibetan.os -c - >> m32 -pthread -march=pentium4 -fno-exceptions -msse2 -mfpmath=sse -I/ >> usr/include/freetype2 -O0 -g -fPIC -DCHROMIUM_BUILD -DTOOLKIT_GTK=1 - >> D_DEBUG -I/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >> src/sconsbuild/Debug/obj/third_party/harfbuzz/src -I/home/dev/ >> ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/third_party/ >> harfbuzz/src /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/ >> chromium/src/third_party/harfbuzz/src/harfbuzz-tibetan.c >> scons: building terminated because of errors. >> >> On Apr 24, 7:41 am, Dean McNamee <[email protected]> wrote: >>> Looks like it's missing -ldl, but I haven't looked closely. >>> >>> On Fri, Apr 24, 2009 at 12:57 PM, nshah <[email protected]> wrote: >>> >>> > hi there, >>> >>> > thanks for working on getting the shared lib of libraries! I was >>> > pointed to this work by Evan Martin as well and he pointed me to this >>> > (http://codereview.chromium.org/88058). However I am having some >>> > difficulty getting it to build and it errors out while building >>> > libxml. >>> >>> > ================================================== >>> > ... >>> > Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >>> > src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-gsub.os >>> > Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/lib/libxml2.so >>> > Linking /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/xmlcatalog >>> > Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >>> > src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-impl.os >>> > Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >>> > src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-open.os >>> > Compiling /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >>> > src/sconsbuild/Debug/obj/third_party/harfbuzz/src/harfbuzz-shaper.os >>> > /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlsym' >>> > /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlerror' >>> > /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlopen' >>> > /home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/src/ >>> > sconsbuild/Debug/lib/libxml2.so: undefined reference to `dlclose' >>> > collect2: ld returned 1 exit status >>> > scons: *** [/home/dev/ProgramFiles/v8/home/chrome-svn/tarball/chromium/ >>> > src/sconsbuild/Debug/xmlcatalog] Error 1 >>> > scons: building terminated because of errors. >>> > =============================================== >>> >>> > Here are the steps that I tried: >>> >>> > a) first I tried to download each patch from patch set 4 and patched >>> > the corresponding files manually. Removed sconsbuild directory and >>> > rebuilt. it had the same errors. >>> >>> > I read your instructions in Description section but I did not >>> > understand where exactly I need to make changes to exclude and include >>> > those files. I looked at all_main.scons and common.gypi. it would be >>> > really helpful if you can elaborate on those instructions. >>> >>> > b) I did a get latest with revision 14166 by using following command: >>> > CHROMIUM_ROOT$ gclient sync --revision s...@14166 >>> >>> > (chromium root = directory that has src directory in it). >>> >>> > Let me know what steps I might be missing. Another point I want to add >>> > is that I have followed the instructions in 'Staying Green more of the >>> > time' section of getting code on chrome wiki for linux developers, if >>> > that matters any. >>> >>> > Thanks, >>> >>> > On Apr 21, 8:21 pm, Steven Knight <[email protected]> wrote: >>> >> The gyp build can generate shared libraries on Linux (as of r14166). >>> >>> >> You can set up to use shared libraries by setting the GYP_DEFINES >>> >> variable >>> >> as follows: >>> >>> >> $ export GYP_DEFINES='library=shared_library' >>> >> $ gclient runhooks --force >>> >>> >> If it's not set when you run "gclient", it will silently generate .scons >>> >> files that build with static libraries, of course, so put it in your >>> >> .profile or .bashrc or whatever suits. >>> >>> >> As an alternative to an environment variable, put the following text in >>> >> the >>> >> ~/.gyp/include.gypi startup file in your home directory: >>> >>> >> { >>> >> 'variables': { >>> >> 'library': 'shared_library', >>> >> }, >>> >>> >> } >>> >>> >> Note that you *can* build shared and static in the same tree by switching >>> >> back and forth (the shared object files will have a different suffix), >>> >> but >>> >> the .a and .so files get built in the same sconsbuild/{Debug,Release}/lib >>> >> directory. This can throw you for a loop if the linker decides to use an >>> >> old .so in preference to the new .a you just built, so it's safer to >>> >> clean >>> >> things out (at least the lib/ subdirectory, anyway). >>> >>> >> --SK >> > >> > > > > --~--~---------~--~----~------------~-------~--~----~ Chromium Developers mailing list: [email protected] View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~----------~----~----~----~------~----~------~--~---
