X-Spam-Check-By: sourceware.org Message-ID: <45298239.50504@cygwin.com> Date: Sun, 08 Oct 2006 18:56:57 -0400 From: "Larry Hall (Cygwin)" Reply-To: cygwin AT cygwin DOT com User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.7) Gecko/20060916 Fedora/1.5.0.7-1.fc4.remi Thunderbird/1.5.0.7 Mnenhy/0.7.4.0 MIME-Version: 1.0 To: cygwin AT cygwin DOT com Subject: Re: lyx has problem with network directory names References: <20061004190525 DOT GA18950 AT panix DOT com> <452938D4 DOT 60304 AT cygwin DOT com> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Enrico Forestieri wrote: > Larry Hall writes: > >> Enrico Forestieri wrote: >>> David Arnstein writes: >>>> I just tried to use the Cygwin port of lyx. It cannot cope with my >>>> home directory, which appears as //fs-sj1-15/darnstein in Cygwin. This >>>> is a network directory, obviously. >>>> >>>> When lyx starts up, it emits a complaint >>>> QSettings: error creating /fs-sj1-15/darnstein/.qt >>>> >>>> When I try to save a lyx document to my home directory, lyx complains >>>> when it presents its file browser dialog box. It says >>>> Could not read directory /fs-sj1-15 >>>> >>>> It appears that lyx is trying to access the root directory (/). It >>>> does not seem to know how to interpret the Windows syntax "//." >>> This is because lyx uses the boostfs library with BOOST_POSIX defined, >>> so any path of the form //xxx/yyy is normalized to /xxx/yyy. >>> I understand that //machine/path is a windowism, but I think that it >>> should be allowed on cygwin. Can this be seen a boost bug? >>> >> Possibly. But I expect boost folks would argue that using UNC syntax doesn't >> fit with POSIX semantics. Currently, the code keys off of BOOST_POSIX or >> BOOST_WINDOWS defines to determine the API to use. Under Cygwin, BOOST_POSIX >> makes the most sense but with that definition comes the restriction of no UNC >> paths. Obviously, the workaround for now is to just mount the path in Cygwin >> to create a POSIX path to use. This will make Lyx happy without too much of a >> burden for the user. > > As I explained in an another mail, in this case the culprit is qt3 > and not boost. I suspected boost because of the following comment > in boost/libs/filesystem/src/path_posix_windows.cpp: > > // POSIX & Windows cases: "", "/", "/foo", "foo", "foo/bar" > // Windows only cases: "c:", "c:/", "c:foo", "c:/foo", > // "prn:", "//share", "//share/", "//share/foo" > > but, even if UNC paths are not taken into account, the leading '/' is > not stripped out. Instead, it is qt3 that strips it and I also posted > a patch allowing UNC paths in qt3. Maybe it can be applied to the cygwin > package? > Possibly. That's a determination for the qt maintainer. In the meantime, my suggested workaround should still work. -- Larry Hall http://www.rfk.com RFK Partners, Inc. (508) 893-9779 - RFK Office 216 Dalton Rd. (508) 893-9889 - FAX Holliston, MA 01746 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/