From: Ho C. <hoc...@gm...> - 2011-11-09 17:57:06
|
Hello vxl-users, Our project includes vul_file.h. However, there is a problem compiling because on line 120, it uses the VXL_USE_WIN_WCHAR_T CMake variable. This variable isn't passed from VXL to our CMakeLists.txt, so when our project tries to compile, it complains with the error that: In file included from /data/FTK/src/farsight/fregl/fregl_pairwise_register.cxx:36: /data/FTK/src/VXL/core/vul/vul_file.h:120:46: error: operator '&&' has no right operand Am I missing an obvious way to import CMake cache variables from VXL into my project? Thanks in advance, Ho Cheung Research Assistant Bio-Image Analytics Lab - University of Houston hoc...@gm... Cell: (832) 215-6347 |
From: Amitha P. <ami...@us...> - 2011-11-10 21:10:08
|
Ho Cheung, That pre-processor definition is not directly passed from CMake. It should be defined in vxl_config.h. Does your vul_file.h include vxl_config.h? (It should.) If so, check the bottom of vxl_config.h. So should see either #define VXL_USE_WIN_WCHAR_T 0 or #define VXL_USE_WIN_WCHAR_T 1 Amitha. On 11/9/2011 12:56 PM, Ho Cheung wrote: > Hello vxl-users, > > Our project includes vul_file.h. > > However, there is a problem compiling because on line 120, it uses the > VXL_USE_WIN_WCHAR_T CMake variable. > > This variable isn't passed from VXL to our CMakeLists.txt, so when our > project tries to compile, it complains with the error that: > > In file included from > /data/FTK/src/farsight/fregl/fregl_pairwise_register.cxx:36: > /data/FTK/src/VXL/core/vul/vul_file.h:120:46: error: operator '&&' has > no right operand > > Am I missing an obvious way to import CMake cache variables from VXL > into my project? > > Thanks in advance, > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... <mailto:hoc...@gm...> > Cell: (832) 215-6347 > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > > > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > https://lists.sourceforge.net/lists/listinfo/vxl-users |
From: Ho C. <hoc...@gm...> - 2011-11-10 22:10:42
|
Hi Amitha, This is at the bottom of vxl_config.h:231: #define VXL_USE_WIN_WCHAR_T As you can see, it has no value and thus an error happens. I've confirmed that this happens in Windows 7 with MSVC9 and MSVC10 as well as GCC 4.4.5 on RHEL6.1 Thus, I suspect we may not be adding VXL correctly to our project's CMakeLists file. Here is the relevant lines of code: FIND_PACKAGE(VXL) SET(VXL_PROVIDE_STANDARD_OPTIONS 1) INCLUDE(${VXL_CMAKE_DIR}/UseVXL.cmake) Please let me know if you see anything obviously out of place. Ho Cheung Research Assistant Bio-Image Analytics Lab - University of Houston hoc...@gm... Cell: (832) 215-6347 P.S. Actually, our project is open-source and you can build everything yourself if you want to see the error. We have a step-by-step guide of how to build it (however it is slightly out of date). http://farsight-toolkit.org/wiki/FARSIGHT_HowToBuildLinux The error happens when you turn on BUILD_REGISTRATION in the Build Farsight step. On Thu, Nov 10, 2011 at 10:41 AM, Amitha Perera < ami...@us...> wrote: > Ho Cheung, > > That pre-processor definition is not directly passed from CMake. It should > be defined in vxl_config.h. Does your vul_file.h include vxl_config.h? (It > should.) If so, check the bottom of vxl_config.h. So should see either > #define VXL_USE_WIN_WCHAR_T 0 > or > #define VXL_USE_WIN_WCHAR_T 1 > > Amitha. > > > > On 11/9/2011 12:56 PM, Ho Cheung wrote: > > Hello vxl-users, > > Our project includes vul_file.h. > > However, there is a problem compiling because on line 120, it uses the > VXL_USE_WIN_WCHAR_T CMake variable. > > This variable isn't passed from VXL to our CMakeLists.txt, so when our > project tries to compile, it complains with the error that: > > In file included from > /data/FTK/src/farsight/fregl/fregl_pairwise_register.cxx:36: > /data/FTK/src/VXL/core/vul/vul_file.h:120:46: error: operator '&&' has no > right operand > > Am I missing an obvious way to import CMake cache variables from VXL into > my project? > > Thanks in advance, > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... > Cell: (832) 215-6347 > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register nowhttp://p.sf.net/sfu/rsa-sfdev2dev1 > > > > _______________________________________________ > Vxl-users mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/vxl-users > > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > https://lists.sourceforge.net/lists/listinfo/vxl-users > > |
From: Amitha P. <ami...@us...> - 2011-11-11 03:00:02
|
This is in the VXL build tree? What version of VXL? Amitha. On 11/10/2011 5:09 PM, Ho Cheung wrote: > Hi Amitha, > > This is at the bottom of vxl_config.h:231: > > #define VXL_USE_WIN_WCHAR_T > > As you can see, it has no value and thus an error happens. I've > confirmed that this happens in Windows 7 with MSVC9 and MSVC10 as well > as GCC 4.4.5 on RHEL6.1 > > Thus, I suspect we may not be adding VXL correctly to our project's > CMakeLists file. > > Here is the relevant lines of code: > > FIND_PACKAGE(VXL) > SET(VXL_PROVIDE_STANDARD_OPTIONS 1) > INCLUDE(${VXL_CMAKE_DIR}/UseVXL.cmake) > > Please let me know if you see anything obviously out of place. > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... <mailto:hoc...@gm...> > Cell: (832) 215-6347 <tel:%28832%29%20215-6347> > > P.S. Actually, our project is open-source and you can build everything > yourself if you want to see the error. We have a step-by-step guide of > how to build it (however it is slightly out of date). > > http://farsight-toolkit.org/wiki/FARSIGHT_HowToBuildLinux > > The error happens when you turn on BUILD_REGISTRATION in the Build > Farsight step. > > > On Thu, Nov 10, 2011 at 10:41 AM, Amitha Perera > <ami...@us... > <mailto:ami...@us...>> wrote: > > Ho Cheung, > > That pre-processor definition is not directly passed from CMake. > It should be defined in vxl_config.h. Does your vul_file.h > include vxl_config.h? (It should.) If so, check the bottom of > vxl_config.h. So should see either > #define VXL_USE_WIN_WCHAR_T 0 > or > #define VXL_USE_WIN_WCHAR_T 1 > > Amitha. > > > > On 11/9/2011 12:56 PM, Ho Cheung wrote: >> Hello vxl-users, >> >> Our project includes vul_file.h. >> >> However, there is a problem compiling because on line 120, it >> uses the VXL_USE_WIN_WCHAR_T CMake variable. >> >> This variable isn't passed from VXL to our CMakeLists.txt, so >> when our project tries to compile, it complains with the error that: >> >> In file included from >> /data/FTK/src/farsight/fregl/fregl_pairwise_register.cxx:36: >> /data/FTK/src/VXL/core/vul/vul_file.h:120:46: error: operator >> '&&' has no right operand >> >> Am I missing an obvious way to import CMake cache variables from >> VXL into my project? >> >> Thanks in advance, >> >> Ho Cheung >> Research Assistant >> Bio-Image Analytics Lab - University of Houston >> hoc...@gm... <mailto:hoc...@gm...> >> Cell: (832) 215-6347 <tel:%28832%29%20215-6347> >> >> >> ------------------------------------------------------------------------------ >> RSA(R) Conference 2012 >> Save $700 by Nov 18 >> Register now >> http://p.sf.net/sfu/rsa-sfdev2dev1 >> >> >> _______________________________________________ >> Vxl-users mailing list >> Vxl...@li... <mailto:Vxl...@li...> >> https://lists.sourceforge.net/lists/listinfo/vxl-users > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > <mailto:Vxl...@li...> > https://lists.sourceforge.net/lists/listinfo/vxl-users > > |
From: Peter V. <pet...@ya...> - 2011-11-11 00:20:39
|
Ho Cheung <hoc...@gm...> wrote: > This is at the bottom of vxl_config.h:231: > > #define VXL_USE_WIN_WCHAR_T In that case, the easiest fix is to manually add "0" at the end of this line. -- Peter. |
From: Ho C. <hoc...@gm...> - 2011-11-11 03:15:32
|
That is what we have been doing. However, this is not a very good fix because we would like to have an automated way to build everything. Does anyone understand what the issue causing VXL_USE_WIN_WCHAR_T not to be defined to 0 or 1 is? Ho Cheung Research Assistant Bio-Image Analytics Lab - University of Houston hoc...@gm... Cell: (832) 215-6347 On Thu, Nov 10, 2011 at 6:20 PM, Peter Vanroose <pet...@ya...>wrote: > Ho Cheung <hoc...@gm...> wrote: > > > This is at the bottom of vxl_config.h:231: > > > > #define VXL_USE_WIN_WCHAR_T > > In that case, the easiest fix is to manually add "0" at the end of this > line. > > -- Peter. > |
From: Amitha P. <ami...@us...> - 2011-11-11 03:31:51
|
In a different email to me, you said you are using r32878. There was an issue initially, but it was fixed in r26761 for Windows, and r26820 for all platforms. Do you have any modified files in your VXL source tree? Have you tried deleting your vxl_config.h from your build tree, and re-running CMake? Also make sure you don't have a vxl_config.h in your *source* tree. This can happen if the user accidently does an in-source configuration. If this happens, it's very difficult to undo. :-/ Amitha. On 11/10/2011 10:14 PM, Ho Cheung wrote: > That is what we have been doing. However, this is not a very good fix > because we would like to have an automated way to build everything. > > Does anyone understand what the issue causing VXL_USE_WIN_WCHAR_T not > to be defined to 0 or 1 is? > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... <mailto:hoc...@gm...> > Cell: (832) 215-6347 > > > On Thu, Nov 10, 2011 at 6:20 PM, Peter Vanroose > <pet...@ya... <mailto:pet...@ya...>> wrote: > > Ho Cheung <hoc...@gm... <mailto:hoc...@gm...>> wrote: > > > This is at the bottom of vxl_config.h:231: > > > > #define VXL_USE_WIN_WCHAR_T > > In that case, the easiest fix is to manually add "0" at the end of > this line. > > -- Peter. > > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > > > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > https://lists.sourceforge.net/lists/listinfo/vxl-users |
From: Ho C. <hoc...@gm...> - 2011-11-11 03:50:20
|
> > Do you have any modified files in your VXL source tree? > No. Have you tried deleting your vxl_config.h from your build tree, and > re-running CMake? Yes. The problem still remains. Also make sure you don't have a vxl_config.h in your *source* tree. This > can happen if the user accidently does an in-source configuration. If this > happens, it's very difficult to undo. :-/ > While vxl_config.h doesn't exist in our source tree, I noticed that ITK uses its own internal version of VXL and has its own vul_config.h. I wonder if this could be causing the issue. Ho Cheung Research Assistant Bio-Image Analytics Lab - University of Houston hoc...@gm... Cell: (832) 215-6347 On Thu, Nov 10, 2011 at 9:31 PM, Amitha Perera < ami...@us...> wrote: > In a different email to me, you said you are using r32878. There was an > issue initially, but it was fixed in r26761 for Windows, and r26820 for all > platforms. > > Do you have any modified files in your VXL source tree? > > Have you tried deleting your vxl_config.h from your build tree, and > re-running CMake? > > Also make sure you don't have a vxl_config.h in your *source* tree. This > can happen if the user accidently does an in-source configuration. If this > happens, it's very difficult to undo. :-/ > > Amitha. > > > > On 11/10/2011 10:14 PM, Ho Cheung wrote: > > That is what we have been doing. However, this is not a very good fix > because we would like to have an automated way to build everything. > > Does anyone understand what the issue causing VXL_USE_WIN_WCHAR_T not to > be defined to 0 or 1 is? > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... > Cell: (832) 215-6347 > > > On Thu, Nov 10, 2011 at 6:20 PM, Peter Vanroose < > pet...@ya...> wrote: > >> Ho Cheung <hoc...@gm...> wrote: >> >> > This is at the bottom of vxl_config.h:231: >> > >> > #define VXL_USE_WIN_WCHAR_T >> >> In that case, the easiest fix is to manually add "0" at the end of this >> line. >> >> -- Peter. >> > > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register nowhttp://p.sf.net/sfu/rsa-sfdev2dev1 > > > > _______________________________________________ > Vxl-users mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/vxl-users > > > |
From: Amitha P. <ami...@us...> - 2011-11-14 12:00:38
|
Are you using vxl, or are you using ITK? While ITK uses parts of vxl, it does not use all of vxl. As far as I know, the ITK folks are careful to make sure that the pieces of VXL that they take are self-consistent... Amitha. |
From: Gehua Y. <yan...@gm...> - 2011-11-11 15:53:51
|
If you look at line 125-139 in $vxl/src/CMakeLists.txt, you will see that VXL_USE_WIN_WCHAR_T is forced to be either 0 or 1 unless there is a situation that we missed. IF(WIN32) IF(VXL_HAS_WIN_WCHAR_T) OPTION( VXL_USE_WIN_WCHAR_T "Build overloading functions that accept Windows wide char strings?" YES ) IF(VXL_USE_WIN_WCHAR_T) # Force it to be 0/1 SET(VXL_USE_WIN_WCHAR_T 1) ELSE(VXL_USE_WIN_WCHAR_T) SET(VXL_USE_WIN_WCHAR_T 0) ENDIF(VXL_USE_WIN_WCHAR_T) ELSE(VXL_HAS_WIN_WCHAR_T) SET(VXL_USE_WIN_WCHAR_T 0) ENDIF(VXL_HAS_WIN_WCHAR_T) ELSE(WIN32) # avoid empty macro definition SET(VXL_USE_WIN_WCHAR_T 0) ENDIF(WIN32) Second, you can look inside $vxl/bin/CMakeCache.txt, check what is the value of variable VXL_USE_WIN_WCHAR_T, making sure it is either 0 or 1. Third, if both places look okay, you will need to re-generate the vxl_config.h file. You can do so by setting VXL_UPDATE_CONFIGURATION to true in CMake (note that it is an advanced variable) and hit Generate button. I believe these three steps will get you back on the road. :) Best, Gehua On Thu, Nov 10, 2011 at 10:49 PM, Ho Cheung <hoc...@gm...> wrote: > Do you have any modified files in your VXL source tree? >> > > No. > > > Have you tried deleting your vxl_config.h from your build tree, and >> re-running CMake? > > > Yes. The problem still remains. > > > Also make sure you don't have a vxl_config.h in your *source* tree. This >> can happen if the user accidently does an in-source configuration. If this >> happens, it's very difficult to undo. :-/ >> > > While vxl_config.h doesn't exist in our source tree, I noticed that ITK > uses its own internal version of VXL and has its own vul_config.h. I wonder > if this could be causing the issue. > > > Ho Cheung > Research Assistant > Bio-Image Analytics Lab - University of Houston > hoc...@gm... > Cell: (832) 215-6347 > > > On Thu, Nov 10, 2011 at 9:31 PM, Amitha Perera < > ami...@us...> wrote: > >> In a different email to me, you said you are using r32878. There was an >> issue initially, but it was fixed in r26761 for Windows, and r26820 for all >> platforms. >> >> Do you have any modified files in your VXL source tree? >> >> Have you tried deleting your vxl_config.h from your build tree, and >> re-running CMake? >> >> Also make sure you don't have a vxl_config.h in your *source* tree. This >> can happen if the user accidently does an in-source configuration. If this >> happens, it's very difficult to undo. :-/ >> >> Amitha. >> >> >> >> On 11/10/2011 10:14 PM, Ho Cheung wrote: >> >> That is what we have been doing. However, this is not a very good fix >> because we would like to have an automated way to build everything. >> >> Does anyone understand what the issue causing VXL_USE_WIN_WCHAR_T not to >> be defined to 0 or 1 is? >> >> Ho Cheung >> Research Assistant >> Bio-Image Analytics Lab - University of Houston >> hoc...@gm... >> Cell: (832) 215-6347 >> >> >> On Thu, Nov 10, 2011 at 6:20 PM, Peter Vanroose < >> pet...@ya...> wrote: >> >>> Ho Cheung <hoc...@gm...> wrote: >>> >>> > This is at the bottom of vxl_config.h:231: >>> > >>> > #define VXL_USE_WIN_WCHAR_T >>> >>> In that case, the easiest fix is to manually add "0" at the end of this >>> line. >>> >>> -- Peter. >>> >> >> >> >> ------------------------------------------------------------------------------ >> RSA(R) Conference 2012 >> Save $700 by Nov 18 >> Register nowhttp://p.sf.net/sfu/rsa-sfdev2dev1 >> >> >> >> _______________________________________________ >> Vxl-users mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/vxl-users >> >> >> > > > ------------------------------------------------------------------------------ > RSA(R) Conference 2012 > Save $700 by Nov 18 > Register now > http://p.sf.net/sfu/rsa-sfdev2dev1 > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > https://lists.sourceforge.net/lists/listinfo/vxl-users > > |
From: Ho C. <hoc...@gm...> - 2011-11-11 18:17:07
|
Actually I found the problem now. It appears that my project is using the vxl_config.h from the VXL that ITK includes with its own source as I surmised earlier. Forwarding this to the ITK developer's list. Ho Cheung Research Assistant Bio-Image Analytics Lab - University of Houston hoc...@gm... Cell: (832) 215-6347 On Fri, Nov 11, 2011 at 9:53 AM, Gehua Yang <yan...@gm...> wrote: > If you look at line 125-139 in $vxl/src/CMakeLists.txt, you will see that > VXL_USE_WIN_WCHAR_T is forced to be either 0 or 1 unless there is a > situation that we missed. > > IF(WIN32) > IF(VXL_HAS_WIN_WCHAR_T) > OPTION( VXL_USE_WIN_WCHAR_T "Build overloading functions that accept > Windows wide char strings?" YES ) > IF(VXL_USE_WIN_WCHAR_T) # Force it to be 0/1 > SET(VXL_USE_WIN_WCHAR_T 1) > ELSE(VXL_USE_WIN_WCHAR_T) > SET(VXL_USE_WIN_WCHAR_T 0) > ENDIF(VXL_USE_WIN_WCHAR_T) > ELSE(VXL_HAS_WIN_WCHAR_T) > SET(VXL_USE_WIN_WCHAR_T 0) > ENDIF(VXL_HAS_WIN_WCHAR_T) > ELSE(WIN32) > # avoid empty macro definition > SET(VXL_USE_WIN_WCHAR_T 0) > ENDIF(WIN32) > > Second, you can look inside $vxl/bin/CMakeCache.txt, check what is the > value of variable VXL_USE_WIN_WCHAR_T, making sure it is either 0 or 1. > > Third, if both places look okay, you will need to re-generate the > vxl_config.h file. You can do so by setting VXL_UPDATE_CONFIGURATION to > true in CMake (note that it is an advanced variable) and hit Generate > button. > > > I believe these three steps will get you back on the road. :) > > Best, > > Gehua > > > > > > > > > On Thu, Nov 10, 2011 at 10:49 PM, Ho Cheung <hoc...@gm...> wrote: > >> Do you have any modified files in your VXL source tree? >>> >> >> No. >> >> >> Have you tried deleting your vxl_config.h from your build tree, and >>> re-running CMake? >> >> >> Yes. The problem still remains. >> >> >> Also make sure you don't have a vxl_config.h in your *source* tree. This >>> can happen if the user accidently does an in-source configuration. If this >>> happens, it's very difficult to undo. :-/ >>> >> >> While vxl_config.h doesn't exist in our source tree, I noticed that ITK >> uses its own internal version of VXL and has its own vul_config.h. I wonder >> if this could be causing the issue. >> >> >> Ho Cheung >> Research Assistant >> Bio-Image Analytics Lab - University of Houston >> hoc...@gm... >> Cell: (832) 215-6347 >> >> >> On Thu, Nov 10, 2011 at 9:31 PM, Amitha Perera < >> ami...@us...> wrote: >> >>> In a different email to me, you said you are using r32878. There was >>> an issue initially, but it was fixed in r26761 for Windows, and r26820 for >>> all platforms. >>> >>> Do you have any modified files in your VXL source tree? >>> >>> Have you tried deleting your vxl_config.h from your build tree, and >>> re-running CMake? >>> >>> Also make sure you don't have a vxl_config.h in your *source* tree. This >>> can happen if the user accidently does an in-source configuration. If this >>> happens, it's very difficult to undo. :-/ >>> >>> Amitha. >>> >>> >>> >>> On 11/10/2011 10:14 PM, Ho Cheung wrote: >>> >>> That is what we have been doing. However, this is not a very good fix >>> because we would like to have an automated way to build everything. >>> >>> Does anyone understand what the issue causing VXL_USE_WIN_WCHAR_T not to >>> be defined to 0 or 1 is? >>> >>> Ho Cheung >>> Research Assistant >>> Bio-Image Analytics Lab - University of Houston >>> hoc...@gm... >>> Cell: (832) 215-6347 >>> >>> >>> On Thu, Nov 10, 2011 at 6:20 PM, Peter Vanroose < >>> pet...@ya...> wrote: >>> >>>> Ho Cheung <hoc...@gm...> wrote: >>>> >>>> > This is at the bottom of vxl_config.h:231: >>>> > >>>> > #define VXL_USE_WIN_WCHAR_T >>>> >>>> In that case, the easiest fix is to manually add "0" at the end of >>>> this line. >>>> >>>> -- Peter. >>>> >>> >>> >>> >>> ------------------------------------------------------------------------------ >>> RSA(R) Conference 2012 >>> Save $700 by Nov 18 >>> Register nowhttp://p.sf.net/sfu/rsa-sfdev2dev1 >>> >>> >>> >>> _______________________________________________ >>> Vxl-users mailing lis...@li...https://lists.sourceforge.net/lists/listinfo/vxl-users >>> >>> >>> >> >> >> ------------------------------------------------------------------------------ >> RSA(R) Conference 2012 >> Save $700 by Nov 18 >> Register now >> http://p.sf.net/sfu/rsa-sfdev2dev1 >> _______________________________________________ >> Vxl-users mailing list >> Vxl...@li... >> https://lists.sourceforge.net/lists/listinfo/vxl-users >> >> > |