sonnenblen.de - Das unabhängige Sun User Forum
Software => Programmieren, Kompilieren => Thema gestartet von: Oxygenic am 14. Februar 2005, 02:52:49
-
Lassen sich die Ogg-/Vorbis-Libs eigentlich für Solaris compilieren? Ich habe es mit den Source-Packages versucht, stoße dabei aber auf ein Problem:
/bin/bash ../libtool --mode=link gcc -O20 -ffast-math -fsigned-char -mv8 -g -O2 -o libogg.la -rpath /usr/local/lib -no-undefined -version-info 5:0:5 framing.lo bitwise.lo
rm -fr .libs/libogg.la .libs/libogg.* .libs/libogg.*
gcc -G -z defs -h libogg.so.0 -o .libs/libogg.so.0.5.0 framing.lo bitwise.lo -lc
Undefined first referenced
symbol in file
main /usr/local/lib/gcc-lib/sparc-sun-solaris2.9/3.3.2/crt1.o
ld: fatal: Symbol referencing errors. No output written to .libs/libogg.so.0.5.0
Irgend wie ist es doch recht widersinning, das beim Linken einer Library dasSymbol "main" gesucht wird...hat hier evtl. jemand eine Idee?
-
Es geht auf jeden Fall, hab ich alles schon kompiliert gekriegt.
Den Fehler mit dem main Symbol hat ich das letze Mal, als ich Gnome kompiliert habe. Allerdings war das mit SunC Pro Compiler. Der wollte dann eine sunmath Library eingebunden haben. Zum GCC gibts sicher keine sunmath. Ich würde das ffast-math rausnehmen. Steht auch im Manual zum GCC dazu, dass ffast-math Standards verletzten kann.
Mfg. Erisch
-
Es geht auf jeden Fall, hab ich alles schon kompiliert gekriegt.
ganz schoener egoist, unser erisch :D
bekommt fast alles kompiliert, ist firm mit dem bauen von solaris paketen, und was haben wir anwender davon? -nichts!
>:(
gibt es den keine moeglichkeit, dass du uns deine gebaute software als pakete mal zugaenglich machen koenntest?
gibt auch ein halbes bier belohnung ;D
gruss
cutoff
-
Na das wäre doch mal eine Sache! Ich würde sogar das andere halbe Bier drauflegen ;-)
-
Wäre kein Problem nur gibt es ein paar hinderliche Gründe:
1.) Meine Pakete würden bei anderen Systemen wahrscheinlich nicht passen. Ich hatte mein Solaris 10 bis auf das nötigste gerupft und dann fast alles was an GNU Sachen da drauf war selbst kompiliert. Deswegen würden die Pakete auf einem System mit Blastwave/Sunfreeware/... Paketen wahrscheinlich nicht gehen.
2.) Ich hab unter Solaris 10 mit der Trial Version des Sun Studio 9 das Ganze Zeugs kompiliert um schnellstmögliche Binaries zu erhalten. Nur weiß ich nicht ob ich solche Binaries einfach öffentlich anbieten darf. Wenn mich einer fragt schick ich ihm ein Paket zu aber so einfach auf nen Server stellen ... ???
3.) größtes Problem: Ich hab keine Sol10 Pakete mehr. Als ich meine Ultra verkauft hab, sind die Pakete mit flöten gegangen. War für mich auch kein Problem, weil ich ne Tabelle hab, wo ich eingetragen hab, wie man die einzelnen Programme kompiliert. Und da hab ich zum Beispiel bei libogg keine Eintragung, weil es ohne Modifikation durchlief
4.) meine einzige Sun im Moment ist meine SS5 die als 24/7 on Rechner als Router funktioniert. Und da ist weder Compiler noch Libraries/Header drauf. Wenn ich das Teil neu aufsetze hab ich ne Weile kein Internet. Muss ich erst 2. Netzwerkkarte für meinen OpenBSD Server organisieren und den als Router benutzen.
Noch ma allgemien zum Kompilieren:
Ich hatte früher auch ständig Probleme mit Programmen die nicht richtig durchliefen. Mit der Zeit hab ich aber meine Systemumgebung so angepasst, dass ich nachher mit genau den selben Programmen überhaupt keine Probleme mehr hatte.
Wichtig ist, dass man die Funktion von CFLAGS, CPPFLAGS, CXXFLAGS und LDFLAGS verstanden hat. Ich hatte mir damals ein Bash-Profil gemacht, was ich zum kompilieren benutzte (is auch weg krieg ich aber auch so wieder zusammen).
Ich hatte eh mal vor, ein Unix Compile Tutorial zu schreiben, nur hab ich im Moment recht wenig Zeit.
Mfg. Erisch
-
Unter http://mail.gnome.org/archives/garnome-list/2004-April/msg00136.html habe ich eine Lösung für das Problem gefunden, allerdings habe ich es noch nicht ausprobiert.
Viel spannender finde ich in dem Zusammenhang, dass es unter http://www.ibiblio.org/pub/solaris/csw/stable/sparc/5.9/ fertige Pakete gibt :-)
-
Das was du da gefunden hast, sind Blastwave Pakete. Kann sein, dass du auch die Abhängigkeiten als Blastwave-Paket installieren musst.
Zu der Lösung des Problems: Deswegen hab ich die ganzen GNU Tools nochmal selbst kompiliert. Da mkommste garnicht erst in solche Probleme. Das selbe gilt übrigens für sed. Da hat ich auch schon öfters Sachen, die nur mit GNU sed richtig funktionieren.
Aber noch schlimmer ist indent. Das hab ich gleich so rausgehauen, dass es nie benutzt wird.
Mfg. Erisch
-
Die Pakete gehen supi, es war lediglich ein zusätzliches, recht kleines common-Paket erforderlich.
Aber aus dem Link mit der Lösung drängt sich mir eine Frage auf: wo erweitere ich $PATH am elegantesten?
-
am besten fürs kompilieren ein extra Profil anlegen in dem man den PATH absolut festlegt. Also nicht PATH=$PATH:/ein/pfad:/ein/anderer/pfad sondern PATH=/ein/pfad:/ein/anderer/pfad
So kann man festlegen, welche Verzeichnisse zuerst durchsucht werden. Wenn man sein GNU Zeugs unter /usr/local hat, sollte man auch /usr/local vor /usr/bin durchsuchen, dann benutzt man nicht erst das grep/sed/indent/... von Solaris.
Ich hab bei mir eine Datei .cprofile im home in der PATH und die ganzen Compilerflags gesetzt werden. Die kannste dann mit "source ~/.cprofile" (bei Verwendung von bash) anwenden.
Mfg. Erisch
-
So, auf meiner SPARCstation 5 ist nun wieder ein GCC incl. kompletter Tool-Chain vorhanden.
Wenn also Bedarf an dem einen oder anderen Programm besteht, könnt ihr einfach anfragen (aber bitte nicht alle auf einmal ;)).
Mfg. Erisch
-
also ihr wisst ja wie anspruchslos ich bin und daher ist meine bitte auch bescheiden:
erisch, bitte eine website mit einem download paketumfang, der blastwave.org in den schatten stellt. ;D
btw.
ich waere sehr interessiert an deinen profil environments, die uns vllt. beim compilieren einigen aerger ersparen koennten.
gepaart mit einem erfahrungs-kompilierungs-howto, und das bier gehoert dir ;)
back to topic:
ein thread gleich nebenan steht noch ein wunsch aus:
fluxbox (aktueller source auf fluxbox.org) fuer Sol10 gcc3.3.2
gruss
cutoff
-
Wie gesagt, wenn ich mal zeit und Lust habe, mach ich ma ne Website mit all den Infos die ich für wichtig erachte.
Solaris 10 Pakete und 64 Bit Pakete kann ich leider nicht bieten, weil ich nur ne V8 CPU habe. Bis auf Programme die Stackgrößen auslesen müsste aber alles was unter Solaris 9 kompiliert auch unter 10 durchlaufen.
Aber ich bin grad auf der Suche, nach ner billigen Ultra. Vielleicht werd ich ja bald fündig.
Mein Kompilierprofil könnt ihr haben:
CFLAGS="-O2 -mcpu=supersparc -mtune=supersparc -fomit-frame-pointer -pipe"
CXXFLAGS="-O2 -mcpu=supersparc -mtune=supersparc -fomit-frame-pointer -pipe"
CPPFLAGS="-I/usr/local/include -I/opt/sfw/gcc-3/include"
LDFLAGS="-R/usr/local/lib -L/usr/local/lib -R/opt/sfw/gcc-3/lib -L/opt/sfw/gcc-3/lib"
PATH=/usr/local/bin:/opt/sfw/gcc-3/bin:/usr/ccs/bin:/usr/bin:/usr/sbin
export CFLAGS CXXFLAGS CPPFLAGS LDFLAGS PATH
Es ist vielleicht anzumerken, dass ich alle nötigen Tools (make, sed, grep, perl, ...) nochmal selbst kompiliert in /usr/local habe und nicht das Zeugs von Solaris nutze (aus Erfahrung)
Mfg. Erisch
[EDIT]
Stelle grad fest, dass das mit den Anführiunszeichen und Slashes nicht so wirklich funzt hier im Forum, hab schon rumprobiert, aber ich krieg das nicht besser hin. Ich hoffe man kann es trotzdem lesen.
-
So, ich hab jetzt mein Tutorial fürs Kompilieren soweit fertig. Zu finden unter http://erisch.homeunix.net.
Ihr dürft jetzt gern Korrekturlesen und ein paar Anmerkungen machen und Kritik üben.
Mfg. Erisch
-
Eine Anmerkung zu den Compilern:
Sun Studio 10 wird mittlerweile kostenlos von Sun verteilt, komplett mit C/C++ und Fortran Compilern
-
Eine Anmerkung zu den Compilern:
Sun Studio 10 wird mittlerweile kostenlos von Sun verteilt, komplett mit C/C++ und Fortran Compilern
Das glaube ich nicht, Tim ;)
$2.995 hört sich nicht nach kostenlos an:
http://www.sun.com/software/products/studio/buy.xml
Das es eine 60-Tage Trial-Version gibt, heißt nicht dass das Teil kostenlos ist. Und auf die Trial-Version habe ich ja hingewiesen.
Mfg. Erisch
-
June 14, 2005 — OPENING DAY for Sun Studio Tools on OpenSolaris. Sun Studio is a developer tool suite for building OpenSolaris and developing performant applications to run on Solaris and OpenSolaris. Sun Studio software is being provided, free and unrestricted, to participants in the OpenSolaris Community.
Wird zwar auf den OpenSolaris Seiten angeboten, funktioniert aber bei mir auch problemlos unter Solaris 9:
http://www.opensolaris.org/os/community/tools/sun_studio_tools/
-
Das wusste ich nicht. Dann werd ich das mal anpassen und den Link entsprechend ändern.
Hast du einen Vergleich zwischen der den beiden Versionen? Sind vielleicht irgendwelche Features nicht mit dabei oder ist sonst irgendwas anders? Oder ist es 2 mal das selbe Produkt?
Mfg. Erisch
-
Ich denke das ist die vollstaendige Version und sie benoetigt auch eine permanente S/N die man von Sun nach dem Download per email bekommt.Zumindest habe ich bislang nichts vermisst - IDE und alle Compiler sind dabei, sogar die selbststaendig parallelisierenden Fortran Compiler.
Ich war jedenfalls ziemlich verbluefft. OpenSolaris interessiert mich nur marginal, aber die kostenlosen Compiler sind der Hammer. Da wollte man wohl Microsoft nacheifern ... ;D
/chris