I fixed most of the errors.
There is a weird error I am seeing and seems to be some incompatibility in
expanding macros between FileSystem.h in LLVM and intl.h in wxWidgets. Any
idea how to fix this?
In file included from
/home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:
In file included from
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:
In file included from
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:34:
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/system_error.h:895:38:
error: use of undeclared identifier 'Lv'
explicit windows_error(int v) : v_(_(v)) {}
^
/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:
#define _(s) wxGetTranslation(wxT(s))
^
/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:
#define wxT(x) wxCONCAT_HELPER(L, x)
^
/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:
#define wxCONCAT_HELPER(text, line) text ## line
^
<scratch space>:61:1: note: expanded from:
Lv
^
In file included from
/home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:
In file included from
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:60:34:
error: use of undeclared identifier 'Lv'
explicit file_type(int v) : v_(_(v)) {}
^
/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:
#define _(s) wxGetTranslation(wxT(s))
^
/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:
#define wxT(x) wxCONCAT_HELPER(L, x)
^
/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:
#define wxCONCAT_HELPER(text, line) text ## line
^
<scratch space>:61:1: note: expanded from:
Lv
^
In file included from
/home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4:
In file included from
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18:
/home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:76:36:
error: use of undeclared identifier 'Lv'
explicit copy_option(int v) : v_(_(v)) {}
^
/usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from:
#define _(s) wxGetTranslation(wxT(s))
^
/usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from:
#define wxT(x) wxCONCAT_HELPER(L, x)
^
/usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from:
#define wxCONCAT_HELPER(text, line) text ## line
^
<scratch space>:61:1: note: expanded from:
Lv
^
On Tue, Jun 5, 2012 at 6:00 PM, John Criswell <criswell at illinois.edu>
wrote:
> On 6/5/12 7:45 PM, AbhishekR wrote:
>
> Thanks John. I verified that and poolalloc builds with LLVM 3.0. I used
> clang for compiling wxWidgets, LLVM 3.0 and poolalloc.
>
> But llvm-tv build still gives build error. I take it that llvm-tv is
> still incompatible with these versions of poolalloc and LLVM 3.0. I think
> the code is manageable - couple of files in lib,include and some 30 odd
> small files in tools directory. I'll have a look at the code to sort
out
> the build errors.
>
>
> The llvm-tv project hasn't been used in a long, long time. In fact, I
> don't think anyone has used it or worked on it since LLVM 2.0 was
released
> back in 2007.
>
> If you want to update llvm-tv to LLVM 3.0 (or, better yet, LLVM 3.1), that
> would be cool, but just be aware that it's a significant project that
> you'll have to do on your own (the LLVM internal API has changed *a
lot*
> since llvm-tv was written). I also don't know how much demand there is
for
> a tool like llvm-tv.
>
> That said, people on llvm-dev are usually happy to answer questions on the
> LLVM 3.1/LLVM mainline API.
>
>
>
> Have you tried compiling/using llvm-tv with these versions of poolalloc
> and LLVM-3.0?
>
> Here is the llvm-tv build error -
>
> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:32:5:
> error: use of undeclared identifier 'perror'
> perror("scandir");
> ^
> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:50:5:
> error: use of undeclared identifier 'perror'
> perror("scandir");
>
>
> The perror() function is a Unix/Posix function. The llvm-tv code is
> probably assuming that some LLVM header files #includes the definition of
> it. This was true in LLVM 1.x; it's not true now. You'll have to
search
> out and fix all these issues if you work on llvm-tv.
>
> As an FYI, I never worked on llvm-tv. I just made the comment about
> poolalloc in the case that your primary interest was in understanding the
> poolalloc transform.
>
> -- John T.
>
>
--
Regards,
Abhishek
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<http://lists.llvm.org/pipermail/llvm-dev/attachments/20120605/88d9afc3/attachment.html>
I fixed all the other build errors. This is the only one pending. On Tue, Jun 5, 2012 at 8:33 PM, AbhishekR <abhishekr1982 at gmail.com> wrote:> I fixed most of the errors. > > There is a weird error I am seeing and seems to be some incompatibility in > expanding macros between FileSystem.h in LLVM and intl.h in wxWidgets. Any > idea how to fix this? > > In file included from > /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: > In file included from > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: > In file included from > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:34: > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/system_error.h:895:38: > error: use of undeclared identifier 'Lv' > explicit windows_error(int v) : v_(_(v)) {} > ^ > /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: > #define _(s) wxGetTranslation(wxT(s)) > ^ > /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: > #define wxT(x) wxCONCAT_HELPER(L, x) > ^ > /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: > #define wxCONCAT_HELPER(text, line) text ## line > ^ > <scratch space>:61:1: note: expanded from: > Lv > ^ > In file included from > /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: > In file included from > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:60:34: > error: use of undeclared identifier 'Lv' > explicit file_type(int v) : v_(_(v)) {} > ^ > /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: > #define _(s) wxGetTranslation(wxT(s)) > ^ > /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: > #define wxT(x) wxCONCAT_HELPER(L, x) > ^ > /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: > #define wxCONCAT_HELPER(text, line) text ## line > ^ > <scratch space>:61:1: note: expanded from: > Lv > ^ > In file included from > /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: > In file included from > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: > /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:76:36: > error: use of undeclared identifier 'Lv' > explicit copy_option(int v) : v_(_(v)) {} > ^ > /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: > #define _(s) wxGetTranslation(wxT(s)) > ^ > /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: > #define wxT(x) wxCONCAT_HELPER(L, x) > ^ > /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: > #define wxCONCAT_HELPER(text, line) text ## line > ^ > <scratch space>:61:1: note: expanded from: > Lv > ^ > > > On Tue, Jun 5, 2012 at 6:00 PM, John Criswell <criswell at illinois.edu>wrote: > >> On 6/5/12 7:45 PM, AbhishekR wrote: >> >> Thanks John. I verified that and poolalloc builds with LLVM 3.0. I used >> clang for compiling wxWidgets, LLVM 3.0 and poolalloc. >> >> But llvm-tv build still gives build error. I take it that llvm-tv is >> still incompatible with these versions of poolalloc and LLVM 3.0. I think >> the code is manageable - couple of files in lib,include and some 30 odd >> small files in tools directory. I'll have a look at the code to sort out >> the build errors. >> >> >> The llvm-tv project hasn't been used in a long, long time. In fact, I >> don't think anyone has used it or worked on it since LLVM 2.0 was released >> back in 2007. >> >> If you want to update llvm-tv to LLVM 3.0 (or, better yet, LLVM 3.1), >> that would be cool, but just be aware that it's a significant project that >> you'll have to do on your own (the LLVM internal API has changed *a lot* >> since llvm-tv was written). I also don't know how much demand there is for >> a tool like llvm-tv. >> >> That said, people on llvm-dev are usually happy to answer questions on >> the LLVM 3.1/LLVM mainline API. >> >> >> >> Have you tried compiling/using llvm-tv with these versions of poolalloc >> and LLVM-3.0? >> >> Here is the llvm-tv build error - >> >> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:32:5: >> error: use of undeclared identifier 'perror' >> perror("scandir"); >> ^ >> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:50:5: >> error: use of undeclared identifier 'perror' >> perror("scandir"); >> >> >> The perror() function is a Unix/Posix function. The llvm-tv code is >> probably assuming that some LLVM header files #includes the definition of >> it. This was true in LLVM 1.x; it's not true now. You'll have to search >> out and fix all these issues if you work on llvm-tv. >> >> As an FYI, I never worked on llvm-tv. I just made the comment about >> poolalloc in the case that your primary interest was in understanding the >> poolalloc transform. >> >> -- John T. >> >> > > > -- > Regards, > Abhishek >-- Regards, Abhishek -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120606/ec6b40f5/attachment.html>
I didn't get much time to work on it after that. Today, I had a look at it. I included a workaround for that weird marco incompatibility error between LLVM and wxWidgets. I just commented out the line - "#define _(s) wxGetTranslation(wxT(s))" in wx/intl.h and it built successfully. I fixed issues with lib/Snapshot/WriteSnapshot.cpp. Now opt-snap tool can capture snapshots. If I run llvm-tv.exe without any snapshots in the /tmp/llvm-tv-*username*/snapshots folder, at least the LLVM Visualizer window pops up. But, with the snapshots in the folder, it gives segmentation fault after showing "Processing: /tmp/llvm-tv-*username*/snapshots/*.bc" for each snapshot bitcode file. If someone is interested in helping to fix the snapshot processing part by llvm-tv, I can share the code. Please let me know. On Wed, Jun 6, 2012 at 1:21 AM, AbhishekR <abhishekr1982 at gmail.com> wrote:> I fixed all the other build errors. This is the only one pending. > > On Tue, Jun 5, 2012 at 8:33 PM, AbhishekR <abhishekr1982 at gmail.com> wrote: > >> I fixed most of the errors. >> >> There is a weird error I am seeing and seems to be some incompatibility >> in expanding macros between FileSystem.h in LLVM and intl.h in wxWidgets. >> Any idea how to fix this? >> >> In file included from >> /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: >> In file included from >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: >> In file included from >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:34: >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/system_error.h:895:38: >> error: use of undeclared identifier 'Lv' >> explicit windows_error(int v) : v_(_(v)) {} >> ^ >> /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: >> #define _(s) wxGetTranslation(wxT(s)) >> ^ >> /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: >> #define wxT(x) wxCONCAT_HELPER(L, x) >> ^ >> /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: >> #define wxCONCAT_HELPER(text, line) text ## line >> ^ >> <scratch space>:61:1: note: expanded from: >> Lv >> ^ >> In file included from >> /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: >> In file included from >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:60:34: >> error: use of undeclared identifier 'Lv' >> explicit file_type(int v) : v_(_(v)) {} >> ^ >> /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: >> #define _(s) wxGetTranslation(wxT(s)) >> ^ >> /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: >> #define wxT(x) wxCONCAT_HELPER(L, x) >> ^ >> /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: >> #define wxCONCAT_HELPER(text, line) text ## line >> ^ >> <scratch space>:61:1: note: expanded from: >> Lv >> ^ >> In file included from >> /home/arhishee/work/llvm-tv/llvm-tv/tools/llvm-tv/GraphDrawer.cpp:4: >> In file included from >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileUtilities.h:18: >> /home/arhishee/work/llvm-tv/llvm30/include/llvm/Support/FileSystem.h:76:36: >> error: use of undeclared identifier 'Lv' >> explicit copy_option(int v) : v_(_(v)) {} >> ^ >> /usr/local/include/wx-2.8/wx/intl.h:48:55: note: expanded from: >> #define _(s) wxGetTranslation(wxT(s)) >> ^ >> /usr/local/include/wx-2.8/wx/wxchar.h:235:36: note: expanded from: >> #define wxT(x) wxCONCAT_HELPER(L, x) >> ^ >> /usr/local/include/wx-2.8/wx/cpp.h:17:37: note: expanded from: >> #define wxCONCAT_HELPER(text, line) text ## line >> ^ >> <scratch space>:61:1: note: expanded from: >> Lv >> ^ >> >> >> On Tue, Jun 5, 2012 at 6:00 PM, John Criswell <criswell at illinois.edu>wrote: >> >>> On 6/5/12 7:45 PM, AbhishekR wrote: >>> >>> Thanks John. I verified that and poolalloc builds with LLVM 3.0. I used >>> clang for compiling wxWidgets, LLVM 3.0 and poolalloc. >>> >>> But llvm-tv build still gives build error. I take it that llvm-tv is >>> still incompatible with these versions of poolalloc and LLVM 3.0. I think >>> the code is manageable - couple of files in lib,include and some 30 odd >>> small files in tools directory. I'll have a look at the code to sort out >>> the build errors. >>> >>> >>> The llvm-tv project hasn't been used in a long, long time. In fact, I >>> don't think anyone has used it or worked on it since LLVM 2.0 was released >>> back in 2007. >>> >>> If you want to update llvm-tv to LLVM 3.0 (or, better yet, LLVM 3.1), >>> that would be cool, but just be aware that it's a significant project that >>> you'll have to do on your own (the LLVM internal API has changed *a lot* >>> since llvm-tv was written). I also don't know how much demand there is for >>> a tool like llvm-tv. >>> >>> That said, people on llvm-dev are usually happy to answer questions on >>> the LLVM 3.1/LLVM mainline API. >>> >>> >>> >>> Have you tried compiling/using llvm-tv with these versions of >>> poolalloc and LLVM-3.0? >>> >>> Here is the llvm-tv build error - >>> >>> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:32:5: >>> error: use of undeclared identifier 'perror' >>> perror("scandir"); >>> ^ >>> /home/arhishee/work/llvm-tv/llvm-tv/lib/Snapshot/FileUtils.cpp:50:5: >>> error: use of undeclared identifier 'perror' >>> perror("scandir"); >>> >>> >>> The perror() function is a Unix/Posix function. The llvm-tv code is >>> probably assuming that some LLVM header files #includes the definition of >>> it. This was true in LLVM 1.x; it's not true now. You'll have to search >>> out and fix all these issues if you work on llvm-tv. >>> >>> As an FYI, I never worked on llvm-tv. I just made the comment about >>> poolalloc in the case that your primary interest was in understanding the >>> poolalloc transform. >>> >>> -- John T. >>> >>> >> >> >> -- >> Regards, >> Abhishek >> > > > > -- > Regards, > Abhishek >-- Regards, Abhishek -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20120613/1198c0b6/attachment.html>