From: j h. <jvh...@gm...> - 2009-09-17 19:57:36
|
Newbie greetings, I have downloaded a Tcl TEA package wherein the README file specifies using the MSys + MinGW build process. I have seen in the MSys pages how to compile a single file but this package has multiple .c files in it and it also contains a configure.in and a Makefile.in file which I assume need to be converted somehow. So I am wondering what is meant by "the MSys + MinGW build process". Any pointers appreciated. Grasping at straws, jh |
From: JonY <10...@gm...> - 2009-09-18 02:32:43
|
On 9/18/2009 03:57, j hite wrote: > Newbie greetings, > I have downloaded a Tcl TEA package wherein the README file specifies using > the MSys + MinGW build process. I have seen in the MSys pages how to compile > a single file but this package has multiple .c files in it and it also > contains a configure.in and a Makefile.in file which I assume need to be > converted somehow. So I am wondering what is meant by "the MSys + MinGW > build process". > > Any pointers appreciated. > Hi, to compile multi-part programs in C, use: gcc -o file1.o -c file1.c gcc -o file2.o -c file2.c gcc -o file3.o -c file3.c gcc -o file.exe file1.o file2.o file3.o <additional libraries> As you can see, its very repetitive. This is where autotools comes in, it uses the provided .in files you mentioned. First, you need autoconf, automake and libtool installed. Unpack them, and run the configure with --prefix=/mingw, then run make. For example: $ tar xfv autoconf-2.64.tar.gz $ mkdir build $ cd build $ ../autoconf-2.64/configure --prefix=/mingw $ make $ make install Now that automake is installed, do the same with automake and libtool. Once all 3 are installed properly, run "autoreconf -iv" in "Tcl TEA" directory containing the .in files. If it goes right, configure should be created. |
From: j h. <jvh...@gm...> - 2009-09-18 15:04:09
|
> > First, you need autoconf, automake and libtool installed. Unpack them, > and run the configure with --prefix=/mingw, then run make. For example: > > $ tar xfv autoconf-2.64.tar.gz > $ mkdir build > $ cd build > $ ../autoconf-2.64/configure --prefix=/mingw > $ make > $ make install > > Now that automake is installed, do the same with automake and libtool. > Once all 3 are installed properly, run "autoreconf -iv" in "Tcl TEA" > directory containing the .in files. If it goes right, configure should > be created. > > Thanks for posting! I download autoconf-2.64.tar.gz and extracted with winzip. The README file says I need to install m4 and perl first. Is that true? I hope not as it seems like an unending chain: install this which requires that which requires something else. Also I should have stated I am using Windows. Your example above looks Unix-like. Is it similar for windows. The mkdir above uses a relative path so I infer that the absolute location doesn't matter. Best Regards, jh |
From: Charles W. <cwi...@us...> - 2009-09-18 16:26:48
|
j hite wrote: > First, you need autoconf, automake and libtool installed. Unpack them, > and run the configure with --prefix=/mingw, then run make. For example: > > $ tar xfv autoconf-2.64.tar.gz > $ mkdir build > $ cd build > $ ../autoconf-2.64/configure --prefix=/mingw > $ make > $ make install There's really no need to compile and install autoconf and friends yourself. The MinGW project provides them for you as an add-on. > Now that automake is installed, do the same with automake and libtool. > Once all 3 are installed properly, run "autoreconf -iv" in "Tcl TEA" > directory containing the .in files. If it goes right, configure should > be created. This part is correct -- although I can't vouch that any given tcl TEA-compliant package will, in fact, work properly on MinGW/win32. Try and see. -- Chuck |
From: j h. <jvh...@gm...> - 2009-09-18 17:15:57
|
> > > There's really no need to compile and install autoconf and friends > yourself. The MinGW project provides them for you as an add-on. > > Thanks Chuck. But how do I run autoconf supplied by mingw? I installed mingw and added it to the path environment variable but the command is not found. jh |
From: Charles W. <cwi...@us...> - 2009-09-18 20:32:47
|
j hite wrote: > > There's really no need to compile and install autoconf and friends > yourself. The MinGW project provides them for you as an This word: > add-on. is your clue. Note: for direct information concerning tcl and TEA extensions, skip ALLLLLL the way down to the end of this email. For general information on installing and setting up MinGW and MSYS, keep reading. > Thanks Chuck. But how do I run autoconf supplied by mingw? I installed > mingw and added it to the path environment variable but the command is > not found. Look, right now the whole MinGW and MSYS project is undergoing a major revision in how we deliver the software. In the past, you basically installed "MinGW" using some installer executable "MSYS" using some other installer executable and "MSYS-DTK" using yet a third installer executable. Each of these three items contained a collection of separate software packages, carefully controlled and integrated to work (and be installed) together and simultaneously. MinGW contained the *entire* collection of gcc compilers, from C to C++ to Fortran and Java, PLUS binutils, the mingw-runtime libraries, mingw32-make, and the windows API headers and import libraries. This installer uses an .ini file on the mingw site to determine exactly which version of the various constituents is installed, but is not really a "package manager" in the classic sense. OTOH, the MSYS and MSYSDTK installers are not even that flexible. They represent static collections of exactly particular versions of their constituents. For instance, MSYS-1.0.11 contains exactly MSYS-1.0.11 (core system) bash-3.1 bzip2-1.0.3 coreutils-5.97 cpmake-3.81 diffutils-2.8.7 file-4.16 findutils-4.3.0 gawk-3.1.5 grep-2.4.2 gzip-1.2.4a less-358 lzma-4.43 m4-1.4.7 patch-2.5.4 rxvt-2.7.2 sed-3.02 tar-1.19.90 texinfo-4.11 ...but, in each case, the software you get in the installation package is not *everything* that would ordinarily be installed if you compiled, say, coreutils-5.97, yourself. Rather, for each constituent, the installed footprint is carefully pruned to ensure only the absolute minimum set of software is included. Now, this means that "stock" msys-1.0.11 is forever limited to -- for instance -- m4-1.4.7. What if, later, you find that you require m4-1.4.14? You have to compile an *msys* version yourself (which is a non-trivial undertaking [*]), or wait, years possibly, before MSYS-1.0.12 is released, and HOPE that its bundled m4 is updated to the version you need. [*] MSYS is designed to make compiling native win32 (that is, mingw) software easy, because that's what most people want to do. Compiling *msys* software -- not so much, because only a tiny number of people need to do that. Historically, the MinGW/MSYS team has worked around the static and monolithic nature of the MSYS install package by providing individual updates: FIRST you install the "regular" MSYS package as above. THEN, using the msys tools, you "unpack" the update(s) on top of the msys installation, replacing the old executables with the new updates. There is a difficulty here: how do you use msys tar.exe to update msys tar.exe? How do you replace the msys DLL itself, when the tar.exe you're using requires that DLL? Well, err...hmm...see below. This was very messy, and required extremely careful work and documentation if you wanted to create identical installations across your organization (as I have had to do, several times). And obeying the GPL if you distributed such a thing? Nightmare. Now, the "MSYS-DTK" was provided in a similar monolithic fashion. It contained autoconf-2.56 autogen-5.4.7 automake-1.7.1 cvs-1.11.0 gdbm-1.8.0 guile-1.6.0 inetutils-1.3.2 libtool-1.5pre openssh-2.9p2-3 openssl-0.9.6b perl-5.6.1 zlib-1.1.3 plus a few other odds and ends. In late 2007, I provided updated individual packages for ALL of the components in the DTK, since the DTK had not been updated since 2003. I called this "MSYS Supplementary Tools: Technology Preview Tools for MSYS-1.0.11" because at the time, MSYS-1.0.10 was the current MSYS version and I was trying to help with the eventual rollout of MSYS-1.0.11. So, I thought it would be nice if the MSYS-DTK components were updated to work well with the new MSYS core. At the same time, I also updated many of the individual components provided by MSYS core itself -- many of these elements, from 2007, were cherry-picked and included in MSYS-1.0.11 when it was finally released in July 2009. Unfortunately, by that time, even MY updates were seriously -- two years -- out of date. Which was better than six years, but still... However, this update pack had a number of downsides: (a) there was some objection to the naming convention of the packages themselves (b) there were other issues with the internal layout of the packages. Some were arranged like: /usr/local/{bin|lib|share} with others as /usr/{bin|lib|share} This arrangement caused problems when unpackaged using non-MSYS tools like WinZip or 7z, because under MSYS "/usr" == "/" -- but the non-MSYS tools didn't know that, and placed the items in the "wrong" directory. That is, they should have landed in C:\msys\1.0\{bin|lib|share} and C:\msys\1.0\local\{bin|lib|share} but instead landed in C:\msys\1.0\usr\{bin|lib|share} and C:\msys\1.0\usr\local\{bin|lib|share} (c) there was no easy/automated way to install them. You still had to install the "regular" msys and msysdtk (and mingw...), and then overlay with the new packages. But which ones? How does a neophyte choose? So, after MSYS-1.0.11 was released, I completed a ANOTHER refresh of this collection, as well as refreshing almost all of the constituents of the base MSYS. The new packages address all of the complaints above, except one: there is still no easy/automated way to install them. Well, that's part of what the "new packaging standard" was intended to address. All new packages now follow a common naming scheme that is machine-parseable. Eventually, we will have a NEW installer that can understand these package names and can install/uninstall individual components, without requiring a pre-existing underlying "msys" installation that needs "overlays". Furthermore, we'll provide meta data so that the installer will know about dependencies between packages -- so no more "I installed perl and it didn't work because I forgot to also install crypt-*-dll. We don't yet have that, but it's coming. So, GIVEN that we do not at present have a one-click installer that magically installs all of the most recent sub-components of MSYS or MSYS-DTK, here's how I would install an up-to-date MinGW, MSYS, and MSYS-DTK tree: ====================================================================== #1) INSTALL MINGW Use the mingw.org mingw-5.1.4 installer to install MinGW into C:\MinGW. You'll find it on the sourceforge file download system under "Automated MinGW Installer" ====================================================================== #2) INSTALL MSYS Use the mingw.org MSYS installer to install the base msys 1.0.11 system under C:\msys\1.0. You'll find it under "MSYS Base System" ====================================================================== #3) UPDATE MSYS What follows is a list of all current updates to the MSYS Base System. I've removed all -src packages from this list. The ones marked with an asterisk are the "required" updates; everything else is optional. * bzip2-1.0.5-1-msys-1.0.11-bin.tar.gz bzip2-1.0.5-1-msys-1.0.11-doc.tar.gz bzip2-1.0.5-1-msys-1.0.11-lic.tar.gz libbz2-1.0.5-1-msys-1.0.11-dev.tar.gz * libbz2-1.0.5-1-msys-1.0.11-dll-1.tar.gz * diffutils-2.8.7.20071206cvs-2-msys-1.0.11-bin.tar.lzma diffutils-2.8.7.20071206cvs-2-msys-1.0.11-doc.tar.lzma diffutils-2.8.7.20071206cvs-2-msys-1.0.11-lic.tar.lzma * file-5.03-1-msys-1.0.11-bin.tar.lzma file-5.03-1-msys-1.0.11-doc.tar.lzma file-5.03-1-msys-1.0.11-lic.tar.lzma libmagic-5.03-1-msys-1.0.11-dev.tar.lzma * libmagic-5.03-1-msys-1.0.11-dll-1.tar.lzma * findutils-4.4.2-1-msys-1.0.11-bin.tar.lzma findutils-4.4.2-1-msys-1.0.11-doc.tar.lzma findutils-4.4.2-1-msys-1.0.11-lic.tar.lzma locate-4.4.2-1-msys-1.0.11-bin.tar.lzma * gawk-3.1.7-1-msys-1.0.11-bin.tar.lzma gawk-3.1.7-1-msys-1.0.11-doc.tar.lzma gawk-3.1.7-1-msys-1.0.11-lic.tar.lzma * grep-2.5.4-1-msys-1.0.11-bin.tar.lzma grep-2.5.4-1-msys-1.0.11-doc.tar.lzma grep-2.5.4-1-msys-1.0.11-lic.tar.lzma * gzip-1.3.12-1-msys-1.0.11-bin.tar.lzma gzip-1.3.12-1-msys-1.0.11-doc.tar.lzma gzip-1.3.12-1-msys-1.0.11-lic.tar.lzma * less-436-1-msys-1.0.11-bin.tar.lzma less-436-1-msys-1.0.11-doc.tar.lzma less-436-1-msys-1.0.11-lic.tar.lzma * m4-1.4.13-1-msys-1.0.11-bin.tar.lzma m4-1.4.13-1-msys-1.0.11-doc.tar.lzma m4-1.4.13-1-msys-1.0.11-lic.tar.lzma * patch-2.5.9-1-msys-1.0.11-bin.tar.lzma patch-2.5.9-1-msys-1.0.11-doc.tar.lzma patch-2.5.9-1-msys-1.0.11-lic.tar.lzma * rxvt-2.7.10.20050409-1-msys-1.0.11-bin.tar.lzma rxvt-2.7.10.20050409-1-msys-1.0.11-doc.tar.lzma rxvt-2.7.10.20050409-1-msys-1.0.11-lic.tar.lzma * sed-4.2.1-1-msys-1.0.11-bin.tar.lzma sed-4.2.1-1-msys-1.0.11-doc.tar.lzma sed-4.2.1-1-msys-1.0.11-lic.tar.lzma * tar-1.22-1-msys-1.0.11-bin.tar.lzma tar-1.22-1-msys-1.0.11-doc.tar.lzma tar-1.22-1-msys-1.0.11-ext.tar.lzma tar-1.22-1-msys-1.0.11-lic.tar.lzma * texinfo-4.13a-1-msys-1.0.11-bin.tar.lzma texinfo-4.13a-1-msys-1.0.11-doc.tar.lzma texinfo-4.13a-1-msys-1.0.11-lic.tar.lzma liblzma-4.999.9beta-1-msys-1.0.11-dev.tar.gz * liblzma-4.999.9beta-1-msys-1.0.11-dll-1.tar.gz * xz-4.999.9beta-1-msys-1.0.11-bin.tar.gz xz-4.999.9beta-1-msys-1.0.11-doc.tar.gz xz-4.999.9beta-1-msys-1.0.11-lic.tar.gz The next four packages are runtime libraries, programs, or data that previously were only part of the MSYS-DTK, but upon which some of the new updated MSYS components now rely. cygutils-dos2unix provides updated executables that replace scripts previously part of msys-core; termcap-"bin" provides an updated /etc/termcap database. There are two versions of the msys regex DLL: one used by older msys executables from the (now defunct) "Supplementary Tools: Tech Preview" 2007 collection, and another used by all the recompiled ones. * libpopt-1.15-1-msys-1.0.11-dll-0.tar.lzma * cygutils-dos2unix-1.3.4-3-msys-1.0.11-bin.tar.lzma * termcap-0.20050421_1-1-msys-1.0.11-bin.tar.lzma * libregex-0.12-1-msys-1.0.11-dll-0.tar.lzma * libregex-1.20090805-1-msys-1.0.11-dll-1.tar.lzma Download the packages you want to update from the MinGW site. They are all found under "MSYS ${package}"/${package}-${version}/" -- where ${package} is the name of the associated source, which can sometimes be confusing for libraries. for instance, liblzma-4.999.9beta-1-msys-1.0.11-dll-1.tar.gz is found under "MSYS xz/xz-4.999.9beta-1". No, unfortunately we don't yet have a mechanism to automate this download procedure, short of cut-n-pasting the URLs from the SourceForge download site into a batch file, and use (e.g.) the GnuWin32 wget.exe to download them. Put all the packages into C:\msys\1.0\msys-updates. Then, from an MSYS shell, do the following: $ cd / $ rm -f bin/u2d # avoid conflict with cygutils-dos2unix's u2d.exe $ rm -f bin/d2u # ditto $ tar xvzf /msys-updates/*.tar.gz $ tar --lzma -xvf /msys-updates/*.tar.lzma You will get an error message about being unable to replace tar.exe. To fix this, next do: $ mkdir /tmp/tar $ cd /tmp/tar $ tar --lzma -xvf /msys-updates/tar-1.22-1-msys-1.0.11-bin.tar.lzma $ cp -p bin/tar.exe /bin/ Note that there are still three components to the base system that do not yet have updated versions available. These are: coreutils bash make "Repackaged" versions of these should be available eventually. ====================================================================== #4) INSTALL MSYS-DTK COMPONENTS Here, we don't even bother with the 6 year old msys-dtk-1.0.1 installer. We just go straight to the package list. However, SOME of these must be installed under C:\MinGW (that is, /mingw) and OTHERS must be installed under C:\msys\1.0 (that is, /). This is something both the 2003 msys-dtk installer got wrong, and which the 2007 package update got wrong [*]. [*] where "wrong" is defined as "incongruent with the result of discussions over the last three years, culminating in these threads": "New Packages" 2009-06-21 22:38:19 GMT http://thread.gmane.org/gmane.comp.gnu.mingw.devel/3297 "GCC 4.4.0: Naming conventions" 2009-04-18 06:35:28 GMT http://thread.gmane.org/gmane.comp.gnu.mingw.devel/3225 "Standards for Building MinGW Release Packages" 2008-03-27 12:36:25 GMT http://thread.gmane.org/gmane.comp.gnu.mingw.devel/2739 ---------------------------------------------------------------------- #4a) MSYS-DTK in /mingw First, here's the list of MSYS-DTK components that belong under /mingw (notice that they all have -mingw32- in the name): * autoconf-6-1-mingw32-bin.tar.lzma autoconf-6-1-mingw32-lic.tar.lzma * autoconf2.1-2.13-4-mingw32-bin.tar.lzma autoconf2.1-2.13-4-mingw32-doc.tar.lzma autoconf2.1-2.13-4-mingw32-lic.tar.lzma * autoconf2.5-2.63-1-mingw32-bin.tar.lzma autoconf2.5-2.63-1-mingw32-doc.tar.lzma autoconf2.5-2.63-1-mingw32-lic.tar.lzma * automake-4-1-mingw32-bin.tar.lzma automake-4-1-mingw32-lic.tar.lzma * automake1.10-1.10.2-1-mingw32-bin.tar.lzma automake1.10-1.10.2-1-mingw32-doc.tar.lzma automake1.10-1.10.2-1-mingw32-lic.tar.lzma * automake1.11-1.11-1-mingw32-bin.tar.lzma automake1.11-1.11-1-mingw32-doc.tar.lzma automake1.11-1.11-1-mingw32-lic.tar.lzma * automake1.4-1.4p6-1-mingw32-bin.tar.lzma automake1.4-1.4p6-1-mingw32-doc.tar.lzma automake1.4-1.4p6-1-mingw32-lic.tar.lzma * automake1.5-1.5-1-mingw32-bin.tar.lzma automake1.5-1.5-1-mingw32-doc.tar.lzma automake1.5-1.5-1-mingw32-lic.tar.lzma * automake1.6-1.6.3-1-mingw32-bin.tar.lzma automake1.6-1.6.3-1-mingw32-doc.tar.lzma automake1.6-1.6.3-1-mingw32-lic.tar.lzma * automake1.7-1.7.9-1-mingw32-bin.tar.lzma automake1.7-1.7.9-1-mingw32-doc.tar.lzma automake1.7-1.7.9-1-mingw32-lic.tar.lzma * automake1.8-1.8.5-1-mingw32-bin.tar.lzma automake1.8-1.8.5-1-mingw32-doc.tar.lzma automake1.8-1.8.5-1-mingw32-lic.tar.lzma * automake1.9-1.9.6-3-mingw32-bin.tar.lzma automake1.9-1.9.6-3-mingw32-doc.tar.lzma automake1.9-1.9.6-3-mingw32-lic.tar.lzma * bzip2-1.0.5-2-mingw32-bin.tar.gz bzip2-1.0.5-2-mingw32-dev.tar.gz bzip2-1.0.5-2-mingw32-doc.tar.gz bzip2-1.0.5-2-mingw32-lic.tar.gz bzip2-1.0.5-2-mingw32-man.tar.gz * libbz2-1.0.5-2-mingw32-dll-2.tar.gz cygutils-1.3.4-1-mingw32-doc.tar.lzma cygutils-1.3.4-1-mingw32-lic.tar.lzma * cygutils-dos2unix-1.3.4-1-mingw32-bin.tar.lzma * gettext-0.17-1-mingw32-bin.tar.lzma * gettext-0.17-1-mingw32-dev.tar.lzma gettext-0.17-1-mingw32-doc.tar.lzma gettext-0.17-1-mingw32-ext.tar.lzma gettext-0.17-1-mingw32-lic.tar.lzma libasprintf-0.17-1-mingw32-dll-0.tar.lzma * libgettextpo-0.17-1-mingw32-dll-0.tar.lzma * libintl-0.17-1-mingw32-dll-8.tar.lzma * libcharset-1.13.1-1-mingw32-dll-1.tar.lzma * libiconv-1.13.1-1-mingw32-bin.tar.lzma * libiconv-1.13.1-1-mingw32-dev.tar.lzma * libiconv-1.13.1-1-mingw32-dll-2.tar.lzma libiconv-1.13.1-1-mingw32-doc.tar.lzma libiconv-1.13.1-1-mingw32-lic.tar.lzma * libltdl-2.2.7a-1-mingw32-dev.tar.lzma * libltdl-2.2.7a-1-mingw32-dll-7.tar.lzma * libtool-2.2.7a-1-mingw32-bin.tar.lzma libtool-2.2.7a-1-mingw32-doc.tar.lzma libtool-2.2.7a-1-mingw32-lic.tar.lzma libpopt-1.15-1-mingw32-dev.tar.lzma * libpopt-1.15-1-mingw32-dll-0.tar.lzma libpopt-1.15-1-mingw32-lang.tar.lzma popt-1.15-1-mingw32-doc.tar.lzma popt-1.15-1-mingw32-lic.tar.lzma liblzma-4.999.9beta-1-mingw32-dev.tar.bz2 * liblzma-4.999.9beta-1-mingw32-dll-1.tar.bz2 * xz-4.999.9beta-1-mingw32-bin.tar.bz2 xz-4.999.9beta-1-mingw32-doc.tar.bz2 xz-4.999.9beta-1-mingw32-lic.tar.bz2 libz-1.2.3-1-mingw32-dev.tar.gz * libz-1.2.3-1-mingw32-dll-1.tar.gz zlib-1.2.3-1-mingw32-doc.tar.gz zlib-1.2.3-1-mingw32-lic.tar.gz zlib-1.2.3-1-mingw32-man.tar.gz Put all of THESE packages into C:\MinGW\mingw-updates. Then, from an MSYS shell, do the following: $ cd /mingw $ tar xvzf /mingw/mingw-updates/*.tar.gz $ tar xvjf /mingw/mingw-updates/*.tar.bz2 $ tar --lzma -xvf /mingw/mingw-updates/*.tar.lzma ---------------------------------------------------------------------- #4b) MSYS-DTK in / Now, here are the MSYS-DTK packages that belong in C:\msys\1.0 (e.g. /). Notice that these all have -msys- in the name: * libltdl-2.2.7a-1-msys-1.0.11-dll-7.tar.lzma * autogen-5.9.2-2-msys-1.0.11-bin.tar.lzma autogen-5.9.2-2-msys-1.0.11-doc.tar.lzma autogen-5.9.2-2-msys-1.0.11-lic.tar.lzma * libguileopts-5.9.2-2-msys-1.0.11-dll-0.tar.lzma libopts-5.9.2-2-msys-1.0.11-dev.tar.lzma * libopts-5.9.2-2-msys-1.0.11-dll-25.tar.lzma * bison-2.4.1-1-msys-1.0.11-bin.tar.lzma bison-2.4.1-1-msys-1.0.11-doc.tar.lzma bison-2.4.1-1-msys-1.0.11-lic.tar.lzma * bison-2.4.1-1-msys-1.0.11-rtm.tar.lzma * crypt-1.1_1-2-msys-1.0.11-bin.tar.lzma crypt-1.1_1-2-msys-1.0.11-doc.tar.lzma crypt-1.1_1-2-msys-1.0.11-lic.tar.lzma libcrypt-1.1_1-2-msys-1.0.11-dev.tar.lzma * libcrypt-1.1_1-2-msys-1.0.11-dll-0.tar.lzma * cvs-1.12.13-1-msys-1.0.11-bin.tar.lzma cvs-1.12.13-1-msys-1.0.11-doc.tar.lzma cvs-1.12.13-1-msys-1.0.11-lic.tar.lzma * cygutils-1.3.4-3-msys-1.0.11-bin.tar.lzma cygutils-1.3.4-3-msys-1.0.11-doc.tar.lzma cygutils-1.3.4-3-msys-1.0.11-lic.tar.lzma * flex-2.5.35-1-msys-1.0.11-bin.tar.lzma flex-2.5.35-1-msys-1.0.11-doc.tar.lzma flex-2.5.35-1-msys-1.0.11-lic.tar.lzma * gdbm-1.8.3-2-msys-1.0.11-bin.tar.lzma gdbm-1.8.3-2-msys-1.0.11-doc.tar.lzma gdbm-1.8.3-2-msys-1.0.11-lic.tar.lzma libgdbm-1.8.3-2-msys-1.0.11-dev.tar.lzma * libgdbm-1.8.3-2-msys-1.0.11-dll-3.tar.lzma gmp-4.3.1-1-msys-1.0.11-doc.tar.lzma gmp-4.3.1-1-msys-1.0.11-lic.tar.lzma libgmp-4.3.1-1-msys-1.0.11-dev.tar.lzma * libgmp-4.3.1-1-msys-1.0.11-dll-3.tar.lzma * guile-1.8.7-1-msys-1.0.11-bin.tar.lzma guile-1.8.7-1-msys-1.0.11-doc.tar.lzma guile-1.8.7-1-msys-1.0.11-lic.tar.lzma libguile-1.8.7-1-msys-1.0.11-dev.tar.lzma * libguile-1.8.7-1-msys-1.0.11-dll-17.tar.lzma * libguile-1.8.7-1-msys-1.0.11-rtm.tar.lzma * inetutils-1.5-1-msys-1.0.11-bin.tar.lzma inetutils-1.5-1-msys-1.0.11-dev.tar.lzma inetutils-1.5-1-msys-1.0.11-lic.tar.lzma bsdcpio-2.7.1-1-msys-1.0.11-bin.tar.lzma * bsdtar-2.7.1-1-msys-1.0.11-bin.tar.lzma * libarchive-2.7.1-1-msys-1.0.11-dev.tar.lzma * libarchive-2.7.1-1-msys-1.0.11-dll-2.tar.lzma libarchive-2.7.1-1-msys-1.0.11-doc.tar.lzma libarchive-2.7.1-1-msys-1.0.11-lic.tar.lzma libarchive-2.7.1-1-msys-1.0.11-src.tar.lzma * lndir-1.0.1-1-msys-1.0.11-bin.tar.gz lndir-1.0.1-1-msys-1.0.11-doc.tar.gz lndir-1.0.1-1-msys-1.0.11-lic.tar.gz libminires-1.02_1-1-msys-1.0.11-dev.tar.lzma * libminires-1.02_1-1-msys-1.0.11-dll.tar.lzma * minires-1.02_1-1-msys-1.0.11-bin.tar.lzma minires-1.02_1-1-msys-1.0.11-doc.tar.lzma minires-1.02_1-1-msys-1.0.11-lic.tar.lzma * mktemp-1.6-1-msys-1.0.11-bin.tar.lzma mktemp-1.6-1-msys-1.0.11-doc.tar.lzma mktemp-1.6-1-msys-1.0.11-lic.tar.lzma * openssh-4.7p1-2-msys-1.0.11-bin.tar.lzma openssh-4.7p1-2-msys-1.0.11-doc.tar.lzma openssh-4.7p1-2-msys-1.0.11-lic.tar.lzma libopenssl-0.9.8k-1-msys-1.0.11-dev.tar.lzma * libopenssl-0.9.8k-1-msys-1.0.11-dll-098.tar.lzma * openssl-0.9.8k-1-msys-1.0.11-bin.tar.lzma openssl-0.9.8k-1-msys-1.0.11-doc.tar.lzma openssl-0.9.8k-1-msys-1.0.11-lic.tar.lzma * perl-5.6.1_2-1-msys-1.0.11-bin.tar.lzma perl-5.6.1_2-1-msys-1.0.11-doc.tar.lzma perl-5.6.1_2-1-msys-1.0.11-html.tar.lzma perl-5.6.1_2-1-msys-1.0.11-lic.tar.lzma perl-5.6.1_2-1-msys-1.0.11-man.tar.lzma libpopt-1.15-1-msys-1.0.11-dev.tar.lzma popt-1.15-1-msys-1.0.11-doc.tar.lzma popt-1.15-1-msys-1.0.11-lic.tar.lzma libregex-1.20090805-1-msys-1.0.11-dev.tar.lzma regex-0.12-1-msys-1.0.11-lic.tar.lzma regex-1.20090805-1-msys-1.0.11-doc.tar.lzma regex-1.20090805-1-msys-1.0.11-lic.tar.lzma termcap-0.20050421_1-1-msys-1.0.11-dev.tar.lzma termcap-0.20050421_1-1-msys-1.0.11-doc.tar.lzma termcap-0.20050421_1-1-msys-1.0.11-lic.tar.lzma * vim-7.2-1-msys-1.0.11-bin.tar.lzma vim-7.2-1-msys-1.0.11-doc.tar.lzma vim-7.2-1-msys-1.0.11-lang.tar.lzma vim-7.2-1-msys-1.0.11-lic.tar.lzma zlib-1.2.3-1-msys-1.0.11-dev.tar.gz * zlib-1.2.3-1-msys-1.0.11-dll.tar.gz zlib-1.2.3-1-msys-1.0.11-doc.tar.gz zlib-1.2.3-1-msys-1.0.11-lic.tar.gz Put all the packages into C:\msys\1.0\msys-dtk-updates. Then, from an MSYS shell, do the following: $ cd / $ tar xvzf /msys-dtk-updates/*.tar.gz $ tar --lzma -xvf /msys-dtk-updates/*.tar.lzma ---------------------------------------------------------------------- #4c) MSYS-DTK ADD-ONS for / The following packages are "new" additions, that were never part of the MSYS-DTK. (Or in the case of lpr-enhanced, have been replaced in the new package set for most users -- by lpr-basic.exe in the cygutils-bin package. lpr-enhanced is still useful for those who need its advanced capabilities.) If you want these tools, download them also as part of step #4b, and install them into C:\msys\1.0 (that is, /): * groff-1.20.1-1-msys-1.0.11-bin.tar.lzma groff-1.20.1-1-msys-1.0.11-doc.tar.lzma groff-1.20.1-1-msys-1.0.11-ext.tar.lzma groff-1.20.1-1-msys-1.0.11-lic.tar.lzma groff-1.20.1-1-msys-1.0.11-smp.tar.lzma * man-1.6f-1-msys-1.0.11-bin.tar.lzma man-1.6f-1-msys-1.0.11-doc.tar.lzma man-1.6f-1-msys-1.0.11-lang.tar.lzma man-1.6f-1-msys-1.0.11-lic.tar.lzma * lpr-enhanced-1.0.2-1-msys-1.0.11-bin.tar.lzma lpr-enhanced-1.0.2-1-msys-1.0.11-doc.tar.lzma lpr-enhanced-1.0.2-1-msys-1.0.11-lic.tar.lzma ====================================================================== #5) MINGW ADD-ONS The following packages are "new" additions, that were never part of the MSYS-DTK, MSYS, or MinGW itself. * gendef is a new utility by the mingw64 team. * pexports used to be part of the mingw-utils "add-on", but is now a separately-available download. * mingw-utils is a small collection of win32 utilities. * mingw-catgets is a library and toolset similar to gettext for internationalization. It has not yet been repackaged according to the latest version of the new naming scheme and packaging standard, so unpack with care. * mingw-regex is a MinGW port of the gnulib regex library (similar to the regex-msys MSYS-DTK package). It has not yet been repackaged according to the latest version of the new naming scheme and packaging standard, so unpack with care. If you want these tools, download them, save into C:\MinGW\mingw-addons, and unpack as shown below: gendef-1.0.1346-1-mingw32-bin.tar.lzma gendef-1.0.1346-1-mingw32-doc.tar.lzma gendef-1.0.1346-1-mingw32-lic.tar.lzma mingw-utils-0.4-1-mingw32-bin.tar.lzma ("MinGW Utilities" folder) mingw-utils-0.4-1-mingw32-doc.tar.lzma mingw-utils-0.4-1-mingw32-lic.tar.lzma pexports-0.44-1-mingw32-bin.tar.lzma pexports-0.44-1-mingw32-doc.tar.lzma pexports-0.44-1-mingw32-lic.tar.lzma mingw-catgets-1.0-bin.tar.gz ("MinGW catgets" folder on sourceforge) mingw-catgets-1.0-dev.tar.gz mingw-libgnurx-2.5.1-bin.tar.gz ("User Contributed_ regex" folder) mingw-libgnurx-2.5.1-dev.tar.gz $ cd /mingw $ tar --lzma -xvf /mingw/mingw-addons/*.tar.lzma $ tar -xvzf /mingw/mingw-addons/*.tar.gz ====================================================================== #6) mingwPORTs These are generally user-contributed scripts that automate compiling and installing mingw packages on your own machine. However, in addition to a working MSYS and MSYS-DTK installation, you need one additional tool to get them to work, which is not included in the standard MSYS or MSYS-DTK installations, nor in any of the update packages, nor as a standalone download from the mingw site. That tool is wget.exe. However, it IS buried in a rather unlikely place: http://sourceforge.net/projects/mingw/files/User%20Contributed_%20mingwPORT/Current%20Releases/wget-1.9.1-mingwPORT.tar.bz2/download Normally, mingwPORTs are collections of build scripts. You download, unpack, and invoke it, and it will automatically download the actual source code, patch it, compile it, and install it. THIS one does that too -- but it also includes a pre-compiled wget.exe. So, the quick approach is to download the wget mingwPORT, unpack it somewhere safe (/tmp?), and copy the unpacked executable into C:\MinGW\bin: $ cd /tmp $ tar xvjf /path/to/wget-1.9.1-mingwPORT.tar.bz2 $ cp wget-1.9.1/mingwPORT/wget.exe /mingw/bin Using the mingwPORT system to compile and install other mingwPORTs is beyond the scope of this email; see http://www.mingw.org/wiki/mingwPORT for more information. ====================================================================== #7) MSYS-DVLPR ADD-ONS FINALLY, if you ALSO want to build *msys*, as opposed to mingw32 native applications, the following packages could be installed into C:\msys\1.0 (e.g. /) as well. However, if you don't know EXACTLY what the previous sentence means, then you don't need ANY of these packages: * autoconf-2.63-1-msys-1.0.11-bin.tar.lzma autoconf-2.63-1-msys-1.0.11-doc.tar.lzma autoconf-2.63-1-msys-1.0.11-lic.tar.lzma * automake-1.11-1-msys-1.0.11-bin.tar.lzma automake-1.11-1-msys-1.0.11-doc.tar.lzma automake-1.11-1-msys-1.0.11-lic.tar.lzma * libltdl-2.2.7a-1-msys-1.0.11-dev.tar.lzma * libtool-2.2.7a-1-msys-1.0.11-bin.tar.lzma libtool-2.2.7a-1-msys-1.0.11-doc.tar.lzma libtool-2.2.7a-1-msys-1.0.11-lic.tar.lzma * gettext-0.17-1-msys-1.0.11-bin.tar.lzma * gettext-0.17-1-msys-1.0.11-dev.tar.lzma gettext-0.17-1-msys-1.0.11-doc.tar.lzma gettext-0.17-1-msys-1.0.11-ext.tar.lzma gettext-0.17-1-msys-1.0.11-lic.tar.lzma * libiconv-1.13.1-1-msys-1.0.11-bin.tar.lzma * libiconv-1.13.1-1-msys-1.0.11-dev.tar.lzma libiconv-1.13.1-1-msys-1.0.11-doc.tar.lzma libiconv-1.13.1-1-msys-1.0.11-lic.tar.lzma However, if you ARE intending to develop *msys* applications, you probably need to go back to step #4b, and include also all of the -dev components. Plus, you'll need msysDVLPR-1.0.0-alpha-1.tar.gz from the "MSYS System Builder" folder, and you'll need to fix _G_config.h and /usr/lib/gcc-lib/i686-pc-msys/2.95.3-1/include/sys/termios.h. Getting msys-dvlpr working is beyond the scope of this email, so I'll leave it at that. ====================================================================== Soooo....once you've completed steps #1--#4, you should be ready to unpack your source code, and autoconf/configure/make it. HOWEVER..... #1) Most source packages ship with a "configure" script already generated by autoconf. They also ship configure.in or configure.ac, so that if you modify it you can regenerate a new configure script -- but this is only rarely necessary. Are you sure that your package doesn't already contain a 'configure' script? #2) Are you trying to build TCL itself? If so, that's one thing. However, I suspect that you're trying to build an EXTENSION to tcl. For this to work, you have to have TCL installed already. The typical MinGW installation as described above does NOT include TCL. There is a six-year-old version of TCL on the MinGW website: http://sourceforge.net/projects/mingw/files/MinGW%20Utilities/TclTk/release%208.4.1/tcltk-8.4.1-1.exe/download but frankly I have NO idea whether it works, where it came from, whether the stuff it installs will completely break a modern MinGW installation, or who originally contributed it. I also don't know if it will break an insight installation: http://sourceforge.net/projects/mingw/files/GNU%20Source-Level%20Debugger/Release%20Candidate_%20gdb-6.6/insight-6.6-mingw-src.tar.bz2/download http://sourceforge.net/projects/mingw/files/User%20Contributed_%20Miscellany/insight/mingw-insight-6.3.exe/download Bascially, I wouldn't recommend using the tcltk package on the MinGW website. Instead, you might try installing (ANYWHERE but into C:\MinGW or C:\msys\1.0) the "official" win32 version of tcl from here: http://www.activestate.com/activetcl/ which includes a number of pre-compiled TCL extensions, such as BWidgets, [incr Tcl/Tk/Widgets] also known as itcl, itk, and iwidgets, tcllib, tklib, tclvfs, the img extension, sqlite, and a bunch of others. It also ships with 'expect' for windows (but not dejaGNU). See http://docs.activestate.com/activetcl/8.5/full_toc.html and ask here: http://aspn.activestate.com/ASPN/Mail/Browse/Threaded/ActiveTcl about how to set up your computer to compile tcl extensions for ActiveTcl on windows. Furthermore, ActiveTcl has an concept of a "TEApot" -- a repository of pre-compiled tcl extensions, and support for that is integrated into ActiveTcl 8.5.x. http://docs.activestate.com/tdk/5.0/tpm/tpm/files/CTP_activetcl.html I don't know if access to the repository is "free" (as in beer or speech) but after installing the free (as in beer) ActiveTcl you could give it a try, and see if the TEA extension you want is available already. -- Chuck |
From: j h. <jvh...@gm...> - 2009-09-21 13:25:04
|
Wow, thanks for the reply. Hope you didn't create all that from scratch. I already have ActiveTcl 8.5. I downloaded this tea package which does not have configure, only configure.in: http://sourceforge.net/projects/tcl-snmptools/. Thus my need for autoconf. My goal is to simply get this extension setup so that I can use its commands in my scripts. The short README file suggested using MinGW instead of VC++ as using the latter would require fiddling with the files to make things work. I installed MinGW and have successfully compiled using gcc. Just need autoconf now. Looked at ActiveState. Didn't see a free pot of tea. The bit of documentation I read gave me the idea that teapots were for code within a user's company, etc. jh |
From: Charles W. <cwi...@us...> - 2009-09-21 17:49:25
|
j hite wrote: > Wow, thanks for the reply. Hope you didn't create all that from scratch. Well, I did -- but it was intended as a rough draft for a new wiki page I've been meaning to write for a while. Stay tuned. > My goal is to simply get this extension setup so that I can use its > commands in my scripts. The short README file suggested using MinGW > instead of VC++ as using the latter would require fiddling with the > files to make things work. I installed MinGW and have successfully > compiled using gcc. Just need autoconf now. Well, after following the previous instructions you should have it. > Looked at ActiveState. Didn't see a free pot of tea. The bit of > documentation I read gave me the idea that teapots were for code within > a user's company, etc. OK. I know very little about tcl in practice; my only exposure has been related to getting gdb/insight and python-tkinter/idle working. I saw the TEApot thing, and supposed that perhaps ActiveState was hosting a precompiled repository using that technology, for public use. OTOH, they are in business to make money, so maybe that's a $$$ thing. -- Chuck |
From: Roger P. <rog...@gm...> - 2009-09-21 17:34:40
|
> Look, right now the whole MinGW and MSYS project is undergoing a major > revision in how we deliver the software. In the past, you basically > installed > > "MinGW" using some installer executable > "MSYS" using some other installer executable > and > "MSYS-DTK" using yet a third installer executable. > Perhaps some script could be created the automate the process of "getting the latest and greatest" [until an installer is ready]? -r |
From: Роман Д. <DXD...@ya...> - 2009-09-21 16:24:25
|
j hite <jvh...@gm...> писал в своём письме Mon, 21 Sep 2009 17:24:50 +0400: > I already have ActiveTcl 8.5. I downloaded this tea package which does > not > have configure, only configure.in: > http://sourceforge.net/projects/tcl-snmptools/. Thus my need for > autoconf. I've just downloaded tcl-snmptools-1.0.tar.gz, and configure is there. Roman. |
From: Charles W. <cwi...@us...> - 2009-09-21 17:53:38
|
Roger Pack wrote: >> Look, right now the whole MinGW and MSYS project is undergoing a major >> revision in how we deliver the software. In the past, you basically >> installed >> >> "MinGW" using some installer executable >> "MSYS" using some other installer executable >> and >> "MSYS-DTK" using yet a third installer executable. >> > > Perhaps some script could be created the automate the process of > "getting the latest and greatest" [until an installer is ready]? Nope. Too much variation in individual users' installation, and no interoperable database format describing what a specific installation "looks like". I have no plans to write a package management system in shell, only to see it replaced by a REAL package management system very soon. If you want to replicate an installation footprint -- mingw doesn't put anything into the registry. So, just make one installation, zip it up, and distribute that. But, be sure to download and distribute the -src packages for everything you install, and make those available for (re)distribution, too. This is your responsibility under the GPL. -- Chuck |
From: j h. <jvh...@gm...> - 2009-09-21 18:57:47
|
2009/9/21 Роман Донченко <DXD...@ya...> > j hite <jvh...@gm...> писал в своём > письме Mon, 21 Sep 2009 17:24:50 +0400: > > > I already have ActiveTcl 8.5. I downloaded this tea package which does > > not > > have configure, only configure.in: > > http://sourceforge.net/projects/tcl-snmptools/. Thus my need for > > autoconf. > > I've just downloaded tcl-snmptools-1.0.tar.gz, and configure is there. > > Roman. > > OK, thanks Roman. I see it but can't extract it. What tool are you using to extract the files? Thanks |
From: j h. <jvh...@gm...> - 2009-09-21 19:02:35
|
> > >> I've just downloaded tcl-snmptools-1.0.tar.gz, and configure is there. >> >> Roman. >> >> > OK, thanks Roman. I see it but can't extract it. What tool are you using > to extract the files? > > Thanks > Just pulled it out with IZArc on my laptop. My desktop defaults to winzip and it was truncating. jh |
From: Roger P. <rog...@gm...> - 2009-09-21 19:58:49
|
> Nope. Too much variation in individual users' installation, and no > interoperable database format describing what a specific installation > "looks like". > > I have no plans to write a package management system in shell, only to > see it replaced by a REAL package management system very soon. Sounds good look forward to using it :) -r |
From: j h. <jvh...@gm...> - 2009-09-21 20:52:02
|
Well, Mr Duh here finally got configure to run to completion. Yay for me! And many thanks to y'all. jh |