A.- H._, geboren 1965, arbeitete seit August 1994 als Bauarbeiter für die Firma X._ AG und meldete sich am 8. Januar 1997 bei der Invalidenversicherung zum Leistungsbezug an. Die IV-Stelle Zug holte diverse Arztberichte sowie einen Bericht des Arbeitgebers vom 7. Februar 1997 ein und veranlasste eine polydisziplinäre Abklärung in der Medizinischen Abklärungsstelle (MEDAS) Zentralschweiz (Gutachten vom 6. November 1998, inkl.
psychiatrischem Konsilium vom 14. September 1998, rheumatologischem Konsilium vom 15. September 1998 und beruflicher Abklärung vom 11. September 1998). Nach durchgeführtem Vorbescheidverfahren lehnte die IV-Stelle mit Verfügung vom 9. August 1999 den Anspruch des H._ auf eine Invalidenrente ab, da ihm eine leichte bis mittelschwere Tätigkeit im Umfang von 60 % zumutbar sei, sodass ein Invaliditätsgrad von 28 % resultiere.
B.- Nachdem H._ dagegen Beschwerde erhoben hatte, liess das Verwaltungsgericht des Kantons Zug durch Dr. med. I._, Facharzt FMH Psychiatrie und Psychotherapie, ein psychiatrisches Gerichtsgutachten vom 10. Oktober 2000 erstellen; im Weiteren nahm es mehrere Arztberichte zu den Akten. Mit Entscheid vom 31. Mai 2001 wurde die Beschwerde teilweise gutgeheissen, indem H._ ab dem 1. August 1997 eine halbe Rente der Invalidenversicherung zugesprochen und die Sache zur Abklärung beruflicher Massnahmen an die IV-Stelle zurückgewiesen wurde.
C.- Die IV-Stelle führt Verwaltungsgerichtsbeschwerde mit dem Antrag, unter teilweiser Aufhebung des vorinstanzlichen Entscheides sei festzustellen, dass H._ ab dem 1. August 1997 eine Viertelsrente der Invalidenversicherung zustehe.
Die Vorinstanz schliesst auf Abweisung der Verwaltungsgerichtsbeschwerde, während das Bundesamt für Sozialversicherung auf eine Vernehmlassung verzichtet. H._ seinerseits beantragt Abweisung der Verwaltungsgerichtsbeschwerde, eventualiter eine halbe Härtefall-Rente der Invalidenversicherung; zusätzlich stellt er ein Gesuch um Gewährung der unentgeltlichen Verbeiständung.

Das Eidg. Versicherungsgericht zieht in Erwägung:
1.- Die Vorinstanz hat die Voraussetzungen für den Anspruch auf eine Invalidenrente (<ref-law>) und die Bemessung des Invaliditätsgrades bei Erwerbstätigen anhand des Einkommensvergleichs (<ref-law>) zutreffend dargelegt. Darauf kann verwiesen werden.
2.- Streitig ist der Anspruch auf eine Invalidenrente und in diesem Zusammenhang einzig die Bestimmung des vom Versicherten ohne Gesundheitsschaden erzielbaren Einkommens (Valideneinkommen) für die Festlegung des Invaliditätsgrades.
a) Das kantonale Gericht hat auf die Lohnangaben des Arbeitgebers (Fr. 42'085. 05 für das Jahr 1995) abgestellt, und diesen Betrag auf eine Jahresarbeitszeit von 2132 Stunden umgerechnet (die auch dem Landesmantelvertrag entspreche) sowie der Lohnentwicklung bis ins Jahr 1997 angepasst, womit ein massgebendes Valideneinkommen von Fr. 52'104.- resultiere. Bei blossem Abstellen auf die Angaben des Arbeitgebers werde ausser Acht gelassen, dass der Beschwerdegegner im Jahr 1995 krankheits- und unfallbedingte Absenzen gehabt habe.
Die IV-Stelle ist demgegenüber der Ansicht, dass zwar auf den letzten Lohn abzustellen sei, die Vorinstanz dabei aber nicht berücksichtigt habe, dass dieser stundenmässig festgesetzte Betrag einen Anteil Entschädigung für Ferien/ Feiertage und für den 13. Monatslohn enthalte. Damit könne nicht eine Jahresarbeitszeit von 2132 Stunden (41 Stunden pro Woche x 52 Wochen) massgebend sein, sondern es müssten die Ferien- und Feiertage abgezogen werden, was ein Valideneinkommen in Höhe von Fr. 45'389. 80 (und damit einen Invaliditätsgrad unter 50 %) zur Folge habe.
b) Bei der Ermittlung des Valideneinkommens ist entscheidend, was der Versicherte im massgebenden Zeitpunkt nach dem Beweisgrad der überwiegenden Wahrscheinlichkeit als Gesunder tatsächlich verdienen würde (RKUV 1993 Nr.
U 168 S. 100 Erw. 3b mit Hinweis). Die Einkommensermittlung hat so konkret wie möglich zu erfolgen; daher ist in der Regel vom letzten Lohn, den der Versicherte vor Eintritt der Gesundheitsschädigung erzielt hat, auszugehen (Urteile G. vom 6. Dezember 2001, I 190/01, und K. vom 22. November 2001, I 313/01).
Der Beschwerdegegner hätte im Jahr 1997 gemäss den Angaben des Arbeitgebers Anspruch auf einen Stundenlohn von Fr. 24.39 gehabt, worin die Ferien-/Feiertagsentschädigung und der 13. Monatslohn enthalten sind. Von diesem Lohn ist auszugehen, d.h. das Valideneinkommen ist anhand des vereinbarten Entgelts (Fr. 24.39 pro Stunde) und der zu leistenden Arbeitszeit zu bestimmen (vgl. das analoge Vorgehen in RKUV 1998 Nr. U 314 S. 574 gegen unten). Gemäss Art. 24 des Landesmantelvertrages für das Bauhauptgewerbe vom 20. Dezember 1994 (mit Bundesratsbeschluss vom 17. Juli 1995 über die Allgemeinverbindlicherklärung des Landesmantelvertrages für das Bauhauptgewerbe teilweise allgemeinverbindlich erklärt; BBl 1995 III 747 f.) betrug die jährliche Arbeitszeit in den grossen Städten und ihren Agglomerationen 2112 Stunden (lit. a), während das Jahresstundentotal in den übrigen Gebieten 2138 Stunden umfasst (lit. b; die Änderungen vom 23. April und 28. Mai 1996 sowie vom 27. Januar und 10. April 1997 betreffend die Jahresarbeitszeit nicht). Dabei handelt es sich um die Bruttoarbeitszeit vor Abzug von Ferien und Feiertagen. In Art. 24 Abs. 1 der geltenden Version des Landesmantelvertrages vom 13. Februar 1998 wird die jährliche Arbeitszeit denn auch explizit als "Brutto-Sollarbeitszeit ... vor Abzug der allgemeinen Nichtleistungsstunden" definiert. Damit sind von der Jahresarbeitszeit (2138 Stunden) die Ferien (4 Wochen à 41 Stunden = 164 Stunden; vgl. Art. 34 Abs. 1 Landesmantelvertrag) und die acht Feiertage (Art. 38 Abs. 1 Landesmantelvertrag; entsprechend 41 Stunden pro Woche/ 5 Tage x 8 Tage = 65,6 Stunden) zu subtrahieren. Der Versicherte hat also effektiv 1908, 4 Jahresstunden zu leisten, für die er pro Stunde Fr. 24.39 erhält, was für das Jahr 1997 ein massgebliches Valideneinkommen von Fr. 46'545. 90 ergibt.
c) Das von der Vorinstanz anhand der vom Bundesamt für Statistik herausgegebenen Tabellenlöhne der Schweizerischen Lohnstrukturerhebung festgesetzte und der Lohnentwicklung angepasste Einkommen nach Eintritt der Invalidität (Invalideneinkommen) ist in masslicher Hinsicht nicht zu beanstanden, was auch für den vorgenommenen behinderungsbedingten Abzug in Höhe von 20 % gilt (vgl. <ref-ruling> Erw. 5).
Damit resultiert ein Invaliditätsgrad von rund 44 %; die IV-Stelle wird antragsgemäss abzuklären haben, ob die Voraussetzungen des Härtefalles gemäss <ref-law> und <ref-law> vorliegen.
3.- Das Verfahren ist kostenlos (Art. 134 OG). Die IV-Stelle als obsiegende Behörde hat keinen Anspruch auf Parteientschädigung (Art. 135 in Verbindung mit Art. 159 Abs. 2 OG).
Dem Beschwerdegegner kann die unentgeltliche Verbeiständung gewährt werden (Art. 152 in Verbindung mit Art. 135 OG). Es wird indessen ausdrücklich auf Art. 152 Abs. 3 OG aufmerksam gemacht, wonach die begünstigte Partei der Gerichtskasse Ersatz zu leisten haben wird, wenn sie später dazu im Stande ist.

Demnach erkennt das Eidg. Versicherungsgericht:
I.Die Verwaltungsgerichtsbeschwerde wird in dem Sinne
gutgeheissen, dass der Entscheid des Verwaltungsgerichts
des Kantons Zug vom 31. Mai 2001 und die Verfügung
der IV-Stelle Zug vom 9. August 1999 aufgehoben
werden und die Sache mit der Feststellung, dass der
Beschwerdeführer bei einem Invaliditätsgrad von 44 %
ab dem 1. August 1997 Anspruch auf eine Invalidenrente
hat, zur Prüfung des Härtefalles und zu neuer Verfügung
an die IV-Stelle Zug zurückgewiesen wird.
II.Es werden keine Gerichtskosten erhoben.
III. Zufolge Gewährung der unentgeltlichen Verbeiständung wird Rechtsanwalt Dr. Matthias Michel, Zug, für das Verfahren vor dem Eidgenössischen Versicherungsgericht
aus der Gerichtskasse eine Entschädigung von
Fr. 1000.- (einschliesslich Mehrwertsteuer) ausgerichtet.
IV.Dieses Urteil wird den Parteien, dem Verwaltungsgericht des Kantons Zug, der Ausgleichskasse des Schweizerischen Baumeisterverbandes und dem Bundesamt für
Sozialversicherung zugestellt.
Luzern, 4. April 2002
Im Namen des
Eidgenössischen Versicherungsgerichts
Der Präsident der II. Kammer:
Der Gerichtsschreiber: