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 Date: Mon, 13 Sep 2004 12:21:48 -0300 From: "Michael D. Crawford" Subject: Re: Crash in setup 2.427 To: cygwin AT cygwin DOT com Message-id: <4145BB0C.4060705@goingware.com> MIME-version: 1.0 Content-type: text/plain; charset=us-ascii; format=flowed Content-transfer-encoding: 7BIT User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.7.2) Gecko/20040803 X-IsSubscribed: yes (A stream of consciousness transcript in which Mike gets a clue about using Setup...) Larry Hall wrote: > You might be getting caught by some arcane setup logic with dependencies. > I'd recommend uninstalling all gcc packages and then reinstall all the ones > you need together. That should get you the versions you want. That made sense, and I tried it, but I was unable to get all the gcc packages uninstalled. I could remove most of them, but upon trying to remove the last one, setup would crash. What I tried was to get all the components at version 3.3.3-3, which worked ok, and then to replace them all with version 3.4.1-1. I could get most of it, but I could not get rid of this error message: $ gcj Hello.java /usr/lib/gcc/i686-pc-cygwin/3.4.1/../../../../i686-pc-cygwin/bin/ld: cannot find -lgcc Looking through gcj --help, I found the following option: $ gcj -print-libgcc-file-name libgcc.a Doing a search for libgcc.a at http://cygwin.com/packages/ I found that it should be in one of the following packages: gcc/gcc-3.3.1-1 gcc/gcc-3.3.1-3 gcc-core/gcc-core-3.3.3-3 gcc-core/gcc-core-3.4.1-1 The only 3.4.1-1 version there is the package gcc-core. But it looks like gcc-core is only source files. In any case, installing it doesn't product libgcc.a. However, look closely at the path in the error message: /usr/lib/gcc/i686-pc-cygwin/3.4.1/ I don't think i686-pc-cygwin is what I want. I'm trying to create a win32 binary. I need to use -mno-cygwin on the gcj command line! Now I get: $ gcj -mno-cygwin Hello.java /usr/lib/gcc/i686-pc-mingw32/3.4.1/../../../../i686-pc-mingw32/bin/ld: cannot find -lgcc At some point I had libgcj.a installed in i686-pc-mingw32. Unfortunately, it went away. Now let me see if I can get it back. Just now I see that Yitzchak Scott-Thoennes wrote: > Don't mess with the version numbers it shows you. Use the ones it shows > when the Curr(ent) radio button is selected or the ones it shows when > the Exp(erimental) radio button is selected. That looks like it might work. Before I saw that, I had dropped back again to 3.3.3-3. With the experimental button selected, I setup wants to install version 3.4.1-1 for gcc, gcc-core, gcc-g++ and gcc-java. gcc-mingw it wants to keep at 20040810-1. It wants to install 20040822-1 for gcc-mingw-core, gcc-mingw-g++, and gcc-mingw-java. (Hopefully, he presses the Next button... Installation complete...) $ gcj -mno-cygwin Hello.java /usr/lib/gcc/i686-pc-mingw32/3.4.1/../../../../i686-pc-mingw32/lib/libmingw32.a( main.o)(.text+0x106):main.c: undefined reference to `WinMain AT 16' Well that's progress. $ gcj -mno-cygwin Hello.java -lm Nope. Try "man gcj": $ gcj -mno-cygwin --main=Hello Hello.java gcj: installation problem, cannot exec 'cc1': No such file or directory I did "download from internet", selected the Exp button, and now the installer wants to download the binary for gcc-core 3.4.1-1. I thought there was just source. Must have missed that before... $ gcj -mno-cygwin --main=Hello Hello.java mike AT bjarne ~/IrateDev/Hello $ ls Hello.java a.exe mike AT bjarne ~/IrateDev/Hello $ ./a.exe Hello, World! Now to checkout the iRATE sources. Taras Glek managed to built iRATE with gcj for Win32 last night, but I think he was doing the builds on Linux. Success! Thanks for your help, I appreciate it. Michael D. Crawford GoingWare Inc. - Expert Software Development and Consulting http://www.goingware.com/ crawford AT goingware DOT com Tilting at Windmills for a Better Tomorrow. -- 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/