I'd like to recompile umbraco to fix a small problem I found in the UmbracoMembershipProvider. However, when I try to compile the files I downloaded from codeplex for 4.0.2.1 I get 18 errors:
Error 59 The type 'System.Web.UI.ExtenderControl' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 52 13 umbraco.controls Error 61 'AjaxControlToolkit.CalendarExtender' does not contain a definition for 'TargetControlID' and no extension method 'TargetControlID' accepting a first argument of type 'AjaxControlToolkit.CalendarExtender' could be found (are you missing a using directive or an assembly reference?) D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 53 17 umbraco.controls Error 62 The best overloaded method match for 'System.Web.UI.ControlCollection.Add(System.Web.UI.Control)' has some invalid arguments D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 55 13 umbraco.controls Error 63 Argument '1': cannot convert from 'AjaxControlToolkit.CalendarExtender' to 'System.Web.UI.Control' D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 55 31 umbraco.controls Error 68 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.cms Error 69 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.macroRenderings Error 70 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.providers Error 71 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.macroRenderings.dll' could not be found umbraco.presentation Error 72 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.presentation Error 73 Metadata file 'D:\Programming\Umbraco\umbraco\providers\bin\Release\umbraco.providers.dll' could not be found umbraco.presentation Error 74 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.presentation Error 75 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.webservices Error 76 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.webservices Error 77 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.standardFormhandlers Error 78 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.standardFormhandlers Error 79 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.editorControls Error 80 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.editorControls Error 81 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.editorControls
Is there a different source for files that can be compiled? What am I missing?
I'm trying to compile on VS2008 SP1 under Windows 7, which has ASPNET 3.5 installed.
Many of the errors have to do with an incompatibility between v3.5 of the System.Web.Extensions assembly and the version that the Umbraco build is based on. I was able to resolve those problems by changing the target framework version to 3.5 in all of the project files, and then deleting/adding references to the affected assemblies.
This may have munged things up badly, but I can't be sure of that yet because there's still one remaining bug which is preventing the solution from building:
Error 46 Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information. D:\Programming\Umbraco\umbraco\presentation\SGEN umbraco.presentation
This occurs when building umbraco.presentation. Googling the error shows it can be caused by a number of things, and sometimes is generated when the "real" error is something else.
Has anyone run into this? Is there a workaround? I'd kinda like to get my UmbracoMembershipProvider updated so it can retrieve encrypted passwords... :)
Okay, if anyone is interested, here's how to get Umbraco 4.0.2.1 to compile on a machine running ASPNET 3.5:
1) Change the Target Framework property on all the projects to 3.5.
2) For all projects that include a reference to System.Web.Extensions, change the value of "Specific Version" from True to False. You can find this parameter by clicking on the System.Web.Extensions entry under references, and then examining the Properties panel.
3) Right-click on the umbraco.presentation project, select Properties, select the Build tab and set "Generate serialization assembly" (down near the bottom of the panel) to Off.
FYI, that last item took two hours of online research to discover. Thanx to daxmax for documenting his solution (http://forum.umbraco.org/yaf_postst8345_force-db-installMySQL-install-dump--info-issues-compiling-in-35.aspx)!
I've rebuilt 4.0.2.1, redeployed it to my development site, restarted the site in IIS, and, so far, it hasn't blown up :).
- Mark
p.s. Since I don't think I can mark my own post as an answer, it'd be nice if someone else did that for me :)
Compiling 4.0.2.1: Errors
I'd like to recompile umbraco to fix a small problem I found in the UmbracoMembershipProvider. However, when I try to compile the files I downloaded from codeplex for 4.0.2.1 I get 18 errors:
Error 59 The type 'System.Web.UI.ExtenderControl' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 52 13 umbraco.controls
Error 61 'AjaxControlToolkit.CalendarExtender' does not contain a definition for 'TargetControlID' and no extension method 'TargetControlID' accepting a first argument of type 'AjaxControlToolkit.CalendarExtender' could be found (are you missing a using directive or an assembly reference?) D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 53 17 umbraco.controls
Error 62 The best overloaded method match for 'System.Web.UI.ControlCollection.Add(System.Web.UI.Control)' has some invalid arguments D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 55 13 umbraco.controls
Error 63 Argument '1': cannot convert from 'AjaxControlToolkit.CalendarExtender' to 'System.Web.UI.Control' D:\Programming\Umbraco\components\umbraco.controls\dateTimePicker.cs 55 31 umbraco.controls
Error 68 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.cms
Error 69 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.macroRenderings
Error 70 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.providers
Error 71 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.macroRenderings.dll' could not be found umbraco.presentation
Error 72 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.presentation
Error 73 Metadata file 'D:\Programming\Umbraco\umbraco\providers\bin\Release\umbraco.providers.dll' could not be found umbraco.presentation
Error 74 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.presentation
Error 75 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.webservices
Error 76 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.webservices
Error 77 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.standardFormhandlers
Error 78 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.standardFormhandlers
Error 79 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\controls.dll' could not be found umbraco.editorControls
Error 80 Metadata file 'D:\Programming\Umbraco\umbraco\presentation\bin\umbraco.dll' could not be found umbraco.editorControls
Error 81 Metadata file 'D:\Programming\Umbraco\umbraco\cms\bin\Release\cms.dll' could not be found umbraco.editorControls
Is there a different source for files that can be compiled? What am I missing?
I'm trying to compile on VS2008 SP1 under Windows 7, which has ASPNET 3.5 installed.
- Mark
Some further info...
Many of the errors have to do with an incompatibility between v3.5 of the System.Web.Extensions assembly and the version that the Umbraco build is based on. I was able to resolve those problems by changing the target framework version to 3.5 in all of the project files, and then deleting/adding references to the affected assemblies.
This may have munged things up badly, but I can't be sure of that yet because there's still one remaining bug which is preventing the solution from building:
Error 46 Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information. D:\Programming\Umbraco\umbraco\presentation\SGEN umbraco.presentation
This occurs when building umbraco.presentation. Googling the error shows it can be caused by a number of things, and sometimes is generated when the "real" error is something else.
Has anyone run into this? Is there a workaround? I'd kinda like to get my UmbracoMembershipProvider updated so it can retrieve encrypted passwords... :)
- Mark
Okay, if anyone is interested, here's how to get Umbraco 4.0.2.1 to compile on a machine running ASPNET 3.5:
1) Change the Target Framework property on all the projects to 3.5.
2) For all projects that include a reference to System.Web.Extensions, change the value of "Specific Version" from True to False. You can find this parameter by clicking on the System.Web.Extensions entry under references, and then examining the Properties panel.
3) Right-click on the umbraco.presentation project, select Properties, select the Build tab and set "Generate serialization assembly" (down near the bottom of the panel) to Off.
FYI, that last item took two hours of online research to discover. Thanx to daxmax for documenting his solution (http://forum.umbraco.org/yaf_postst8345_force-db-installMySQL-install-dump--info-issues-compiling-in-35.aspx)!
I've rebuilt 4.0.2.1, redeployed it to my development site, restarted the site in IIS, and, so far, it hasn't blown up :).
- Mark
p.s. Since I don't think I can mark my own post as an answer, it'd be nice if someone else did that for me :)
Your post saved my day. Thank you very much!
This was of much help to me as well. Thanks Mike.
is working on a reply...