j'ai écrit le script suivant pour installer la version svn de MonoDevelopInstallation Monodevelop du SVN sur Ubuntu 10.04
#!/usr/bin/env bash
PREFIX=/opt/local
check_errs()
{
if [[ $? -ne 0 ]]; then
echo "${1}"
exit 1
fi
}
download()
{
if [ ! -d ${1} ]
then
svn co http://anonsvn.mono-project.com/source/trunk/${1}
else
(cd ${1}; svn update)
fi
}
download mono
download mcs
download libgdiplus
(
cd mono
./autogen.sh --prefix=$PREFIX
make
make install
check_errs
)
(
cd libgdiplus
./autogen.sh --prefix=$PREFIX
make
make install
check_errs
)
download monodevelop
export PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig
(
cd monodevelop
./configure --prefix=$PREFIX --select
check_errs
make
check_errs
)
Tout fonctionne bien jusqu'à ce que la dernière étape de faire pour le pacakge de monodevelop, où le script se termine avec l'erreur :
./MonoDevelop.WebReferences/MoonlightChannelBaseExtension.cs(320,82): error CS1061: Type `System.ServiceModel.Description.OperationContractGenerationContext' does not contain a definition for `SyncMethod' and no extension method `SyncMethod' of type `System.ServiceModel.Description.OperationContractGenerationContext' could be found (are you missing a using directive or an assembly reference?)
./MonoDevelop.WebReferences/MoonlightChannelBaseExtension.cs(325,49): error CS1061: Type `System.ServiceModel.Description.OperationContractGenerationContext' does not contain a definition for `SyncMethod' and no extension method `SyncMethod' of type `System.ServiceModel.Description.OperationContractGenerationContext' could be found (are you missing a using directive or an assembly reference?)
./MonoDevelop.WebReferences/MoonlightChannelBaseExtension.cs(345,115): error CS1061: Type `System.ServiceModel.Description.OperationContractGenerationContext' does not contain a definition for `SyncMethod' and no extension method `SyncMethod' of type `System.ServiceModel.Description.OperationContractGenerationContext' could be found (are you missing a using directive or an assembly reference?)
./MonoDevelop.WebReferences/MoonlightChannelBaseExtension.cs(365,82): error CS1061: Type `System.ServiceModel.Description.OperationContractGenerationContext' does not contain a definition for `BeginMethod' and no extension method `BeginMethod' of type `System.ServiceModel.Description.OperationContractGenerationContext' could be found (are you missing a using directive or an assembly reference?)
Compilation failed: 4 error(s), 1 warnings
make[4]: *** [../../../build/AddIns/MonoDevelop.WebReferences/MonoDevelop.WebReferences.dll] Error 1
make[4]: Leaving directory `/home/drufat/Desktop/Checkout/mono/monodevelop/main/src/addins/MonoDevelop.WebReferences'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/drufat/Desktop/Checkout/mono/monodevelop/main/src/addins'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/drufat/Desktop/Checkout/mono/monodevelop/main/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/drufat/Desktop/Checkout/mono/monodevelop/main'
make: *** [all-recursive] Error 1
Des idées sur la façon de résoudre ce problème? Je suppose que la construction est mélangée avec l'installation par défaut de mono dans Ubuntu, et cherche un symbole qui n'est pas présent là-bas.
Ma configuration de construction se présente comme suit:
1. [X] main
2. [ ] extras/JavaBinding
3. [ ] extras/BooBinding
4. [X] extras/ValaBinding
5. [ ] extras/AspNetEdit
6. [ ] extras/GeckoWebBrowser
7. [ ] extras/WebKitWebBrowser
8. [ ] extras/MonoDevelop.Database
9. [ ] extras/MonoDevelop.Profiling
10. [ ] extras/MonoDevelop.AddinAuthoring
11. [ ] extras/MonoDevelop.CodeAnalysis
12. [ ] extras/MonoDevelop.Debugger.Mdb
13. [ ] extras/MonoDevelop.Debugger.Gdb
14. [ ] extras/PyBinding
15. [ ] extras/MonoDevelop.IPhone
16. [ ] extras/MonoDevelop.MeeGo