🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.lang.delphi
17 messages
17 total messages Started by Bartłomiej Sosenko Wed, 15 Mar 2017 15:45
Problem z kompilacją x64
#345631
Author: Bartłomiej Sosenko
Date: Wed, 15 Mar 2017 15:45
10 lines
1795 bytes
Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów: 
 DesignEditors, DesignIntf

Komunikat błędu jest następujący:
[dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found

Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"

Macie pomysł co może być nie tak?
Re: Problem z kompilacją x64
#345632
Author: miab
Date: Wed, 15 Mar 2017 16:33
19 lines
1945 bytes
W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
>  DesignEditors, DesignIntf
>
> Komunikat błędu jest następujący:
> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
>
> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
>
> Macie pomysł co może być nie tak?
>

Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny 
być wkompilowywane do programu:
https://forums.embarcadero.com/thread.jspa?threadID=119104
http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d

miab
Re: Problem z kompilacją x64
#345633
Author: Bartłomiej Sosenko
Date: Wed, 15 Mar 2017 20:23
24 lines
2810 bytes
W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
> > Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
> >  DesignEditors, DesignIntf
> >
> > Komunikat błędu jest następujący:
> > [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
> >
> > Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
> > i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
> >
> > Macie pomysł co może być nie tak?
> >
> 
> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny 
> być wkompilowywane do programu:
> https://forums.embarcadero.com/thread.jspa?threadID=119104
> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
> 
> miab

No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/

Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
Re: Problem z kompilacją x64
#345634
Author: J-23
Date: Wed, 15 Mar 2017 21:46
35 lines
3061 bytes
W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
>>>  DesignEditors, DesignIntf
>>>
>>> Komunikat błędu jest następujący:
>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
>>>
>>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
>>>
>>> Macie pomysł co może być nie tak?
>>>
>>
>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
>> być wkompilowywane do programu:
>> https://forums.embarcadero.com/thread.jspa?threadID=119104
>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
>>
>> miab
>
> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
>
> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
>

Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci 
podesłał. Podesłał Ci informacje z której jasno wynika że w swoim 
komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta 
firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz 
mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.

Pozdrawiam
J-23
Re: Problem z kompilacją x64
#345646
Author: miab
Date: Wed, 15 Mar 2017 21:57
51 lines
3322 bytes
W dniu 2017-03-15 o 22:46, J-23 pisze:
> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez
>>>> większego znaczenia) programu który korzysta z modułów:
>>>>  DesignEditors, DesignIntf
>>>>
>>>> Komunikat błędu jest następujący:
>>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
>>>>
>>>> Znalazłem informację że należy dodać parametr do kompilatora:
>>>> -LUDesignIDE
>>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy
>>>> wersji x64 już nie (tak ustawiłem ten parametr również dla Target -
>>>> 64bit - a dokładniej w polu: Value from "All configurations - 64-bit
>>>> Windows Platform"
>>>>
>>>> Macie pomysł co może być nie tak?
>>>>
>>>
>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
>>> być wkompilowywane do programu:
>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
>>>
>>>
>>> miab
>>
>> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5
>> którą muszę przekompilować na x64. Na x32 już mi się udało konwertując
>> użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to
>> będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
>>
>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden
>> moduł/plik *.pas (komponent)
>>
>
> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci
> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim
> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta
> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz
> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero
> tyle.
>

Właśnie. W najprostszym podejściu wypieprzyć z tego *.pas w wersji dla 
x64 wszystko co jest związane z designtimem. Prawie na pewno okaże się 
ze było niepotrzebne.

miab
Re: Problem z kompilacją x64
#345629
Author: Bartłomiej Sosenko
Date: Wed, 15 Mar 2017 22:23
41 lines
4382 bytes
W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23 napisał:
> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
> > W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
> >> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
> >>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
> >>>  DesignEditors, DesignIntf
> >>>
> >>> Komunikat błędu jest następujący:
> >>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
> >>>
> >>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
> >>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
> >>>
> >>> Macie pomysł co może być nie tak?
> >>>
> >>
> >> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
> >> być wkompilowywane do programu:
> >> https://forums.embarcadero.com/thread.jspa?threadID=119104
> >> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
> >>
> >> miab
> >
> > No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
> >
> > Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
> >
> 
> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci 
> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim 
> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta 
> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz 
> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.
> 
> Pozdrawiam
> J-23

Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
Problem polega na tym że nie do końca rozumiem jak to zrealizować. Nie programowałem do tej pory aplikacji x64 i generalnie niedawno dopiero zacząłem pracować z XE 10.1 przesiadając się z D5 - tak że dla mnie to ogromna przepaść i wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie znalazłem za wiele materiałów które by instruowały o różnicach w podejściu do tych dwóch tak odległych technologicznie środowisk.

Komponent który korzysta z opisanej biblioteki to jeden plik *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić. Mam skopiować ten sam plik do osobnego katalogu i ten osobny katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy w lokalizacjach bibliotek?
Re: Problem z kompilacją x64
#345636
Author: J-23
Date: Wed, 15 Mar 2017 23:35
56 lines
4621 bytes
W dniu 15.03.2017 o 23:23, Bartłomiej Sosenko pisze:
> W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23 napisał:
>> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
>>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
>>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
>>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
>>>>>  DesignEditors, DesignIntf
>>>>>
>>>>> Komunikat błędu jest następujący:
>>>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
>>>>>
>>>>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
>>>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
>>>>>
>>>>> Macie pomysł co może być nie tak?
>>>>>
>>>>
>>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
>>>> być wkompilowywane do programu:
>>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
>>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
>>>>
>>>> miab
>>>
>>> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
>>>
>>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
>>>
>>
>> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci
>> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim
>> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta
>> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz
>> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.
>>
>> Pozdrawiam
>> J-23
>
> Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
> Problem polega na tym że nie do końca rozumiem jak to zrealizować. Nie programowałem do tej pory aplikacji x64 i generalnie niedawno dopiero zacząłem pracować z XE 10.1 przesiadając się z D5 - tak że dla mnie to ogromna przepaść i wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie znalazłem za wiele materiałów które by instruowały o różnicach w podejściu do tych dwóch tak odległych technologicznie środowisk.
>
> Komponent który korzysta z opisanej biblioteki to jeden plik *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić. Mam skopiować ten sam plik do osobnego katalogu i ten osobny katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy w lokalizacjach bibliotek?
>

To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64 
bitową architekturę nie może zawierać deklaracji DesignEditors, 
DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem 
ale tak sobie życzy embarcadero)

Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając 
dużo czasu.

Jest to kwestia odpowiedniego rozdzielenia tego kodu.

Pozdrawiam
J-23
Re: Problem z kompilacją x64
#345642
Author: konsul41
Date: Thu, 16 Mar 2017 07:02
11 lines
1591 bytes
> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając
> dużo czasu.
>
> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
>
Kompilacja warunkowa.

---
Ta wiadomość została sprawdzona na obecność wirusów przez oprogramowanie antywirusowe Avast.
https://www.avast.com/antivirus
Re: Problem z kompilacją x64
#345637
Author: Bartłomiej Sosenko
Date: Thu, 16 Mar 2017 09:10
64 lines
5913 bytes
W dniu czwartek, 16 marca 2017 00:35:02 UTC+1 użytkownik J-23 napisał:
> W dniu 15.03.2017 o 23:23, Bartłomiej Sosenko pisze:
> > W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23 napisał:
> >> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
> >>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
> >>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
> >>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
> >>>>>  DesignEditors, DesignIntf
> >>>>>
> >>>>> Komunikat błędu jest następujący:
> >>>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
> >>>>>
> >>>>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
> >>>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
> >>>>>
> >>>>> Macie pomysł co może być nie tak?
> >>>>>
> >>>>
> >>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
> >>>> być wkompilowywane do programu:
> >>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
> >>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
> >>>>
> >>>> miab
> >>>
> >>> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
> >>>
> >>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
> >>>
> >>
> >> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci
> >> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim
> >> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta
> >> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz
> >> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.
> >>
> >> Pozdrawiam
> >> J-23
> >
> > Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
> > Problem polega na tym że nie do końca rozumiem jak to zrealizować. Nie programowałem do tej pory aplikacji x64 i generalnie niedawno dopiero zacząłem pracować z XE 10.1 przesiadając się z D5 - tak że dla mnie to ogromna przepaść i wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie znalazłem za wiele materiałów które by instruowały o różnicach w podejściu do tych dwóch tak odległych technologicznie środowisk.
> >
> > Komponent który korzysta z opisanej biblioteki to jeden plik *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić. Mam skopiować ten sam plik do osobnego katalogu i ten osobny katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy w lokalizacjach bibliotek?
> >
> 
> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64 
> bitową architekturę nie może zawierać deklaracji DesignEditors, 
> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem 
> ale tak sobie życzy embarcadero)
> 
> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając 
> dużo czasu.
> 
> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
> 
> Pozdrawiam
> J-23

Z tego co piszesz wynika że de facto nie mogę przy kompilacji x64 korzystać z modułów  DesignEditors, DesignIntf - co sprowadza się do tego aby je zastąpić inną obsługą potrzebnych funkcji.
Jeśli to zrobię to w sumie w wersji x32 też będzie to działać - więc jeśli nie ma innego wyjścia trzeba będzie głębiej poszperać.

A przy okazji wracając do rozdzielania modułów na x32 i x64 - to czy to jest standardowa czynność przy kompilowaniu aplikacji że muszę mieć kopie plików *.pas z modułami w osobnych folderach dla x32 i x64? Nawet jeśli niczym sie nie różnią? 

Rozumiem że jeśli z jakichś powodów trzeba będzie modyfikować kod dla wersji x64 to jak napisał kolega poniżej można zrobić to za pomocą kompilacji warunkowej?
Re: Problem z kompilacją x64
#345638
Author: Bartłomiej Sosenko
Date: Thu, 16 Mar 2017 09:12
59 lines
5500 bytes
W dniu czwartek, 16 marca 2017 00:35:02 UTC+1 użytkownik J-23 napisał:
> W dniu 15.03.2017 o 23:23, Bartłomiej Sosenko pisze:
> > W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23 napisał:
> >> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
> >>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
> >>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
> >>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
> >>>>>  DesignEditors, DesignIntf
> >>>>>
> >>>>> Komunikat błędu jest następujący:
> >>>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
> >>>>>
> >>>>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
> >>>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
> >>>>>
> >>>>> Macie pomysł co może być nie tak?
> >>>>>
> >>>>
> >>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
> >>>> być wkompilowywane do programu:
> >>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
> >>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
> >>>>
> >>>> miab
> >>>
> >>> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
> >>>
> >>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
> >>>
> >>
> >> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci
> >> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim
> >> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta
> >> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz
> >> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.
> >>
> >> Pozdrawiam
> >> J-23
> >
> > Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
> > Problem polega na tym że nie do końca rozumiem jak to zrealizować. Nie programowałem do tej pory aplikacji x64 i generalnie niedawno dopiero zacząłem pracować z XE 10.1 przesiadając się z D5 - tak że dla mnie to ogromna przepaść i wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie znalazłem za wiele materiałów które by instruowały o różnicach w podejściu do tych dwóch tak odległych technologicznie środowisk.
> >
> > Komponent który korzysta z opisanej biblioteki to jeden plik *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić. Mam skopiować ten sam plik do osobnego katalogu i ten osobny katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy w lokalizacjach bibliotek?
> >
> 
> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64 
> bitową architekturę nie może zawierać deklaracji DesignEditors, 
> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem 
> ale tak sobie życzy embarcadero)
> 
> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając 
> dużo czasu.
> 
> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
> 
> Pozdrawiam
> J-23

I jeszcze jedno pytanko - bo piszesz że tak sobie życzy Embarcadero (jak zrozumiałem z ich opisu ze względów licencyjnych) - czy to znaczy że nie da się tego skompilować w x64? Czy tylko nie powinno się kompilować?
Re: Problem z kompilacją x64
#345635
Author: immo
Date: Thu, 16 Mar 2017 09:29
14 lines
2884 bytes
W dniu czwartek, 16 marca 2017 10:10:22 UTC+1 użytkownik Bartłomiej Sosenko napisał:

> Z tego co piszesz wynika że de facto nie mogę przy kompilacji x64 korzystać z modułów  DesignEditors, DesignIntf - co sprowadza się do tego aby je zastąpić inną obsługą potrzebnych funkcji.
> Jeśli to zrobię to w sumie w wersji x32 też będzie to działać - więc jeśli nie ma innego wyjścia trzeba będzie głębiej poszperać.

Nie o to chodzi. Chodzi o to, żeby w nie mieszać funkcji potrzebnych w designtime z funkcjami runtime. W D5 też można było pisać komponenty w ten sposób - to żadna nowość. Ot nowsze wersje są bardziej restrykcyjne pod tym względem (i w sumie dobrze).
Tylko nie jestem taki pewien, czy rozdzielenie tych dwóch części będzie takie proste jak pisali inni powyżej. Wszystko zależy od tego, jak to jest napisane i czego używa z tych bibliotek Design*.

> A przy okazji wracając do rozdzielania modułów na x32 i x64 - to czy to jest standardowa czynność przy kompilowaniu aplikacji że muszę mieć kopie plików *.pas z modułami w osobnych folderach dla x32 i x64? Nawet jeśli niczym sie nie różnią? 

Z mojej wiedzy nie musisz rozdzielać modułów 32 i 64bit, ale właśnie runtime i designtime. No chyba, że wersje 32 i 64 bit się różnią.

pozdrawiam,
Przemek O.
Re: Problem z kompilacją x64
#345640
Author: Tomek D
Date: Thu, 16 Mar 2017 09:50
93 lines
5437 bytes
W dniu 16.03.2017 o 10:12, Bartłomiej Sosenko pisze:
> W dniu czwartek, 16 marca 2017 00:35:02 UTC+1 użytkownik J-23
> napisał:
>> W dniu 15.03.2017 o 23:23, Bartłomiej Sosenko pisze:
>>> W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23
>>> napisał:
>>>> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
>>>>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab
>>>>> napisał:
>>>>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
>>>>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat
>>>>>>> chyba bez większego znaczenia) programu który korzysta z
>>>>>>> modułów: DesignEditors, DesignIntf
>>>>>>>
>>>>>>> Komunikat błędu jest następujący: [dcc64 Fatal Error]
>>>>>>> E2202 Required package 'DesignIDE' not found
>>>>>>>
>>>>>>> Znalazłem informację że należy dodać parametr do
>>>>>>> kompilatora: -LUDesignIDE i przy kompilacji x32 program
>>>>>>> prawidłowo się kompiluje - ale przy wersji x64 już nie
>>>>>>> (tak ustawiłem ten parametr również dla Target - 64bit -
>>>>>>> a dokładniej w polu: Value from "All configurations -
>>>>>>> 64-bit Windows Platform"
>>>>>>>
>>>>>>> Macie pomysł co może być nie tak?
>>>>>>>
>>>>>>
>>>>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły
>>>>>> nie powinny być wkompilowywane do programu:
>>>>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
>>>>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
>>>>>>
>>>>>>
>>>>>>
miab
>>>>>
>>>>> No ok, problem w tym że mam gotową aplikację (usługę)
>>>>> napisaną w D5 którą muszę przekompilować na x64. Na x32 już
>>>>> mi się udało konwertując użyte komponenty. Jeśli tych modułów
>>>>> nie uda mi się zmusić do pracy to będę musiał przepisać cały
>>>>> komponent co mi się bardzo nie uśmiecha :/
>>>>>
>>>>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto
>>>>> to jeden moduł/plik *.pas (komponent)
>>>>>
>>>>
>>>> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab
>>>> ci podesłał. Podesłał Ci informacje z której jasno wynika że w
>>>> swoim komponencie wykorzystujesz moduły które Embarcadero czy
>>>> jak tam teraz ta firma się zwie oczekuję były oddzielnie...
>>>> tyle... podsumowując chcesz mieć pakiety pod x64 musisz to
>>>> zrobić zgodnie z wytycznymi Embarcadero tyle.
>>>>
>>>> Pozdrawiam J-23
>>>
>>> Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
>>> Problem polega na tym że nie do końca rozumiem jak to
>>> zrealizować. Nie programowałem do tej pory aplikacji x64 i
>>> generalnie niedawno dopiero zacząłem pracować z XE 10.1
>>> przesiadając się z D5 - tak że dla mnie to ogromna przepaść i
>>> wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie
>>> znalazłem za wiele materiałów które by instruowały o różnicach w
>>> podejściu do tych dwóch tak odległych technologicznie środowisk.
>>>
>>> Komponent który korzysta z opisanej biblioteki to jeden plik
>>> *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić.
>>> Mam skopiować ten sam plik do osobnego katalogu i ten osobny
>>> katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy
>>> w lokalizacjach bibliotek?
>>>
>>
>> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64
>>  bitową architekturę nie może zawierać deklaracji DesignEditors,
>> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie
>> wiem ale tak sobie życzy embarcadero)
>>
>> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci
>> zając dużo czasu.
>>
>> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
>>
>> Pozdrawiam J-23
>
> I jeszcze jedno pytanko - bo piszesz że tak sobie życzy Embarcadero
> (jak zrozumiałem z ich opisu ze względów licencyjnych) - czy to
> znaczy że nie da się tego skompilować w x64? Czy tylko nie powinno
> się kompilować?
>

Moduły Design.... są interfejsem do IDE Delphi. IDE jest tylko 32-bit. 
Moduły Design.... dla 64bit nie mają sensu i nie istnieją.

Tomek D.
Re: Problem z kompilacją x64
#345641
Author: mmm
Date: Thu, 16 Mar 2017 10:54
21 lines
2047 bytes
>>
>> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając
>> dużo czasu.
>>
>> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
>>
>> Pozdrawiam
>> J-23
>
> I jeszcze jedno pytanko - bo piszesz że tak sobie życzy Embarcadero (jak zrozumiałem z ich opisu ze względów licencyjnych) - czy to znaczy że nie da się tego skompilować w x64? Czy tylko nie powinno się kompilować?
>

Moim skromnym zdaniem wszystko już zostało zawarte w pierwszej 
odpowiedzi. Jezeli  jakiegoś pakietu nie być, to musisz go wywalić z 
projektu , dodaj komentarz linii , skompiluj i zobacz gdzie sie wysypie, 
pewnie na jakims edytorze własicwości albo czymś podobnym co rozszerza 
IDE, musisz tylko to poprawić to powinno zajać jakieś 5 minut

Jak byś nadal miał problem to udostępnij kod albo zdalny pulpit ;)

m
Re: Problem z kompilacją x64
#345639
Author: J-23
Date: Thu, 16 Mar 2017 13:35
79 lines
6330 bytes
W dniu 16.03.2017 o 10:10, Bartłomiej Sosenko pisze:
> W dniu czwartek, 16 marca 2017 00:35:02 UTC+1 użytkownik J-23 napisał:
>> W dniu 15.03.2017 o 23:23, Bartłomiej Sosenko pisze:
>>> W dniu środa, 15 marca 2017 22:46:20 UTC+1 użytkownik J-23 napisał:
>>>> W dniu 15.03.2017 o 21:23, Bartłomiej Sosenko pisze:
>>>>> W dniu środa, 15 marca 2017 17:35:10 UTC+1 użytkownik miab napisał:
>>>>>> W dniu 2017-03-15 o 16:45, Bartłomiej Sosenko pisze:
>>>>>>> Mam problem z kompilacją w Delphi XE 10.1 (choć to akurat chyba bez większego znaczenia) programu który korzysta z modułów:
>>>>>>>  DesignEditors, DesignIntf
>>>>>>>
>>>>>>> Komunikat błędu jest następujący:
>>>>>>> [dcc64 Fatal Error] E2202 Required package 'DesignIDE' not found
>>>>>>>
>>>>>>> Znalazłem informację że należy dodać parametr do kompilatora: -LUDesignIDE
>>>>>>> i przy kompilacji x32 program prawidłowo się kompiluje - ale przy wersji x64 już nie (tak ustawiłem ten parametr również dla Target - 64bit - a dokładniej w polu: Value from "All configurations - 64-bit Windows Platform"
>>>>>>>
>>>>>>> Macie pomysł co może być nie tak?
>>>>>>>
>>>>>>
>>>>>> Wg. wykładni Borland, a już szczególnie potomnych te moduły nie powinny
>>>>>> być wkompilowywane do programu:
>>>>>> https://forums.embarcadero.com/thread.jspa?threadID=119104
>>>>>> http://stackoverflow.com/questions/27699662/how-to-build-delphi-projects-for-win64-when-units-inside-it-uses-designeditors-d
>>>>>>
>>>>>> miab
>>>>>
>>>>> No ok, problem w tym że mam gotową aplikację (usługę) napisaną w D5 którą muszę przekompilować na x64. Na x32 już mi się udało konwertując użyte komponenty. Jeśli tych modułów nie uda mi się zmusić do pracy to będę musiał przepisać cały komponent co mi się bardzo nie uśmiecha :/
>>>>>
>>>>> Pytanie więc czy jest możliwa rekompilacja na x64 - de facto to jeden moduł/plik *.pas (komponent)
>>>>>
>>>>
>>>> Twoje pytanie pokazuje że nie przeczytałeś tego co kolega miab ci
>>>> podesłał. Podesłał Ci informacje z której jasno wynika że w swoim
>>>> komponencie wykorzystujesz moduły które Embarcadero czy jak tam teraz ta
>>>> firma się zwie oczekuję były oddzielnie... tyle... podsumowując chcesz
>>>> mieć pakiety pod x64 musisz to zrobić zgodnie z wytycznymi Embarcadero tyle.
>>>>
>>>> Pozdrawiam
>>>> J-23
>>>
>>> Zapewniam cię że przeczytałem cały wątek z linku jaki podał miab
>>> Problem polega na tym że nie do końca rozumiem jak to zrealizować. Nie programowałem do tej pory aplikacji x64 i generalnie niedawno dopiero zacząłem pracować z XE 10.1 przesiadając się z D5 - tak że dla mnie to ogromna przepaść i wielu rzeczy muszę się nauczyć niemal od zera. Niestety nie znalazłem za wiele materiałów które by instruowały o różnicach w podejściu do tych dwóch tak odległych technologicznie środowisk.
>>>
>>> Komponent który korzysta z opisanej biblioteki to jeden plik *.pas - nie rozumiem co mam z nim zrobić i od czego go oddzielić. Mam skopiować ten sam plik do osobnego katalogu i ten osobny katalog wskazać jako katalog dla kompilacji x64? W projekcie? Czy w lokalizacjach bibliotek?
>>>
>>
>> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64
>> bitową architekturę nie może zawierać deklaracji DesignEditors,
>> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem
>> ale tak sobie życzy embarcadero)
>>
>> Wbrew pozorom nie jest to nic trudnego i ta zmiana nie powinna Ci zając
>> dużo czasu.
>>
>> Jest to kwestia odpowiedniego rozdzielenia tego kodu.
>>
>> Pozdrawiam
>> J-23
>
> Z tego co piszesz wynika że de facto nie mogę przy kompilacji x64 korzystać z modułów  DesignEditors, DesignIntf - co sprowadza się do tego aby je zastąpić inną obsługą potrzebnych funkcji.
> Jeśli to zrobię to w sumie w wersji x32 też będzie to działać - więc jeśli nie ma innego wyjścia trzeba będzie głębiej poszperać.
>
> A przy okazji wracając do rozdzielania modułów na x32 i x64 - to czy to jest standardowa czynność przy kompilowaniu aplikacji że muszę mieć kopie plików *.pas z modułami w osobnych folderach dla x32 i x64? Nawet jeśli niczym sie nie różnią?
>
> Rozumiem że jeśli z jakichś powodów trzeba będzie modyfikować kod dla wersji x64 to jak napisał kolega poniżej można zrobić to za pomocą kompilacji warunkowej?
>
Nie pamiętam dokładnie co do kompilacji warunkowej. Nie mam też jak sam 
sprawdzić po za internetem ale wydaje mi się że powinny być flagi 
kompilatora które umożliwiają sprawdzić architekturę.

Po za tym tak jak pisał Przemek - bo może ja faktycznie nie do końca się 
wyraziłem - cytuje "Z mojej wiedzy nie musisz rozdzielać modułów 32 i 
64bit, ale właśnie runtime i designtime. No chyba, że wersje 32 i 64 bit 
się różnią."

Ale to było napisane nawet na forum Embarcadero w linku który podesłał miab

Pozdrawiam
J-23
Re: Problem z kompilacją x64
#345644
Author: Roman Tyczka
Date: Fri, 17 Mar 2017 12:33
15 lines
1752 bytes
On Thu, 16 Mar 2017 00:35:00 +0100, J-23 wrote:

> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64 
> bitową architekturę nie może zawierać deklaracji DesignEditors, 
> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem 
> ale tak sobie życzy embarcadero)

Głupie? Wiesz? Ani Ty nic nie wiesz, ani nie jest to głupie. Moduły są 32
bitowe bo ...tu Cię zaskoczę... samo IDE Delphi jest 32 bitowe. A jeśli nie
wiesz co znaczy słowo design w tych modułach to doczytaj. A potem oceniaj,
że coś jest głupie lub nie.

-- 
pozdrawiam
Roman Tyczka
Re: Problem z kompilacją x64
#345645
Author: J-23
Date: Fri, 17 Mar 2017 15:14
18 lines
2044 bytes
W dniu 17.03.2017 o 13:33, Roman Tyczka pisze:
> On Thu, 16 Mar 2017 00:35:00 +0100, J-23 wrote:
>
>> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64
>> bitową architekturę nie może zawierać deklaracji DesignEditors,
>> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem
>> ale tak sobie życzy embarcadero)
>
> Głupie? Wiesz? Ani Ty nic nie wiesz, ani nie jest to głupie. Moduły są 32
> bitowe bo ...tu Cię zaskoczę... samo IDE Delphi jest 32 bitowe. A jeśli nie
> wiesz co znaczy słowo design w tych modułach to doczytaj. A potem oceniaj,
> że coś jest głupie lub nie.
>
I to jest właśnie głupie że jest tylko 32 bitowe, ale było już mówione 
wcześniej... także odkrywco koła pogratulować inteligencji :)

Pozdrawiam
J-23
Re: Problem z kompilacją x64
#345643
Author: Roman Tyczka
Date: Fri, 17 Mar 2017 16:14
23 lines
2082 bytes
On Fri, 17 Mar 2017 16:14:12 +0100, J-23 wrote:

>>> To z tego jednego musisz zrobić minimum 2; ten który ma być pod 64
>>> bitową architekturę nie może zawierać deklaracji DesignEditors,
>>> DesignIntf bo są to moduły które mogą być tylko 32 bitowe (głupie wiem
>>> ale tak sobie życzy embarcadero)
>>
>> Głupie? Wiesz? Ani Ty nic nie wiesz, ani nie jest to głupie. Moduły są 32
>> bitowe bo ...tu Cię zaskoczę... samo IDE Delphi jest 32 bitowe. A jeśli nie
>> wiesz co znaczy słowo design w tych modułach to doczytaj. A potem oceniaj,
>> że coś jest głupie lub nie.
>>
> I to jest właśnie głupie że jest tylko 32 bitowe, ale było już mówione 
> wcześniej... także odkrywco koła pogratulować inteligencji :)
> 
> Pozdrawiam
> J-23

Głupie to są Twoje zarzuty, wynikające z ignorancji. EOT.

-- 
pozdrawiam
Roman Tyczka
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads