É possível criar arquivos MSBuild (visual studio sln) a partir da linha de comando no Mono?
Pergunta
É possível criar soluções do Visual Studio sem precisar iniciar o MonoDevelop?
Solução
Status atual (Mono 2.10, 2011):O xbuild agora é capaz de compilar todas as versões de projetos do Visual Studio/MSBuild, incluindo arquivos .sln.Simplesmente execute xbuild
assim como você executaria msbuild
no Microsoft .Net Framework.Você não precisa do Monodevelop instalado, o xbuild vem com a instalação padrão do Mono.
Se sua compilação usar tarefas personalizadas, elas ainda deverão funcionar se não dependerem de executáveis do Windows (como rmdir
ou xcopy
).
Ao editar arquivos de projeto, use a sintaxe de caminho padrão do Windows - eles serão convertidos pelo xbuild, se necessário.Uma advertência importante a esta regra é a distinção entre maiúsculas e minúsculas - não misture maiúsculas e minúsculas diferentes com o mesmo nome de arquivo.Se você tiver um projeto que faça isso, poderá ativar o modo de compatibilidade invocando MONO_IOMAP=case xbuild foo.sln
(ou tente MONO_IOMAP=all
).Mono tem uma página descrevendo mais avançados Portabilidade do projeto MSBuild técnicas.
Resposta Mono 2.0 (2008): xbuild ainda não está completo (funciona muito bem com arquivos .csproj do VS2005, tem problemas com .csproj do VS2008 e não suporta .sln).O Mono 2.1 planeja mesclar a base de código do mdtool (mecanismo de construção de linha de comando MonoDevelop) nele, mas atualmente ferramenta md é uma escolha melhor. mdtool build -f:project.sln
ou man mdtool
se você tiver o MonoDevelop instalado.
Outras dicas
por enquanto, em agosto de 2017, podemos usar
msbuild
comando como xbuild é depreciado.
xbuild agora oferece suporte a soluções e projetos, tanto VS2005 quanto VS2008.
Acho que você está procurando por xbuild:http://www.mono-project.com/Microsoft.Build