From: Daniel <bad...@ya...> - 2008-06-14 23:19:31
|
Here are a couple of CMake error messages I encountered while configuring on a Linux x86_64 machine: CMake Error: Error in cmake code at ~/workspace/linux/x86_64/vxl/contrib/oxl/CMakeLists.txt:18: SUBDIRS Incorrect SUBDIRS command. Directory: VPLAYER does not exists. Current CMake stack: ~/workspace/linux/x86_64/vxl/contrib/oxl/CMakeLists.txt CMake Error: File ~/workspace/linux/x86_64/vxl/contrib/gel/mrc/vpgl/algo/tests/07JAN27.RPB does not exist. Changing VPLAYER to vplayer and 07JAN27.RPB to 07jan27.rpb in the corresponding CMakeLists.txt files, fixes the problem. I don't get why everyone else's builds are not complaining about this. Is my Eclipse checkout of this code actually de-capitalizing VPLAYER and 07JAN27.RPB as it is downloading? Dan |
From: Peter V. <pet...@ya...> - 2008-06-15 11:25:28
|
> Changing VPLAYER to vplayer and 07JAN27.RPB to 07jan27.rpb > in the corresponding CMakeLists.txt files, fixes the problem. I guess your files are on a FAT32 partition or similar. FAT & NTFS have an intrinsic limitation on filenames: 8+3 chars, case-insensitive (i.e., uppercase). Only if the name of a file does not satisfy these constraints, an 8+3 name is "invented" (often with a "~1" at the end), and the "real" name is stored in a kind of hidden file. So when a filename is not more than 8 characters (plus 3 for the extension) and contains no "invalid characters", no entry is put in that "hidden file". Hence no unambiguous interpretation is kept about the letter case. When Linux mounts a FAT partition, it of course reads (and updates) that hidden file, but when no entry is found, it interprets the name as all-lowercase (instead of all-caps), since that's more linux-style. There is a "-t" option to Linux' mount command (this option can also be set in /etc/fstab) to tell linux to map to all-uppercase in such circumstances. But this will give similar problems in the other direction with file names like "test" etc. So the only "clean" way out is to use a non-FAT partition for vxl ... -- Peter . __________________________________________________________ Ta semester! - sök efter resor hos Yahoo! Shopping. Jämför pris på flygbiljetter och hotellrum här: http://shopping.yahoo.se/c-169901-resor-biljetter.html?partnerId=96914052 |
From: Daniel <bad...@ya...> - 2008-06-15 12:01:02
|
In my case, that's not an option. All lowercase names seem to work fine for Windows people ... wouldn't it be simpler and more robust to just change the offending directory and file names to lower case, and make the corresponding changes in CMakeLists.txt? >From what you are saying, that would not break a Windows build, because the OS would capitalize both the 'vplayer' directory name and the request to open it, wouldn't it? Thanks, Dan --- On Sun, 6/15/08, Peter Vanroose <pet...@ya...> wrote: > From: Peter Vanroose <pet...@ya...> > Subject: Re: CMake doesn't like ALL CAPS file/directory names in CMakeLists.txt files on Linux > To: "Daniel" <bad...@ya...> > Cc: vxl...@li... > Date: Sunday, June 15, 2008, 4:25 AM > > Changing VPLAYER to vplayer and 07JAN27.RPB to > 07jan27.rpb > > in the corresponding CMakeLists.txt files, fixes the > problem. > > I guess your files are on a FAT32 partition or similar. > > FAT & NTFS have an intrinsic limitation on filenames: > 8+3 chars, case-insensitive (i.e., uppercase). Only if the > name of a file does not satisfy these constraints, an 8+3 > name is "invented" (often with a "~1" > at the end), and the "real" name is stored in a > kind of hidden file. > > So when a filename is not more than 8 characters (plus 3 > for the extension) and contains no "invalid > characters", no entry is put in that "hidden > file". Hence no unambiguous interpretation is kept > about the letter case. > > When Linux mounts a FAT partition, it of course reads (and > updates) that hidden file, but when no entry is found, it > interprets the name as all-lowercase (instead of all-caps), > since that's more linux-style. > > There is a "-t" option to Linux' mount > command (this option can also be set in /etc/fstab) to tell > linux to map to all-uppercase in such circumstances. But > this will give similar problems in the other direction with > file names like "test" etc. > > So the only "clean" way out is to use a non-FAT > partition for vxl ... > > -- Peter . > > > > > > > > > > > > __________________________________________________________ > Ta semester! - sök efter resor hos Yahoo! Shopping. > Jämför pris på flygbiljetter och hotellrum här: > http://shopping.yahoo.se/c-169901-resor-biljetter.html?partnerId=96914052 |
From: Amitha P. <ami...@us...> - 2008-06-15 15:02:35
|
Daniel, Are you indeed on a FAT32 partition, or similar? Does a simple, test CMakeLists.txt file cause a similar issue? Something like PROJECT( test ) SUBDIRS( ABC ) cause similar errors? If so, it'd be a CMake bug. On your system, on that filesystem, what do things like mkdir XYZ ( cd XYZ || echo "fail 1" ) ( cd xyz || echo "fail 2" ) if [ -e XYZ ]; do echo "exists"; else echo "does not exist"; fi We could indeed workaround the issue by renaming the directories, but it'd be good to find out the exact problem that we are working around. Amitha. |
From: Daniel <bad...@ya...> - 2008-06-15 19:12:16
|
The code passes through a VFAT-formatted thumb drive before it reaches the target Linux x86_64 machine. I'll try the tests you outlined below and report the results here. Thanks, Dan --- On Sun, 6/15/08, Amitha Perera <ami...@us...> wrote: > From: Amitha Perera <ami...@us...> > Subject: Re: [Vxl-users] CMake doesn't like ALL CAPS file/directory names in CMakeLists.txt files on Linux > To: "Daniel" <bad...@ya...> > Cc: p.v...@ie..., vxl...@li... > Date: Sunday, June 15, 2008, 8:02 AM > Daniel, > > Are you indeed on a FAT32 partition, or similar? Does a > simple, test > CMakeLists.txt file cause a similar issue? Something like > > PROJECT( test ) > SUBDIRS( ABC ) > > cause similar errors? If so, it'd be a CMake bug. > > On your system, on that filesystem, what do things like > > mkdir XYZ > ( cd XYZ || echo "fail 1" ) > ( cd xyz || echo "fail 2" ) > if [ -e XYZ ]; do echo "exists"; else echo > "does not exist"; fi > > We could indeed workaround the issue by renaming the > directories, but > it'd be good to find out the exact problem that we are > working around. > > Amitha. |
From: Gehua Y. <yan...@gm...> - 2008-06-16 13:37:48
|
Another work around is to transfer an archived file of VXL via a thumb drive, then unpack the archive on your Linux machine. The archive format can be zip, tar, or some others you prefer. The archive shall preserve the file names for you. Gehua On Sun, Jun 15, 2008 at 3:12 PM, Daniel <bad...@ya...> wrote: > The code passes through a VFAT-formatted thumb drive before it reaches the target Linux x86_64 machine. > > I'll try the tests you outlined below and report the results here. > > Thanks, > Dan > > > --- On Sun, 6/15/08, Amitha Perera <ami...@us...> wrote: > >> From: Amitha Perera <ami...@us...> >> Subject: Re: [Vxl-users] CMake doesn't like ALL CAPS file/directory names in CMakeLists.txt files on Linux >> To: "Daniel" <bad...@ya...> >> Cc: p.v...@ie..., vxl...@li... >> Date: Sunday, June 15, 2008, 8:02 AM >> Daniel, >> >> Are you indeed on a FAT32 partition, or similar? Does a >> simple, test >> CMakeLists.txt file cause a similar issue? Something like >> >> PROJECT( test ) >> SUBDIRS( ABC ) >> >> cause similar errors? If so, it'd be a CMake bug. >> >> On your system, on that filesystem, what do things like >> >> mkdir XYZ >> ( cd XYZ || echo "fail 1" ) >> ( cd xyz || echo "fail 2" ) >> if [ -e XYZ ]; do echo "exists"; else echo >> "does not exist"; fi >> >> We could indeed workaround the issue by renaming the >> directories, but >> it'd be good to find out the exact problem that we are >> working around. >> >> Amitha. > > > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php > _______________________________________________ > Vxl-users mailing list > Vxl...@li... > https://lists.sourceforge.net/lists/listinfo/vxl-users > |