Symptoms
When you compile a Microsoft Visual C++ 2008 project, you may receive the following error message:
error C2471: cannot update program database
Note This problem occurs in a specific translation unit.
Cause
This problem occurs because another problem occurs in a different translation unit.
Resolution
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
To download this hotfix from the MSDN Code Gallery, visit the following Microsoft Web site:
http://code.msdn.microsoft.com/KB946040
Note The MSDN Code Gallery displays the languages for which the hotfix is available. If you do not see your language listed, it is because the Code Gallery resource page is not available for that language.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
http://support.microsoft.com/contactus/?ws=support
Prerequisites
You must have Visual Studio 2008 installed to apply this hotfix.
Restart requirement
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
File name |
File version |
File size |
Date |
Time |
Platform |
---|---|---|---|---|---|
Mspdbcore.dll |
9.0.21022.37 |
288256 |
21-Dec-2007 |
05:35 |
x86 |
Mspdbcore.dll |
9.0.21022.37 |
396800 |
21-Dec-2007 |
05:41 |
x64 |
Status
Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the «Applies to» section.
More Information
For more information about software update terminology, click the following article number to view the article in the Microsoft Knowledge Base:
824684 Description of the standard terminology that is used to describe Microsoft software updates
Need more help?
- Remove From My Forums
-
Question
-
I create a new project and create some .h and .cpp files to this project, but when I build the solution by clicking «Ctrl+shift+B», there are two error messages displayed in the OutPut window(PS: it works fine a few minutes ago): 1>—— Build started:
Project: Chpater7, Configuration: Debug Win32 —— 1>Compiling… 1>Chpater7.cpp 1>c:documents and settingszhanzhexmy documentsvisual studio 2008projectschpater7chpater7chpater7.cpp(4) : error C2471: cannot update program database ‘c:documents and
settingszhanzhexmy documentsvisual studio 2008projectschpater7chpater7debugvc90.pdb’ 1>c:documents and settingszhanzhexmy documentsvisual studio 2008projectschpater7chpater7chpater7.cpp(4) : fatal error C1083: Cannot open program database file:
‘c:documents and settingszhanzhexmy documentsvisual studio 2008projectschpater7chpater7debugvc90.pdb’: No such file or directory 1>Build log was saved at «file://c:Documents and SettingszhanzhexMy DocumentsVisual Studio 2008ProjectsChpater7Chpater7DebugBuildLog.htm»
1>Chpater7 — 2 error(s), 0 warning(s) ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ========== I located the file vc90.pdb and it is indeed under the path c:documents and settingszhanzhexmy documentsvisual studio 2008projectschpater7chpater7debug
so, could you please tell me how to fix this issue?
Answers
-
That is not terribly uncommon in VC2008 (unfortunately). Try deleting the PDB and building again.
-
Marked as answer by
Tuesday, May 3, 2011 3:25 PM
-
Marked as answer by
I had a VC2008 project very complicated.Inorder to understand it’s inner workings I tried to simplify it and now I am getting 289 errors of the following type for most of the files:
Error 5 error C2471: cannot update program database ‘c:usersryandocumentsvisual studio 2008projectsvcmyinfoclidebugvc90.pdb’ c:usersryandocumentsvisual studio 2008projectsvcmyinfoclimediainfofile__analyze_buffer_minimizesize.cpp 1 CLI
Error 6 fatal error C1083: Cannot open program database file: ‘c:usersryandocumentsvisual studio 2008projectsvcmyinfoclidebugvc90.pdb’: No such file or directory c:usersryandocumentsvisual studio 2008projectsvcmyinfoclimediainfofile__analyze_buffer_minimizesize.cpp 1 CLI
My system : win7/VS2008
asked Nov 18, 2010 at 16:11
rsjethanirsjethani
2,1496 gold badges24 silver badges30 bronze badges
2
Solution 1: Locate *.vcxproj file in your solution, open in a text editor and search for ‘DebugInformationFormat’ and set it to ‘OldStyle’. Reload your project and build. If you have multiple projects in your solution, this change needed for all the *.vcxproj files.
< DebugInformationFormat>OldStyle< /DebugInformationFormat>
Solution 2: From Visual Studio, on every project in your solution right click and open Properties. Expand ‘Configuration Properties’ > ‘C/C++’ > ‘General’. Change the ‘Debug Information Format’ to ‘C7 compatible (/Z7)’. Then build your solution.
This worked for me. (YMMV = Your mileage may vary:)
answered Mar 1, 2013 at 18:24
YogiBearYogiBear
711 silver badge1 bronze badge
I’ve seen the same behaviour when converting a VS2003.Net solution to run on later IDEs. My guess is that your solution contains multiple projects which point to the same intermediate directory. In VS2005 and later, projects that don’t depend on each other can be built in parallel so that if the same working dir is used, you can get file conflicts like this.
Check this as follows. In Solution Explorer, right click on one of the failing projects and select Properties. In Configuration Properties -> General section, make sure that every project has a different ‘Intermediate Directory’. Try your build again using ‘Rebuild Solution’ to clean everything out.
answered Nov 18, 2010 at 16:22
Steve TownsendSteve Townsend
53.2k9 gold badges91 silver badges139 bronze badges
3
Most of the times when I get «C2471: cannot update program database» it’s because the PDB file is locked for some reason. Usually in my case that turns out to be because I have the program running in some other window, which loads the PDB file in to memory.
When that’s not the reason, I find doing a rebuild-all magically fixes the problem.
answered Nov 18, 2010 at 16:45
John DiblingJohn Dibling
98.8k29 gold badges183 silver badges321 bronze badges
1
I’ve encountered the same type of error myself with no end of frustration.
I finally fixed it by applying the Microsoft hot fix found in this knowledge base article: http://archive.msdn.microsoft.com/KB946040
answered Jan 27, 2012 at 19:09
Amish ProgrammerAmish Programmer
2,0413 gold badges18 silver badges22 bronze badges
This worked for me.
Kill mspdbsrv.exe and reload Visual C++
MSDN
answered Oct 23, 2015 at 13:04
0
answered Nov 28, 2015 at 7:25
Содержание
- Исправление: Сообщение об ошибке при компиляции проекта Visual C++ 2008: «C2471 ошибка: не удается обновить базу данных программы»
- Симптомы
- Причина
- Решение
- Сведения об исправлении
- Предварительные условия
- Необходимость перезагрузки
- Сведения о замене исправлений
- Сведения о файлах
- FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
- Symptoms
- Cause
- Resolution
- Hotfix information
- Prerequisites
- Restart requirement
- Hotfix replacement information
- File information
- FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
- Symptoms
- Cause
- Resolution
- Hotfix information
- Prerequisites
- Restart requirement
- Hotfix replacement information
- File information
- FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
- Symptoms
- Cause
- Resolution
- Hotfix information
- Prerequisites
- Restart requirement
- Hotfix replacement information
- File information
- Error c2471 cannot update program database
- Answered by:
- Question
Исправление: Сообщение об ошибке при компиляции проекта Visual C++ 2008: «C2471 ошибка: не удается обновить базу данных программы»
Симптомы
При компиляции проекта Microsoft Visual C++ 2008, может появиться следующее сообщение об ошибке:
C2471 ошибка: не удается обновить базу данных программы
Примечание. Эта проблема возникает в конкретном случае перевод единице.
Причина
Эта проблема возникает из-за другой проблемы в разных транслируемых блоков.
Решение
Сведения об исправлении
Существует исправление от корпорации Майкрософт. Однако данное исправление предназначено для устранения только проблемы, описанной в этой статье. Применяйте данное исправление только в тех системах, которые имеют данную проблему. Это исправление может проходить дополнительное тестирование. Таким образом если вы не подвержены серьезно этой проблеме, рекомендуется дождаться следующего пакета обновления, содержащего это исправление.
Чтобы загрузить это исправление из коллекции кода MSDN, посетите следующий веб-узел корпорации Майкрософт:
http://code.msdn.microsoft.com/KB946040
Примечание. Коллекции кода MSDN отображаются языки, для которых доступно исправление. Если в списке язык не отображается, это недоступности страница коллекции кода для этого языка.
Примечание. Если наблюдаются другие проблемы или необходимо устранить неполадки, вам может понадобиться создать отдельный запрос на обслуживание. Стандартная оплата за поддержку будет взиматься только за дополнительные вопросы и проблемы, которые не соответствуют требованиям конкретного исправления. Чтобы получить полный список телефонов поддержки и обслуживания клиентов корпорации Майкрософт или создать отдельный запрос на обслуживание, посетите следующий веб-сайт корпорации Майкрософт:
Предварительные условия
Visual Studio 2008, для установки этого исправления необходимо иметь.
Необходимость перезагрузки
Не требуется перезагружать компьютер после установки данного исправления.
Сведения о замене исправлений
Это исправление не заменяет других исправлений.
Сведения о файлах
Английская версия данного исправления содержит атрибуты файла (или более поздние атрибуты файлов), приведенные в следующей таблице. Дата и время для этих файлов указаны в формате общего скоординированного времени (UTC). При просмотре сведений о файле, он преобразуется в локальное время. Чтобы узнать разницу между временем по Гринвичу и местным временем, откройте вкладку Часовой пояс элемента Дата и время в панели управления.
Источник
FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
Symptoms
When you compile a Microsoft Visual C++ 2008 project, you may receive the following error message:
error C2471: cannot update program database
Note This problem occurs in a specific translation unit.
Cause
This problem occurs because another problem occurs in a different translation unit.
Resolution
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
To download this hotfix from the MSDN Code Gallery, visit the following Microsoft Web site:
http://code.msdn.microsoft.com/KB946040
Note The MSDN Code Gallery displays the languages for which the hotfix is available. If you do not see your language listed, it is because the Code Gallery resource page is not available for that language.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Prerequisites
You must have Visual Studio 2008 installed to apply this hotfix.
Restart requirement
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Источник
FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
Symptoms
When you compile a Microsoft Visual C++ 2008 project, you may receive the following error message:
error C2471: cannot update program database
Note This problem occurs in a specific translation unit.
Cause
This problem occurs because another problem occurs in a different translation unit.
Resolution
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
To download this hotfix from the MSDN Code Gallery, visit the following Microsoft Web site:
http://code.msdn.microsoft.com/KB946040
Note The MSDN Code Gallery displays the languages for which the hotfix is available. If you do not see your language listed, it is because the Code Gallery resource page is not available for that language.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Prerequisites
You must have Visual Studio 2008 installed to apply this hotfix.
Restart requirement
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Источник
FIX: Error message when you compile a Visual C++ 2008 project: «Error C2471: cannot update program database»
Symptoms
When you compile a Microsoft Visual C++ 2008 project, you may receive the following error message:
error C2471: cannot update program database
Note This problem occurs in a specific translation unit.
Cause
This problem occurs because another problem occurs in a different translation unit.
Resolution
Hotfix information
A supported hotfix is available from Microsoft. However, this hotfix is intended to correct only the problem that is described in this article. Apply this hotfix only to systems that are experiencing this specific problem. This hotfix might receive additional testing. Therefore, if you are not severely affected by this problem, we recommend that you wait for the next software update that contains this hotfix.
To download this hotfix from the MSDN Code Gallery, visit the following Microsoft Web site:
http://code.msdn.microsoft.com/KB946040
Note The MSDN Code Gallery displays the languages for which the hotfix is available. If you do not see your language listed, it is because the Code Gallery resource page is not available for that language.
Note If additional issues occur or if any troubleshooting is required, you might have to create a separate service request. The usual support costs will apply to additional support questions and issues that do not qualify for this specific hotfix. For a complete list of Microsoft Customer Service and Support telephone numbers or to create a separate service request, visit the following Microsoft Web site:
Prerequisites
You must have Visual Studio 2008 installed to apply this hotfix.
Restart requirement
You do not have to restart the computer after you apply this hotfix.
Hotfix replacement information
This hotfix does not replace any other hotfixes.
File information
The English version of this hotfix has the file attributes (or later file attributes) that are listed in the following table. The dates and times for these files are listed in Coordinated Universal Time (UTC). When you view the file information, it is converted to local time. To find the difference between UTC and local time, use the Time Zone tab in the Date and Time item in Control Panel.
Источник
Error c2471 cannot update program database
This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.
Answered by:
Question
I thought this problem is supposed to be fixed already in VS2008 RTM.
I downloaded and installed VS2008 RTM today. After converting my 30-project solution successfully, I built the solution and got many, may C2471 error. I tried every thing: delete all pdb files, set the «maximum number of parallel projects builds» to 1, but still get the C2471 error.
My machine got tons of diskspace, and none of the PDB files is bigger than 4MB (limited on pdb file is 64MB, I believed)
Is there any «work around» this problem at all? To me, this bug is absolutely a «show stop» bug. Why in the world that Microsoft RTM its VS2008 with a bug like this?
Would this is a problem that caused Bill Gate to step down/out because he is so ashame of (hehehehehehe)
Anyway, please advice: should I uninstall VS2008, dump it into my trash can and wait for the next release?.
Источник
- Forum
- General C++ Programming
- errors c2471 & c1083
errors c2471 & c1083
What do these mean and how do I clear them??
Error 1 error C2471: cannot update program database ‘c:usersmissydocumentsvisual studio 2008projectsassign5_q3assign5_q3debugvc90.pdb’ c:usersmissydocumentsvisual studio 2008projectsassign5_q3assign5_q3charact.cpp 1 Assign5_Q3
Error 2 fatal error C1083: Cannot open program database file: ‘c:usersmissydocumentsvisual studio 2008projectsassign5_q3assign5_q3debugvc90.pdb’: No such file or directory c:usersmissydocumentsvisual studio 2008projectsassign5_q3assign5_q3charact.cpp 1 Assign5_Q3
The extension «pdb» stands for «program debug database» and it contains debug information.
I would try to
* rebuild the solution (don’t have the English version but the short cut on my version is Ctrl + Alt + F7), maybe you need to celan the solution first (also in the same menu as compilation)
* check the project options if you have the correct «debug information format» in the general tab of C/C++ options
Topic archived. No new replies allowed.