php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #50268 PHP doesn't start: ntwdblib.dll not found
Submitted: 2009-11-23 08:40 UTC Modified: 2009-12-26 11:49 UTC
Votes:6
Avg. Score:4.7 ± 0.5
Reproduced:5 of 5 (100.0%)
Same Version:3 (60.0%)
Same OS:2 (40.0%)
From: ben dot arnold dot spam at hotmail dot com Assigned: pajoye (profile)
Status: Not a bug Package: Windows Installer
PHP Version: 5.3.1 OS: Windows Vista
Private report: No CVE-ID: None
 [2009-11-23 08:40 UTC] ben dot arnold dot spam at hotmail dot com
Description:
------------
I am running Apache 2.2.14. I do not have a database installed.


What I did:

1. Downloaded latest version of PHP (php-5.3.1-Win32-VC6-x86.msi)
2. Ran the installer using default values except:
    * Web server: Apache 2.2.x Module
    * Apache configuration directory: C:\Program Files\Apache Software Foundation\Apache2.2\conf\
3. Tried to start Apache.
4. Tried to run PHP by entering "php" in a command window.


What happened:

1. Apache failed to start. A dialogue box says "The requested operation has failed" and Windows error reporting kicked in. There is no error in Apache's error.log.
2. When I tried to start php I get an error dialogue box titled "php.exe - Unable To Locate Component". The text of the box is:

This application has failed to start because ntwdblib.dll was not found. Re-installing the application may fix this problem.


What I expected to happen:

1. I expected that Apache would start with PHP loaded as a module. I expected to be able to put a php file in my htdocs directory and that I could get it to display a Hello World message when I requested it through Apache.

2. I expected PHP to display usage information when run from the commandline.


I have tried uninstalling PHP, downloading the installer again and reinstalling but I have the same problem.

When I uninstall PHP Apache works normally again.

I have Googled this error message and seen various people report that it is connected to a database misconfiguration. I currently do not have a database installed and have done nothing to configure one in PHP. All my configuration steps are listed above.

I am unable to "copy ntwdblib.dll from MSSQL 2000" as suggested in bug #38849 because I do not have MSSQL installed. In any case that bug looks like it is related to a different problem (I am not trying to connect to a database I am just trying to launch PHP).



Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2009-11-23 08:47 UTC] ben dot arnold dot spam at hotmail dot com
Any suggestions for a workaround would be much appreciated.

As it stands I am not able to install PHP at all!
 [2009-11-23 09:08 UTC] pajoye@php.net
Do you need the mssql extension? If not simply comment out the mssql lines in your php.ini.

I'll look into this problem (not sure why it did not install it).
 [2009-11-23 09:23 UTC] ben dot arnold dot spam at hotmail dot com
Thanks for the speedy response!

I just commented out "extension=php_mssql.dll" and it all works perfectly now. Apache starts and I have "hello world" up and running.
 [2009-12-04 03:05 UTC] aruizbcs at gmail dot com
The same problem is happening with the OS Windows 7 - the first time I  
supposed the installation path could be the problem ("C:\Program Files") 
considering the security issues of the OS but when I tried other paths 
like "C:\PHP"  the problem still continues.  The recommendation to 
comment out "extension=php_mssql.dll" works and the problem is gone.
 [2009-12-10 17:35 UTC] john dot walsh at mini-net dot co dot uk
I think it also happens, even if apache/mysql was not selected during the PHP install.

Just a default PHP install does it for me.

And commenting out the line in php.ini:

;extension=php_mssql.dll

fixed the problem.


WinXP Pro, V2002, SP3, a new work machine.
 [2009-12-26 11:33 UTC] kender dot arg at gmail dot com
On windows 7 (x64 ultimate) I encountered the same issue.
Apache 2.2.14 doesn't start after installing PHP 5.3.1

I did get an error in the apache error log:
[Sat Dec 26 11:10:19 2009] [crit] (OS 1813)The specified resource type cannot be found in the image file.  : master_main: create child process failed. Exiting.

(re)starting apache from the Apache Monitor results in "The requested operation has failed"
manually running httpd.exe results in "The program can't start because ntwdblib.dll is missing from your computer. Try reinstalling the program to fix this problem." 

Added these symptoms to make this bug easier to find.
 [2009-12-26 11:49 UTC] pajoye@php.net
Disabel mssql if you don't need it, don't have the PATH setup correctly or does not have the dependencies installed for a given extension.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Nov 02 18:01:29 2024 UTC