Sachverhalt:
A. Mit Baugesuch vom 18. Dezember 2007 ersuchte die Y._ AG um Erteilung einer Baubewilligung für zwei Zweifamilienhäuser am Z._weg in Weggis. Gegen das Bauvorhaben erhob unter anderem X._ Einsprache.
Am 18. Juni 2008 wies der Gemeinderat Weggis die Einsprache von X._ ab, soweit diese nicht gegenstandslos geworden war, und erteilte die Baubewilligung unter verschiedenen Bedingungen und Auflagen.
B. X._ führte gegen den gemeinderätlichen Entscheid Beschwerde ans Verwaltungsgericht des Kantons Luzern. Mit Urteil vom 7. Juli 2009 hiess das Verwaltungsgericht die Beschwerde teilweise gut, hob den Entscheid des Gemeinderats Weggis vom 18. Juni 2008 auf, soweit er die Bewilligung des projektierten Attikageschosses betrifft, und wies die Sache im Sinne der Erwägungen zur Neubeurteilung an den Gemeinderat zurück. Im Übrigen wies das Verwaltungsgericht die Beschwerde ab, soweit es darauf eintrat.
C. Mit Beschwerde in öffentlich-rechtlichen Angelegenheiten vom 14. September 2009 beantragt X._, das Urteil des Verwaltungsgerichts sei aufzuheben, und die teilweise erteilte Baubewilligung sei zu verweigern. Eventuell sei die Sache zur Neubeurteilung an das Verwaltungsgericht zurückzuweisen.
Mit Verfügung vom 8. Oktober 2009 erkannte der Präsident der I. öffentlich-rechtlichen Abteilung des Bundesgerichts der Beschwerde die aufschiebende Wirkung zu. Mit Präsidialverfügungen vom 28. Oktober 2009 und 7. Dezember 2009 wurde das bundesgerichtliche Verfahren auf Antrag der Beschwerdegegnerin ausgesetzt. Am 11. Mai 2010 verfügte der Präsident der I. öffentlich-rechtlichen Abteilung die Wiederaufnahme des Verfahrens.
Die Beschwerdegegnerin beantragt die Abweisung der Beschwerde, soweit darauf einzutreten sei. Der Gemeinderat Weggis und das Verwaltungsgericht des Kantons Luzern beantragen die Abweisung der Beschwerde.
Erwägungen:
1. Das Bundesgericht prüft die Zulässigkeit der Beschwerde von Amtes wegen (Art. 29 Abs. 1 BGG; BGE 133 II 249 E. 1.1 S. 251).
1.1 Das angefochtene Urteil des Verwaltungsgerichts ist ein Entscheid einer letzten kantonalen Instanz (Art. 86 Abs. 1 lit. d BGG). Ihm liegt ein Beschwerdeverfahren über eine baurechtliche Bewilligung und damit eine öffentlich-rechtliche Angelegenheit zu Grunde. Die Beschwerde in öffentlich-rechtlichen Angelegenheiten nach Art. 82 lit. a BGG steht auch auf dem Gebiet des Raumplanungs- und Baurechts zur Verfügung (vgl. BGE 133 II 249 E. 1.2 S. 251, 400 E. 2.1 S. 404).
1.2 Mit dem angefochtenen Entscheid hiess die Vorinstanz die Beschwerde der (damaligen und jetzigen) Beschwerdeführerin insoweit gut, als dass sich diese gegen die Ausgestaltung und die Berechnung der nutzbaren Fläche des Attikageschosses (drei Doppelgaragen, Carport, Aufzug, offener Velounterstand, überdachter Innenhof) des Bauprojekts am Z._weg .. richtete. Die Vorinstanz kam zum Schluss, das Bauvorhaben überschreite die zulässige Attikageschossfläche und müsse redimensioniert werden; die Beschwerdegegnerin habe diesbezüglich dem Gemeinderat neue Baupläne einzureichen (vgl. angefochtener Entscheid E. 3 und 6).
Da die Vorinstanz die Sache in diesem Punkt zur Neubeurteilung an den Gemeinderat zurückwies, ist noch nicht kantonal letztinstanzlich über alle wesentlichen Aspekte des Bauvorhabens entschieden, das Baubewilligungsverfahren somit noch nicht abgeschlossen. Beim angefochtenen Urteil handelt es sich folglich um einen Zwischenentscheid im Sinne von Art. 93 BGG (vgl. BGE 133 II 409 E. 1.2), wobei in solchen Fällen nach ständiger Praxis auch die Regelung der Kosten- und Entschädigungsfolgen im Rückweisungsurteil als Zwischenentscheid angesehen wird (vgl. BGE 133 V 645 E. 2.1 S. 647 mit Hinweisen). Ein Teilentscheid nach Art. 91 lit. a BGG liegt nicht vor, da die Frage der Ausgestaltung des Attikageschosses Voraussetzung für die Bewilligung des gesamten Bauvorhabens bildet und somit nicht unabhängig von den anderen Begehren beurteilt werden kann.
1.3 Nach Art. 93 Abs. 1 BGG ist die Beschwerde gegen selbstständig eröffnete Vor- und Zwischenentscheide, welche nicht die Zuständigkeit oder den Ausstand betreffen (Art. 92 BGG), zulässig, wenn sie einen nicht wieder gutzumachenden Nachteil bewirken können (lit. a) oder wenn die Gutheissung der Beschwerde sofort einen Endentscheid herbeiführen und damit einen bedeutenden Aufwand an Zeit oder Kosten für ein weitläufiges Beweisverfahren ersparen würde (lit. b). Ist die Beschwerde aufgrund von Art. 93 Abs. 1 BGG nicht zulässig oder wurde von ihr kein Gebrauch gemacht, so sind die betreffenden Vor- und Zwischenentscheide durch Beschwerde gegen den Endentscheid anfechtbar, soweit sie sich auf dessen Inhalt auswirken (Art. 93 Abs. 3 BGG).
1.4 Die beschwerdeführende Person hat darzutun, weshalb sie die Voraussetzungen von Art. 93 Abs. 1 BGG als gegeben erachtet (BGE 133 III 629 E. 2.4 S. 633). Auf eine Beschwerde ist grundsätzlich von vornherein nicht einzutreten, wenn die beschwerdeführende Person die Eintretensfrage schlechthin ignoriert (Urteil 4A_109/2007 vom 30. Juli 2007 E. 2.4).
Vorliegend geht die Beschwerdeführerin in ihrer Beschwerde mit keinem Wort auf Art. 93 BGG ein, begründet mithin nicht, inwiefern der angefochtene Zwischenentscheid einen nicht wieder gutzumachenden Nachteil bewirken könnte bzw. inwieweit mit einer Gutheissung der Beschwerde ein bedeutender Aufwand an Zeit oder Kosten für ein weitläufiges Beweisverfahren erspart werden könnte (vgl. auch den ähnlich gelagerten Fall 1C_295/2007 vom 23. Januar 2008, in: ZBl 109/2008 S. 441). Dies ist auch nicht ersichtlich.
Auf die Beschwerde ist somit nicht einzutreten. Hingegen kann der Zwischenentscheid zusammen mit dem Endentscheid angefochten werden (Art. 93 Abs. 3 BGG).
1.5 Dem Ausgang des bundesgerichtlichen Verfahrens entsprechend sind die Gerichtskosten der Beschwerdeführerin aufzuerlegen (Art. 66 Abs. 1 BGG). Diese hat die private Beschwerdegegnerin angemessen zu entschädigen (Art. 68 Abs. 1 und 2 BGG).
Demnach erkennt das Bundesgericht:
1. Auf die Beschwerde wird nicht eingetreten.
2. Die Gerichtskosten von Fr. 1'500.-- werden der Beschwerdeführerin auferlegt.
3. Die Beschwerdeführerin hat die Beschwerdegegnerin für das bundesgerichtliche Verfahren mit Fr. 1'500.-- zu entschädigen.
4. Dieses Urteil wird den Parteien, dem Gemeinderat Weggis und dem Verwaltungsgericht des Kantons Luzern, Verwaltungsrechtliche Abteilung, schriftlich mitgeteilt.
Lausanne, 20. Oktober 2010
Im Namen der I. öffentlich-rechtlichen Abteilung
des Schweizerischen Bundesgerichts
Das präsidierende Mitglied: Der Gerichtsschreiber:
Aemisegger Stohner