MSEide unter FreeBSD 32bit
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
MSEide unter FreeBSD 32bit
Hi,
wegen der Infos in einem anderen Thread würde ich ja gerne mal einen Blick auf MSEide werfen. Nun fahre ich hier FreeBSD11 32bit (der alte Laptop kommt mit 64bit nicht klar). Die Ide-Binary für FreeBSD ist aber für 64bit gemacht. Lässt sich das trotzdem irgendwie auf meinem System ausführen?
wegen der Infos in einem anderen Thread würde ich ja gerne mal einen Blick auf MSEide werfen. Nun fahre ich hier FreeBSD11 32bit (der alte Laptop kommt mit 64bit nicht klar). Die Ide-Binary für FreeBSD ist aber für 64bit gemacht. Lässt sich das trotzdem irgendwie auf meinem System ausführen?
Ich mag Pascal...
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
Ich habe kein 32-Bit FreeBSD und kann darum keine Binaries liefern. Fred hat die mselibc.pas unit entsprechend angepasst und sagt MSEide laufe unter 32 Bit FreeBSD.
Die Kompilierung geht mit
die angepasste mselibc.pas ist irgendwo hier:
https://github.com/fredvs/polYdev
am besten fragst du Fred, seine Email-Adresse ist hier angegeben:
https://github.com/fredvs
Die Kompilierung geht mit
Code: Alles auswählen
fpc -Fulib/common/* -Fulib/common/kernel/linux apps/ide/mseide.pas
die angepasste mselibc.pas ist irgendwo hier:
https://github.com/fredvs/polYdev
am besten fragst du Fred, seine Email-Adresse ist hier angegeben:
https://github.com/fredvs
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
Habe noch was gefunden:
Freds modifiziertes mselibc.pas ist im Anhang.
Hello Martin.
I have added in /polYdev/mse_multisys/ ==> modified mselibc.pas.
This to make MSEgui demo compilable on FreeBSD 32 bit.
This was added at line 1003:
{$ifdef freebsd}
{$ifndef cpu64}
ino_t = __ino_t;
gid_t = __gid_t;
mode_t = __mode_t;
uid_t = __uid_t;
off_t = __off_t;
blkside_t = __blkside_t;
blkcnt_t = __blkcnt_t;
{$endif}
{$endif}
With this change, MSEide (and all other MSEgui applications) can be compiled-running for FreeBSD 64/32.
Huh, line 993: {$ifdef linux} could be changed in place of adding the above code.
But I do not know the syntax for {$if (def linux) or (def freebsd and def cpu32)}. ;-(
If you have plan to update MSEgui-Git to make MSEgui compilable-running on FreeBSD 32, of course I prefer the official mselibc.pas.
In attachment, working modified mselibc.pas.
PS: There is problem with fpc 3.0.0-FreeBSD-32bit and -XX parameter (smart link).
Tested on native FreeBSD 32 bit too and the problem is the same: wrong ELF indexed.
But without -XX, all fpc FreeBSD 32 applications run like charms.
Fre;D
Freds modifiziertes mselibc.pas ist im Anhang.
- Dateianhänge
-
- mselibc.pas
- (97.08 KiB) 79-mal heruntergeladen
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
... ich habs mit 32bit nicht hinbekommen. Liegt wohl an meinen rudimentären Kenntnissen. Allerdings werde ich mir in wenigen Tagen einen 64bit Laptop kaufen. Dann probier ich es nochmal.
Ich mag Pascal...
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
Welche Probleme?
Mache ein Verzeichnis für MSEide+MSEgui in deinem home Verzeichnis, z.B. "msegui".
Entpacke mseide_msegui_src_4_4.zip von https://sourceforge.net/projects/mseide ... segui/4.4/ in ~/msegui.
Ersetze ~/msegui/lib/common/kernel/mselibc.pas durch mselibc.pas im vorletzten Beitrag.
Öffne ein Terminal in ~/msegui/, führe das Kommando
aus. Bitte berichte allfällige Fehler, das werde wir schon hinkriegen.
Mache ein Verzeichnis für MSEide+MSEgui in deinem home Verzeichnis, z.B. "msegui".
Entpacke mseide_msegui_src_4_4.zip von https://sourceforge.net/projects/mseide ... segui/4.4/ in ~/msegui.
Ersetze ~/msegui/lib/common/kernel/mselibc.pas durch mselibc.pas im vorletzten Beitrag.
Öffne ein Terminal in ~/msegui/, führe das Kommando
Code: Alles auswählen
fpc -Fulib/common/* -Fulib/common/kernel/linux apps/ide/mseide.pas
aus. Bitte berichte allfällige Fehler, das werde wir schon hinkriegen.
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
So eine Anleitung habe ich gebraucht. Sobald ich Zeit hab, probiere ich es
Ich mag Pascal...
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
Hi,
ich hab das jetzt mal deine Anweisungen blind befolgt (ich habe so eine grobe Ahnung, was da passiert ).
Bis zum Kompilieren lief alles gut, aber der fpc hat sich dann beschwert:
Was da los ist, weiß ich nicht, FreeBSD kennt eigentlich rmdir...
ich hab das jetzt mal deine Anweisungen blind befolgt (ich habe so eine grobe Ahnung, was da passiert ).
Bis zum Kompilieren lief alles gut, aber der fpc hat sich dann beschwert:
msesysintf.pas(982,13) Error: Identifier not found "rmdir"
msesysintf.pas(1395) Fatal: There were 1 errors compiling module, stopping
Fatal: Compilation aborted
Error: /usr/local/bin/ppc386 returned an error exitcode
Was da los ist, weiß ich nicht, FreeBSD kennt eigentlich rmdir...
Ich mag Pascal...
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
In der mselibc.pas von Fred fehlt rmdir() tatsächlich. Ich werde eine eigene FreeBSD Version für 32 bit machen und hier posten, oder du kannst sie dann auch vom git Repo laden. Hast du git schon installiert?
EDIT:
Die aktualisierte mselibc.pas ist angehängt.
Praktischer ist die Arbeit mit git, vor allem wenn weitere Änderungen notwendig sein sollten.
Mache ein neues Verzeichnis für MSEide+MSEgui in deinem home Verzeichnis, z.B. "msegui_git".
Öffne ein Terminal in ~/msegui_git/, führe das Kommando
aus, bitte den abschliessenden "." nicht vergessen, sonst wird ein weiteres Unterverzeichnis erstellt.
Danach
Wenn es fehlerfrei kompiliert kannst du MSEide mit
starten. Es kann sein, dass es kracht, dann müssen wir die Feldgrössen der libc Strukturen für 32 Bit anpassen.
Den neuesten MSEide+MSEgui Stand abholen geschieht durch
EDIT:
Die aktualisierte mselibc.pas ist angehängt.
Praktischer ist die Arbeit mit git, vor allem wenn weitere Änderungen notwendig sein sollten.
Mache ein neues Verzeichnis für MSEide+MSEgui in deinem home Verzeichnis, z.B. "msegui_git".
Öffne ein Terminal in ~/msegui_git/, führe das Kommando
Code: Alles auswählen
git clone https://gitlab.com/mseide-msegui/mseide-msegui.git .
aus, bitte den abschliessenden "." nicht vergessen, sonst wird ein weiteres Unterverzeichnis erstellt.
Danach
Code: Alles auswählen
fpc -Fulib/common/* -Fulib/common/kernel/linux apps/ide/mseide.pas
Wenn es fehlerfrei kompiliert kannst du MSEide mit
Code: Alles auswählen
apps/ide/mseide
starten. Es kann sein, dass es kracht, dann müssen wir die Feldgrössen der libc Strukturen für 32 Bit anpassen.
Den neuesten MSEide+MSEgui Stand abholen geschieht durch
Code: Alles auswählen
git pull
- Dateianhänge
-
- mselibc.pas
- (99.13 KiB) 76-mal heruntergeladen
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
Hi,
Git ist bei FreeBSD standardmäßig mit drauf und ich hatte mich damit auch schon ein wenig beschäftigt. Von daher hat das Klonen des Repository problemlos geklappt. Das Kompilieren lief auch eine Weile gut, aber dann gab es doch einen Crash:
Git ist bei FreeBSD standardmäßig mit drauf und ich hatte mich damit auch schon ein wenig beschäftigt. Von daher hat das Klonen des Repository problemlos geklappt. Das Kompilieren lief auch eine Weile gut, aber dann gab es doch einen Crash:
mmysqlconn.inc(53,7) Fatal: Can't find unit mysql40dyn used by mmysql40conn
Fatal: Compilation aborted
Error: /usr/local/bin/ppc386 returned an error exitcode
Ich mag Pascal...
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
Bei mir ist die Datei in
Bitte kontrolliere deine Free Pascal Installation. Welche FPC Version benutzt du?
Code: Alles auswählen
/usr/lib/fpc/3.0.2/units/i386-linux/mysql/mysql40dyn.ppu
Bitte kontrolliere deine Free Pascal Installation. Welche FPC Version benutzt du?
- photor
- Beiträge: 444
- Registriert: Mo 24. Jan 2011, 21:38
- OS, Lazarus, FPC: Arch Linux: L 2.2.6 FPC 3.2.2 (Gtk2)
- CPU-Target: 64Bit
Re: MSEide unter FreeBSD 32bit
Marsmännchen hat geschrieben:Git ist bei FreeBSD standardmäßig mit drauf
Hallo Marsmännchen,
bist Du da sicher? Ich habe Git aus den Ports installieren müssen. Was im Basis-System dabei ist: svn-lite, so dass man SVN nicht nachinstallieren muss, wenn es nur um's updaten des Systems und der Ports geht.
(Wenn die Info out-dated ist, dann kläre mich bitte auf )
Ciao,
Photor
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
Hallo Photor,
also bei meinem FreeBSD 11.0 wollte ich git per pkg nachinstallieren, worauf mein System mir sagte, dass dies nicht nötig sei, weil die vorhandene Version schon up to date wäre. Daher gehe ich davon aus, dass sich git ohne mein Zutun auf den Rechner geschlichen hat
also bei meinem FreeBSD 11.0 wollte ich git per pkg nachinstallieren, worauf mein System mir sagte, dass dies nicht nötig sei, weil die vorhandene Version schon up to date wäre. Daher gehe ich davon aus, dass sich git ohne mein Zutun auf den Rechner geschlichen hat
Ich mag Pascal...
-
- Beiträge: 294
- Registriert: So 4. Mai 2014, 21:32
- OS, Lazarus, FPC: Windows 10 64bit, Lazarus 2.0.10
- CPU-Target: 64bit
- Wohnort: Oranienburg
Re: MSEide unter FreeBSD 32bit
Hallo mse,
ich habe fpc 3.0.0. Es ist bei mir unter /usr/local/lib/fpc/3.0.0/ installiert und da gibt es zwar die Ordner .../units/i386-freebsd/ aber dann keinen Unterordner mysql.
Die mysql40dyn.ppu konnte ich mit folgendem Befehl nicht finden: sudo find / -name "mysql40dyn.ppu"
Allerdings hat sich das System auch nach einer Weile verweigert: ....PfadZuMeinemHome/.gvfs: Operation not permitted
Eine zweite Suche, diesmal mit Joker, ergab folgendes: /usr/home/jweiss/fpc-3.0.0/packages/mysql/src/mysql40dyn.pp
Hmmm.... ich bin da nicht der Meister, aber ich dachte, Packages installiert man mit Lazarus
ich habe fpc 3.0.0. Es ist bei mir unter /usr/local/lib/fpc/3.0.0/ installiert und da gibt es zwar die Ordner .../units/i386-freebsd/ aber dann keinen Unterordner mysql.
Die mysql40dyn.ppu konnte ich mit folgendem Befehl nicht finden: sudo find / -name "mysql40dyn.ppu"
Allerdings hat sich das System auch nach einer Weile verweigert: ....PfadZuMeinemHome/.gvfs: Operation not permitted
Eine zweite Suche, diesmal mit Joker, ergab folgendes: /usr/home/jweiss/fpc-3.0.0/packages/mysql/src/mysql40dyn.pp
Hmmm.... ich bin da nicht der Meister, aber ich dachte, Packages installiert man mit Lazarus
Ich mag Pascal...
-
- Beiträge: 2013
- Registriert: Do 16. Okt 2008, 10:22
- OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
- CPU-Target: x86,x64,ARM
Re: MSEide unter FreeBSD 32bit
Marsmännchen hat geschrieben:Hmmm.... ich bin da nicht der Meister, aber ich dachte, Packages installiert man mit Lazarus
FPC-Teile vermutlich nicht. Ich weiss nicht wie das auf FreeBSD geregelt ist, Marco kann sicher Auskunft geben.
Vielleicht empfiehlt es sich eine eine normale vollständige FPC 3.0.2 Installation vorzunehmen.
fpc-3.0.2.i386-freebsd11.tar von
https://sourceforge.net/projects/freepa ... BSD/3.0.2/
herunterladen und entpacken, cd fpc-3.0.2.i386-freebsd und dann
Code: Alles auswählen
sudo ./install.sh
lib/fpc/3.0.2/units/i386-freebsd/mysql ist darin vorhanden.