actully I saw it there but then I was not sure if it needs another condition block for shared_library but before asking you again I wanted to try to build chrome (hammer app) and see if that works as you suggested.
Thanks! Nidhi On Apr 24, 9:16 am, Craig Schlenter <[email protected]> wrote: > Hmmm ... actually it seems as if -ldl is present in > third_party/libxml/libxml.gyp ... so take a look if it's there for you > and run gclient sync if it isn't. Try running gclient runhooks --force > if none of the other things work. Perhaps your scons files have not > been updated properly. > > --Craig > > On Fri, Apr 24, 2009 at 3:05 PM, Craig Schlenter > > <[email protected]> wrote: > > 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 -~----------~----~----~----~------~----~------~--~---
