Passa ai contenuti principali

Cygwin

http://en.wikipedia.org/wiki/Cygwin

rende disponibile un'ambiente POSIX (è l'insieme di api che accomuna i sistemi unix). Il resto, quello che gira sotto, e anche i programmi compilati in cygwin sono exe e dll windows. Traduce una chiamata POSIX in chiamate alle API (e quindi chiamate alle dll) di windows, lo strato di traduzione è realizzato dall'unica cygwin1.dll.

mette a disposizione una toolchain di compilazione di tipo UNIX. Cioè gcc e gdb, tutti i file h necessari a compilare le librerie. MinGw è invece un compilatore.

-- se compilato con il gcc di cygwin l'eseguibile potrà girare solo su cygwin
-- se compilato con MinGw il binario è un eseguibile (o dll) di windows vero e proprio (è da questo compilatore che vengono i binari per windows di Mozilla firefox, java e openoffice).

Red Hat foraggia cygwin e lo rende disponibile tramite GPL.

Mingw nasce come fork di CygWin, in effetti lavorano un po' in direzioni opposte: Cygwin aderisce allo standard POSIX, senza curarsi delle prestazioni (ogni chiamata in pratica passa per Cygwin1.dll). Mentre MinGw vuole creare dei binari che chiamino direttamente le api di windows e non si debbano redistribuire con le dll di cygwin.
MinGw è spesso installato racchiuso in MSYS (un cygwin minimale), che permette di utilizzare per la compilazione alcuni utili strumenti unix come autoconf (./configure --blah-blah, per intenderci) e i comandi principali della shell interattiva unix.

Commenti

Post popolari in questo blog

Log.Net: Conflitto Con CrystalReport per Visual Studio 2010

Situazione: Web Application Asp.Net 4.0, Utilizzo delle librerie di Crystal Report per VS2010. Il progetto web utilizza Log.Net, scaricato dal sito ufficiale. Un problema simile si verifica con applicazioni Windows Form. Problema: Le due librerie vanno in conflitto sia in fase di compilazione ( 1550854 - "Could not load file or assembly 'log4net' or one of its dependencies" Error when building Visual Studio 2010 solution utilizing the Crystal Reports .NET Runtime ), sia una volta installata sulla macchiana target (L'inizializzatore di tipo di 'CrystalDecisions.Shared.SharedUtils' ha generato un'eccezione. Impossibile caricare il file o l'assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304' o una delle relative dipendenze. La definizione di manifesto dell'assembly specificato non corrisponde al riferimento all'assembly.). Soluzione Spiegata: Il thread in cui ne parlano. A quanto ho ca...

Entity Framework: SqlException Line 7: Incorrect syntax near '('

La stringa SQL generata per il comando linq2Entity First funziona correttamente con SQL server 2008. L'sql generato è SELECT TOP(1) ... Per potersi collegare ad un DB SqlServer2005 serve modificare nei metadati la proprietà ProviderManifestToken ="2005". Emerge a questo punto l'errore che da il titolo al post: ogni chiamata a FirstOrDefault o First esplode riportando il messaggio sibillino. L'inghippo è proprio l'SQL generato: TOP (1) sembra indigesto a sql server 2005. La soluzione: usare come livello di compatibilità 2000 per la proprietà ProviderManifestToken. La query generata è Top 1... , senza parentesi, e funziona su SqlServer2005 Q uesto post nei forum microsof illustra un problema simile e la soluzione.

Dotnetnuke non migrerà ad asp .NET MVC

Il grande capo di dnn Shawn Walker ha messo in chiaro che non tenteranno un porting di dnn verso asp .Net MVC, dotnetnuke resterà per sempre su web forms. La scelta è tanto saggia quanto obbligata. Esiste però un modo per estendere DNN o integrarlo con un'applicazione MVC? sembra di si, il completo tutorial in 3 parti direttamnte dai blog ufficiali delgi sviluppatori Dnn: parte1 parte2 parte3 Per completezza qui il famoso post di ScottGu sulla volontà di microsoft di tenere in piedi con uguali risorse sia asp.Net MVC sia WebForms.