[lldb-dev] link error in fedora 18

Abid, Hafiz Hafiz_Abid at mentor.com
Sat Feb 16 23:21:01 PST 2013


I also observed this problem on Ubunto12.04 32-bit. I solved it by adding -D_FILE_OFFSET_BITS=64 to the CXXFLAGS. This problem does not occur on 64-bit Ubunto.

Still we need to see find out why this mismatch is occurring and update out config/make machinery.

Regards,
Abid
________________________________
From: lldb-dev-bounces at cs.uiuc.edu [lldb-dev-bounces at cs.uiuc.edu] on behalf of comicfans44 [comicfans44 at gmail.com]
Sent: Sunday, February 17, 2013 5:59 AM
To: lldb-dev
Subject: Re: [lldb-dev] link error in fedora 18

Hello everyone. This is my first mail list post ,so please forgive my poor Englist or any mistake
I'm facting the "undefined reference to `lldb_private::FileSpec::ReadFileContents ..." problem
too ,after some digging , seems like this problem is lead by different typedef of "off_t"

after compiling FileSpec.o, nm gives:

00001b90 T lldb_private::FileSpec::ReadFileContents(long, void*, unsigned int, lldb_private::Error*) const
00001d80 T lldb_private::FileSpec::ReadFileContents(long, unsigned int, lldb_private::Error*) const

but after compiling Host.o ,nm gives:

U lldb_private::FileSpec::ReadFileContents(long long, void*, unsigned int, lldb_private::Error*) const

same problem applies on following header too:

Core/Module.h:

      Module (const FileSpec& file_spec,
             const ArchSpec& arch,
             const ConstString *object_name = NULL,
           off_t object_offset = 0);


Symbol/ObjectFile.h:
        size_t
     ReadSectionData (const Section *section,
                      off_t section_offset,
                      void *dst,
                      size_t dst_len) const;

force changing these define from "off_t" to "long" ,lldb compiled and run.
but I can not assume lldb works OK. and I can not point out why off_t has
different meaning in different translation unit.


and this is my build environment:

llvm svn version: 175324
clang svn version:175313
lldb svn version:175378

build in tree, config with

./configure --prefix=/home/my_name/local_install --enable-optimized --enable-targets=x86 CC=gcc CXX=g++

build host : ubuntu 11.04 32bit, gcc 4.6.3(compiled myself, first append in ${PATH}) ,system gcc: 4.5.2 (Ubuntu/Linaro 4.5.2-8ubuntu4)

(compile with clang also has the same problem)

attachment is the compile command in subdir "lldb/source/Host",
hopes this can help you


本邮件附件清单如下:
  (1) make_verbose.txt (23.8 K)

comicfans44,comicfans44 at gmail.com<mailto:comicfans44 at gmail.com>
2013-2-17
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20130217/aba176a4/attachment.html>


More information about the lldb-dev mailing list