Hi!

I was reading too many emails on this subject that I decided to perform a little experiment with my LyX143 installation (with Miktex 2.5). Here are the steps I followed:

1- I deleted the textclass.lst file from the LyX1.4.x folder in my home directory, as well as all the Latex classes under the Miktex directory. 2- I run LyX in debug mode. LyX detected the textclass.lst file was missing and started the configuration script. The script produced the same output as Thomas Sauter reported previously. That is, the final lines were:

+checking for document class IEEEtran [IEEEtran]...
creating packages.lst
creating doc/LaTeXConfig.lyx

3- After that an empty textclass.lst file was created in my home directory and LyX refused to run after showing the now infamous error message "textclasses not found"

4- I opened the MikTex Settings menu and changed the "Install missing packages on the fly" from "Yes" to "Ask me first", as Paul Rubin suggested.

5- I repeated steps 1 and 2. Now a Mikte's window poped-up reporting the IEEEtran class was missing and asking me if I wanted to download it. I answered "Yes", and the reult was exactly the same as before (i.e. no more checks for additional textclasses, empty textclass.lst file and error message)

6- I checked if Miktex had indeed downloaded the IEEEtran package, but it had not. Then, I tried to download it manually from the MikTex Settings menu. It did not work! Since my internet connection was working, I decided to try with a different repository. With this new repository I could successfully download the package.

7- I repeated steps 1 and 2 once more and now everything was ok. All missing class that were in the repository were downloaded and set in the textclass.lst file as "true". The classes that were not found in the repository were set in the textclass.lst file as "false". LyX started normally.

8- Finally, I repeated the process, but this time I configured Miktex not to download classes at all. The result was that a textclass.lst file with all classes set to "false", and LyX starting properly.

And here it is conclusion:

The configure.py script does not work correctly. My guess is that the case where a class is missing and MikTex is configured to download it, but it fails to do so, is not correctly treated, or not treated at all, by the script.

Until the script is fixed, I would suggest people installing LyX to check that MikTex can download classes: Go to MikTex's Settings->Packages->Start Package Manager and try to download any class. If it does not work, try with another repository.


I hope this can be of help!

Cheers,
Humberto

Julio Rojas wrote:
Check if your firewall is blocking FTP connections. Once MikTex has an
open FTP connection, all classes are downloaded and a non empty
textclass.lst is generated.

If after this step the problem persists, copy this textclass.lst to
"\document and settings\<user>\Application Data\Lyx1.4.x", this should
solve your problem.

At least this is how I solved it today while installing LyX over
Vista, after the same problem happened to me.

Hope it helps...

On 1/30/07, Paul A. Rubin <[EMAIL PROTECTED]> wrote:
Thomas Sauter wrote:

>>> Problem of the german version of the path?
>> I don't think so. If you open a DOS prompt and run 'set h', what do you
> see for your home drive and home directory?
>
> HOMEDRIVE=C:
> HOMEPATH=\Dokumente und Einstellungen\sauter

This is fine.  (If your home path were on a remote server, it might
account for part of the problem.)

>> This indicates that a packages.lst file was created.  What directory
> were you in when you ran configure.py?  Is there a packages.lst file
> there now, and, if so, is it empty or not?
>
> I was in
> C:\lyx
>
> and typed
> c:\lyx14\python\python.exe c:\lyx14\Resources\configure.py
>
> There is a packages.lst file now and it is empty (0 Byte).

The output you quoted from the configure script ended with

> +  checking for ec fonts... yes
> +  checking for ec support in LaTeX format... yes
> +checking for document class IEEEtran [IEEEtran]...
> creating packages.lst
> creating doc/LaTeXConfig.lyx

Is this everything that the script displayed at the end (nothing cut
out)?  If so, it suggests that something happened while LyX was looking
for LaTeX classes (specifically the IEEEtran class, which I think may be
the first it tries to find).  Is there a C:\lyx\doc folder containing a
file named LaTeXConfig.lyx?  If so, you can open it with Notepad or any
other text editor or viewer. There should be a section like the following:

\begin_layout Subsection
article
\end_layout

\begin_layout Description
Found: yes
\end_layout

My guess is that yours will say Found: no.

If this is the case, we need to determine why the search for classes is
breaking down.  MikTeX gives you three options for situations where a
document uses a missing class: automatically download; ask permission to
download; or fail.  You set this in the MikTeX Options program (General
tab, package installation).  If yours is set to download automatically
and you do not have an Internet connection (or MikTeX is set to look at
a local repository), I suppose something might go wrong.  I leave this
set on "Ask permission", and when upgrading LyX I just say 'no' to each
request to install a class.

/Paul





Reply via email to