Domanda

Recentemente ho installato Zeos 6.6 stabile su BDS2006 sia per le personalità Delphi che C++.

Per fare ciò, e poiché Zeos è scritto in Delphi, ho controllato il "Genera tutti i file C++ Builder" durante la creazione dei pacchetti.

Il problema che ho riscontrato è che, in qualche modo, non tutti i .DCU necessari sono stati generati durante la costruzione dei diversi pacchetti.Alla fine ho risolto il problema costruendo prima solo per Delphi (che ha funzionato perfettamente) e poi ricostruendo sia per Delphi che per C++.

Ora, non sono sicuro che si tratti di un bug (non ho trovato nulla di simile in Centrale di qualità o Google) oppure influisce solo su BDS2006 o anche su altri IDE.Quindi la domanda è: qualcuno può dirmi cosa potrebbe causare il compilatore non per creare tutti i file .DCU quando è selezionato "Genera tutti i file C++ Builder", ma farlo quando no?

Grazie in anticipo e cordiali saluti

È stato utile?

Soluzione

Questo è un estratto di un articolo che ho scritto su Forum Zeos riguardo a come ho risolto questo problema.Spero che aiuti qualcun altro.

  • NOTA:questo può applicarsi o meno a BDS2005, RAD2007 e altre versioni IDE.Non posso testarlo perché non ne ho installato nessuno.

  • DISCLAIMER:questi passaggi potrebbero non essere i più accurati o efficienti.Non esitate a commentare qualsiasi errore o problema che potete trovare e aggiornerò il post.

  • ESCLUSIONE DI RESPONSABILITÀ2:questi passaggi implicano la manomissione del registro a un certo punto.Ha funzionato nel mio sistema ma potrebbe non funzionare nel tuo.Fallo a tuo rischio e pericolo.

Con i seguenti passaggi sono riuscito a installare Zeos sia per le personalità Delphi che C++:

  1. Elimina eventuali installazioni precedenti di Zeos.Ciò include qualsiasi Zeos .BPL, .DCU e .LIB che puoi trovare.
  2. Estrai Zeos nella directory della tua elezione.
  3. Apri BDS2006, seleziona il pacchetto per Delphi10 e compila tutti i pacchetti.In questo modo avremo tutti i .DCU.Per qualche motivo non tutti vengono creati correttamente nel passaggio 6 (vedi sotto).
  4. Chiudi BDS2006.È molto importante farlo prima del passaggio 5.
  5. Eliminare le chiavi di registro come indicato in I pacchetti Delphi non vengono visualizzati in C++
  6. Apri BDS2006.Aprire nuovamente il gruppo di pacchetti per Delphi10.Per tutti i pacchetti vai su Opzioni->Linker e seleziona "Genera tutti i file C++ Builder".Compilarli tutti di nuovo.Se si lamenta di un {$ENDIF;} semplicemente cancellalo.Se quando si compila componente.bpl o componentDesign.bpl, il compilatore si lamenta di alcuni .dcu, dovrebbe essere risolto aggiungendo la directory build (in cui tutti i pacchetti vengono integrati) nel percorso di ricerca del pacchetto.
  7. Installare componenteDesign.bpl
  8. Aggiungi i percorsi necessari a BDS in Tools-Option, sia per le personalità C++ che Delphi:
    • packages\delphi10 // alcune intestazioni qui
    • packages\delphi10\build // alcuni file .dcu
    • origine\componente
    • origine\core
    • origine\dbc
    • src\parsesql
    • src\plain

Solo per informazioni, le chiavi necessarie nel passaggio 5 sono le seguenti:

  • Chiave:HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Pacchetti conosciuti.Cerca la voce con [percorso]\MyPackage.bpl e rimuovila.
  • Chiave:HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Package Cache.Cerca la chiave denominata MyPackage.bpl e rimuovi l'intera sottochiave.
  • Chiave:HKEY_CURRENT_USER\Software\Borland\BDS\5.0\Palette\Cache.Cerca la chiave denominata MyPackage.bpl e rimuovi l'intera sottochiave.C'è un bug nel BDS che influisce sui pacchetti quando vengono compilati.Vedi il blog citato per maggiori informazioni.

Ora dovresti avere Zeos installato e funzionante sia per Delphi che per C++.

NOTA:durante la compilazione in C++ potrebbe darti un errore perché non riesce a trovare alcuni file .h.Di solito questo viene risolto modificando #include in .hpp.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top