Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
On Sat, Jun 5, 2010 at 11:01 AM, Frank Church vfcli...@gmail.com wrote: On checking the sqlite3.dll docs it states the only additional requirement for it is msvcrt.dll. Frank, as long as I know it's just a variation of sqlite3.dll that uses MS C run-time dynamically linked vs statically. You can compile sqlite3.dll without msvcrt dependency with any other compiler, for example freely available borland command-line compiler, just checked the dll made with it, it has only kernel32.dll and user32.dll functions in import section. Also, sqlite3 source has no any msvcrt* mentioning in the sources (if it had, this can be some indication of dynamic dependency). Max, maxerist.net ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
[sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
I have tried to install a program using SQLite3.dll on Windows systems and it appears to fail repeatedly on Windows 2000 systems. On checking the sqlite3.dll docs it states the only additional requirement for it is msvcrt.dll. Is that known to be a problem, or could it be something else? I just want to know if there are some other known issues between sqlite3.dll and Windows 2000. I don't have my own Windows 2000 system to test it with. -- Frank Church === http://devblog.brahmancreations.com ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 12:01 AM, Frank Church wrote: and Windows 2000. Mainstream support ended 5 years ago, and all support ends in just over a month, no matter how much money anyone is prepared to throw at them: http://support.microsoft.com/lifecycle/?LN=en-usx=7y=6p1=3071 You haven't said how it fails. A correctly installed and maintained system should be just fine. A system with other 3rd party software on it is especially likely to have experienced the dll being overwritten. http://en.wikipedia.org/wiki/Microsoft_Windows_library_files#Msvcrt.dll I don't have my own Windows 2000 system to test it with. It is generally a good idea to have an MSDN subscription as you then have access to the operating systems for development and testing. http://msdn.microsoft.com/en-us/subscriptions/subscriptionschart.aspx Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKAqYACgkQmOOfHg372QQAbwCfb1fdVgPFt0fO96KmjgVk1xzr RbMAnRZVgil2oHZAXemL2JgxsebuAi2z =LCfX -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
Am Sat, 5 Jun 2010 08:01:31 +0100 schrieb Frank Church: On checking the sqlite3.dll docs it states the only additional requirement for it is msvcrt.dll. Is that known to be a problem, or could it be something else? I just want to know if there are some other known issues between sqlite3.dll and Windows 2000. SQLite runs fine on my Windows 2000 systems, without any issues. Wolfgang ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
Roger Binns a écrit : But in fact sqlite runs perfectly fine on windows2000 and is compilable with any free compiler (mingw for instance) Best regards Noël Frankinet -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 12:01 AM, Frank Church wrote: and Windows 2000. Mainstream support ended 5 years ago, and all support ends in just over a month, no matter how much money anyone is prepared to throw at them: http://support.microsoft.com/lifecycle/?LN=en-usx=7y=6p1=3071 You haven't said how it fails. A correctly installed and maintained system should be just fine. A system with other 3rd party software on it is especially likely to have experienced the dll being overwritten. http://en.wikipedia.org/wiki/Microsoft_Windows_library_files#Msvcrt.dll I don't have my own Windows 2000 system to test it with. It is generally a good idea to have an MSDN subscription as you then have access to the operating systems for development and testing. http://msdn.microsoft.com/en-us/subscriptions/subscriptionschart.aspx Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKAqYACgkQmOOfHg372QQAbwCfb1fdVgPFt0fO96KmjgVk1xzr RbMAnRZVgil2oHZAXemL2JgxsebuAi2z =LCfX -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 04:21 AM, noel frankinet wrote: But in fact sqlite runs perfectly fine on windows2000 Exactly as my second paragraph says. But in the Windows 2000 time frame applications used to install their own copies of msvcrt.dll in the system directories which means one broken application is all it takes to screw that up. But when the operating system vendor no longer supports a platform it is increasingly pointless for a software person to continue support. At some point you have to call it quits. (For example see who still supports Windows 95, MacOS 7 or Redhat Linux 3.) and is compilable with any free compiler (mingw for instance) You are mixing multiple things up. There are two different issues: source compatibility and binary compatibility. SQLite does compile with pretty much any C compiler out there (source compatibility). Binary compatibility is a bit more tricky. The compiler links SQLite against system libraries that provide underlying functionality such as file access, memory allocation etc. What happens is compiler and platform specific. In general the resulting SQLite works with that version of the operating system and any version going forward but not older ones. In the case of Microsoft, they have been distributing the C libraries with the compilers not the operating system and been numbering the C library as part of the file name. Additionally various data structures (eg stdio) have changed between library versions and having multiple versions of the C library used in the same process is a recipe for problems. Applications should be putting the C libraries in their own directories and not system locations. msvcrt.dll (with no numbers) is a special case and is in system directories and in theory is for the use of operating system applications only. Because of that pervasiveness MinGW targets it as the C library. In fact they claim to support no other version, although their compiled DLLs do work with other versions in my experience. BTW I believe the distributed SQLite Windows DLL is actually produced by a gcc cross compiler on Linux, which you could label MinGW as well. Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKZMsACgkQmOOfHg372QRYyQCgsOpimyfGUtV83mEbqgEhS1+7 nAoAnR7r+vi6qb2WgiY1Z4zGfQbo2ZSK =DImh -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
Roger Binns a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 04:21 AM, noel frankinet wrote: But in fact sqlite runs perfectly fine on windows2000 Exactly as my second paragraph says. But in the Windows 2000 time frame applications used to install their own copies of msvcrt.dll in the system directories which means one broken application is all it takes to screw that up. But when the operating system vendor no longer supports a platform it is increasingly pointless for a software person to continue support. At some point you have to call it quits. (For example see who still supports Windows 95, MacOS 7 or Redhat Linux 3.) I see windows 2000 as the finest os that redmont has produced. You'd better not develop on the latest ms os if you want to have some installed base. and is compilable with any free compiler (mingw for instance) You are mixing multiple things up. There are two different issues: source compatibility and binary compatibility. SQLite does compile with pretty much any C compiler out there (source compatibility). Binary compatibility is a bit more tricky. The compiler links SQLite against system libraries that provide underlying functionality such as file access, memory allocation etc. What happens is compiler and platform specific. In general the resulting SQLite works with that version of the operating system and any version going forward but not older ones. In the case of Microsoft, they have been distributing the C libraries with the compilers not the operating system and been numbering the C library as part of the file name. Additionally various data structures (eg stdio) have changed between library versions and having multiple versions of the C library used in the same process is a recipe for problems. Applications should be putting the C libraries in their own directories and not system locations. msvcrt.dll (with no numbers) is a special case and is in system directories and in theory is for the use of operating system applications only. Because of that pervasiveness MinGW targets it as the C library. In fact they claim to support no other version, although their compiled DLLs do work with other versions in my experience. I did not know that mingw was using msvcrt.dll. But anyway, its there, in system directory, so it should run fine. BTW I believe the distributed SQLite Windows DLL is actually produced by a gcc cross compiler on Linux, which you could label MinGW as well. Yes I think so too. Best regards Noël Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKZMsACgkQmOOfHg372QRYyQCgsOpimyfGUtV83mEbqgEhS1+7 nAoAnR7r+vi6qb2WgiY1Z4zGfQbo2ZSK =DImh -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
Hello noel, Well, I have a large install base of users both foreign and US based and most of them still use XP. The benefit of Windows 2000 is that it's easily pirated (more easily than XP is what I mean). My software still works under Win2k, though the users have to install a a DLL from Microsoft. I'm not clear if my next version will run on '2k. As for the original problem, find the DLL and place it in the same folder as the application and it should work. C Saturday, June 5, 2010, 11:20:20 AM, you wrote: nf Roger Binns a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 04:21 AM, noel frankinet wrote: But in fact sqlite runs perfectly fine on windows2000 Exactly as my second paragraph says. But in the Windows 2000 time frame applications used to install their own copies of msvcrt.dll in the system directories which means one broken application is all it takes to screw that up. But when the operating system vendor no longer supports a platform it is increasingly pointless for a software person to continue support. At some point you have to call it quits. (For example see who still supports Windows 95, MacOS 7 or Redhat Linux 3.) nf I see windows 2000 as the finest os that redmont has produced. You'd nf better not develop on the latest ms os if you want to have some nf installed base. and is compilable with any free compiler (mingw for instance) You are mixing multiple things up. There are two different issues: source compatibility and binary compatibility. SQLite does compile with pretty much any C compiler out there (source compatibility). Binary compatibility is a bit more tricky. The compiler links SQLite against system libraries that provide underlying functionality such as file access, memory allocation etc. What happens is compiler and platform specific. In general the resulting SQLite works with that version of the operating system and any version going forward but not older ones. In the case of Microsoft, they have been distributing the C libraries with the compilers not the operating system and been numbering the C library as part of the file name. Additionally various data structures (eg stdio) have changed between library versions and having multiple versions of the C library used in the same process is a recipe for problems. Applications should be putting the C libraries in their own directories and not system locations. msvcrt.dll (with no numbers) is a special case and is in system directories and in theory is for the use of operating system applications only. Because of that pervasiveness MinGW targets it as the C library. In fact they claim to support no other version, although their compiled DLLs do work with other versions in my experience. nf I did not know that mingw was using msvcrt.dll. But anyway, its there, nf in system directory, so it should run fine. BTW I believe the distributed SQLite Windows DLL is actually produced by a gcc cross compiler on Linux, which you could label MinGW as well. nf Yes I think so too. nf Best regards nf Noël Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKZMsACgkQmOOfHg372QRYyQCgsOpimyfGUtV83mEbqgEhS1+7 nAoAnR7r+vi6qb2WgiY1Z4zGfQbo2ZSK =DImh -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users nf ___ nf sqlite-users mailing list nf sqlite-users@sqlite.org nf http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users -- Best regards, Tegmailto:t...@djii.com ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 08:20 AM, noel frankinet wrote: I see windows 2000 as the finest os that redmont has produced. You'd better not develop on the latest ms os if you want to have some installed base. Your opinion is fine, but someone has to bear the burden of supporting increasingly outdated operating systems. For example I have a Mac running OSX 10.3. The open source software I use (eg Firefox and Emacs) do not run on it anymore because they were not willing to bear that burden. And pretty much no one supports Windows 98 these days for the same reason. I did not know that mingw was using msvcrt.dll. But anyway, its there, in system directory, so it should run fine. The thing you missed is that there is no one msvcrt.dll. There was one version shipped with the operating system, then updated versions with new functionality and bug fixes shipped with Microsoft compilers, service packs and other updates. On install applications were placing whatever versions they wanted into the system directory and not necessarily doing that right. This is why it is possible for SQLite3.dll to work just fine on one system but not another. With XP the dll became a protected system file and Windows went to great lengths to ensure that any installer futzing with it would have the actions reversed. Microsoft also started numbering the dll shipped with the C compiler, and said applications should install the dll in their program directory (which is searched first before system directories). They also introduced sxs where the system managed multiple versions of dlls and that whole mess. http://en.wikipedia.org/wiki/Side-by-side_assembly Consequently XP and later systems are far less likely to have problems with incorrect msvcrt.dll. Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKhmIACgkQmOOfHg372QSszgCg4m6GBuZlfb6kVx4u32WHibAU GcAAniDiHqlOfkDRrJGEuecucH73Umja =2OwY -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
Roger Binns a écrit : -BEGIN PGP SIGNED MESSAGE- Hash: SHA1 On 06/05/2010 08:20 AM, noel frankinet wrote: I see windows 2000 as the finest os that redmont has produced. You'd better not develop on the latest ms os if you want to have some installed base. Your opinion is fine, but someone has to bear the burden of supporting increasingly outdated operating systems. For example I have a Mac running OSX 10.3. The open source software I use (eg Firefox and Emacs) do not run on it anymore because they were not willing to bear that burden. And pretty much no one supports Windows 98 these days for the same reason. Yes, but its a pity(windows 98 is another problem). I still use windows 2000 as my base point. I test on xp after that (but I progress, before it was watcom c++ and dos extender). I did not know that mingw was using msvcrt.dll. But anyway, its there, in system directory, so it should run fine. The thing you missed is that there is no one msvcrt.dll. There was one version shipped with the operating system, then updated versions with new functionality and bug fixes shipped with Microsoft compilers, service packs and other updates. On install applications were placing whatever versions they wanted into the system directory and not necessarily doing that right. This is why it is possible for SQLite3.dll to work just fine on one system but not another. Yes I understand that. With XP the dll became a protected system file and Windows went to great lengths to ensure that any installer futzing with it would have the actions reversed. Microsoft also started numbering the dll shipped with the C compiler, and said applications should install the dll in their program directory (which is searched first before system directories). They also introduced sxs where the system managed multiple versions of dlls and that whole mess. Yes I've seen that, and also exe that don't run because of double dependency http://en.wikipedia.org/wiki/Side-by-side_assembly Consequently XP and later systems are far less likely to have problems with incorrect msvcrt.dll. My experience is the reverse, but luck maybe. Anyway thank you for your info, I wish you would have been there when I was pulling my hair with side by side assembly issue Noël Roger -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkwKhmIACgkQmOOfHg372QSszgCg4m6GBuZlfb6kVx4u32WHibAU GcAAniDiHqlOfkDRrJGEuecucH73Umja =2OwY -END PGP SIGNATURE- ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] Is the absence of msvcrt.dll a known issue with SQLite Windows 2000
You can find out definitively whether your problems are a missing DLL on that particular system by using Dependency Walker: http://www.dependencywalker.com/ Run the app and load Sqlite3.dll. If dependent DLLs are missing, it will highlight them. Similarly, you can load up other DLLs and EXEs in your app to see if something else is missing a DLL. Doug ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users