[PB4.4b2 x64] Kann keine .so-dateien erstellen

In dieser Linux-Ecke dürfen nur Themen rund um Linux geschrieben werden.
Beiträge, die plattformübergreifend sind, gehören ins 'Allgemein'-Forum.
OmegaSoft
Beiträge: 27
Registriert: 17.02.2006 12:52
Wohnort: 32584 Löhne

[PB4.4b2 x64] Kann keine .so-dateien erstellen

Beitrag von OmegaSoft »

Hallo Leute,
Habe gestern versucht, mit Purebasic 4.4b2 64-Bit, eine SO-Datei zuerstellen.Hat aber nicht wirklich geklappt :cry: , das merkwürdige ist allerdings das der selbe Code als Executabledatei funktioniert :? . Die Konsole hat folgende Message herraus gegeben.

Loading external modules...
Starting compilation...
4 lines processed.
Creating the executable.
Error: Linker
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: purebasic.o: relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC
purebasic.o: could not read symbols: Bad value
collect2: ld returned 1 exit status


Jetzt meine Frage, ist irgendeine Form von Bug oder mache ich irgendetwas mit folgendem Code falsch.

Code: Alles auswählen

ProcedureDLL
 MessageRequester("Hallo", "Hallo Welt")
EndProcedure
Mfg Omegasoft

PS: Habe folgendes System
OpenSuse 11.1 64-Bit
PB 4.4b2 64-Bit
Benutzeravatar
Vermilion
Beiträge: 1846
Registriert: 08.04.2006 16:00
Computerausstattung: Apple iMac (2010) & HP Notebook
Wohnort: Heidekreis

Re: [PB4.4b2 x64] Kann keine .so-dateien erstellen

Beitrag von Vermilion »

Also wenn dein tatsächlicher Quelltext dem hier geschrieben gleicht, dann ist das Problem offensichtlich. Hast du schon mal darüber nachgedacht, wie du deine Prozedur ansprechen willst? ;) Dafür brauchst du doch einen Namen. Mach mal aus der Zeile

Code: Alles auswählen

ProcedureDLL

Code: Alles auswählen

ProcedureDLL MyProcedure()
(Oder einen beliebigen Namen deiner Wahl ersetzen).
Bild

Immer die neueste PureBasic Version. Auf allem Betriebssystemen. Ich bin ein OS-Nomad!
Antworten