cmake-Optionen in einem Port hinzufügen

drm

Well-Known Member
Hi!

Um meine gtk-Anwendungen unter KDE optisch anzupassen, möchte ich gerne diesen Port nutzen. In INSTALL steht aber, dass für 64-Bit Prozessoren eine spezielle Option (-DLIB_SUFFIX=64) an cmake weitergereicht werden muss. Aber wo und wie trage ich die zusätzlich in das Makefile ein?

Hier das ganze Makefile:

Code:
# New ports collection makefile for:	gtk-oxygen-engine
# Date created:		2010-12-14
# Whom:			Max Brazhnikov <makc@FreeBSD.org>
#
# $FreeBSD: ports/x11-themes/gtk-oxygen-engine/Makefile,v 1.3 2011/03/17 17:23:34 makc Exp $
#

PORTNAME=	oxygen
PORTVERSION=	1.0.3
CATEGORIES=	x11-themes
MASTER_SITES=	${MASTER_SITE_KDE}
MASTER_SITE_SUBDIR=	stable/${PORTNAME}-gtk/${PORTVERSION}/src/
PKGNAMEPREFIX=	gtk-
PKGNAMESUFFIX=	-engine
DISTNAME=	${PORTNAME}-gtk-${PORTVERSION}

MAINTAINER=	makc@FreeBSD.org
COMMENT=	Oxygen-Gtk engine and theme

LIB_DEPENDS=	cairo.2:${PORTSDIR}/graphics/cairo

USE_BZIP2=	yes
USE_GNOME=	gtk20 pkgconfig
USE_CMAKE=	yes
MAKE_JOBS_SAFE=	yes

.include <bsd.port.mk>

Gruß,
drm
 

juedan

FreeBSDler
Hallo drm,

entweder Du gibst
Code:
# make config
ein und erhältst eine Auswahlliste aller möglichen Optionen, oder Du schreibst
Code:
# make install clean -D[I]option[/I]

JueDan
 

drm

Well-Known Member
Hallo juedan,

deine Vorschläge klappen leider beide nicht :( Der Port hat keine Optionen zum Konfigureren, und das Anhängen an 'make install -DLIB_SUFFIX=64' bringt keinen Erfolg. Liegt das daran, dass cmake verwendet wird?

Viele Grüße,
drm
 

juedan

FreeBSDler
Was heißt "Anhängen an 'make install -DLIB_SUFFIX=64' bringt keinen Erfolg"? Gibt es Fehlermeldungen, wenn ja welche?
 

drm

Well-Known Member
Wenn ich den Source direkt herunterlade und

Code:
# cd oxygen-gtk
# mkdir build
# cd build
# cmake -DLIB_SUFFIX=64 ../
# make -j3
# make install

ausführe, installiert er die Bibliothek in

Code:
-- Installing: /usr/local/lib64/gtk-2.0/2.10.0/engines/liboxygen-gtk.so

Dabei nutzt cmake standardmässig die Datei 'CMakeLists.txt' aus dem darüber liegenden Verzeichnis.

Wenn ich aus den Ports installiere, nutzt er die Option nicht und installiert in /usr/local/lib anstelle von /usr/local/lib64:

Code:
# make install -DLIB_SUFFIX=64
...
-- Installing: /usr/local/lib/gtk-2.0/2.10.0/engines/liboxygen-gtk.so
...

Bin leider noch total unerfahren mit Ports.

Viele Grüße,
drm
 

oenone

Well-Known Member
welches Verzeichnis zur Installation benutzt wird, sollte vom Betriebssystem vorgegeben werden. Dieses lib64-Verzeichnis kenne ich nur von Linux.. Sicher, dass du das willst?
 

pit234a

Well-Known Member
Mit solchen Dingen bin ich leider auch total unerfahren und überfragt, was genau ein Grund für mich ist, FreeBSD zu nutzen.
Es sieht ja so aus, als hättest du einen Port und musst nicht aus den Quellen installieren. Alles, was da in README oder INSTALL steht, wird normalerweise von den Port-Maintainern für dich umgesetzt! Manchmal gibt es sogar spezielle Patches. Nunja, manchmal funktioniert etwas auch noch nicht, denn die Port-Maintainer können natürlich Fehler machen und denken vielleicht nicht an alles. Aber grundsätzlich kannst du erst mal davon ausgehen, dass make install clean alles ist, was du brauchst.
Wenn du nun ein Programm testest, dass die passende lib nicht findet, weil sie vielleicht an einem anderen Ort liegt, dann ist es am einfachsten (und mitunter auch am unsaubersten) einfach einen Link zu setzen. Das geht schnell und direkt und du kannst sofort sehen, ob denn damit dann der Rest auch funktioniert. Dann kannst du immer noch versuchen, die saubere Lösung global zu realisieren und Makefiles umzubauen und neu verlinken zu lassen. So weit ging ich nie, könnte es vermutlich auch nicht.

edit: vergessen. Allgemein kann eine Option, wie von dir gewünscht, in der /etc/make.conf eingepflegt werden. Das hat den Vorteil, dass sie jedesmal automatisch benutzt wird, wenn du in Zukunft den Port mal wieder bauen möchtest. Dazu ein Beispiel aus meiner make.conf:
Code:
#editors/libreoffice
.if ${.CURDIR:M*ports/editors/libreoffice*}
LOCALIZED_LANG=de
with-dict=All
.endif
unschwer zu sehen, was da gemeint ist. Kmikaze hat ein sehr gutes Wiki zur make.conf geschrieben und erklärt auch solche einträge.
 
Zuletzt bearbeitet:

Kamikaze

Warrior of Sunlight
Ich hoffe das mit dem with-dict ist kein echter Eintrag. :D

@drm
Was machst du da eigentlich? Installiere einfach den Port. Was immer du da frickelst, du weißt offensichtlich nicht was du da eigentlich tust.
 

pit234a

Well-Known Member
Ich hoffe das mit dem with-dict ist kein echter Eintrag. :D

doch.
Nach irgendeinem Versionswechsel war das umgestellt, zuvor hatte ich den Port quasi "versehentlich" per Default mit all gebaut. Erstaunlicherweise ging das schneller, deutlich schneller, als bei OOo mit nur de. Selten, ganz selten, brauche ich aber Französisch, Englisch(USA) und eben Deutsch. Da dachte ich mir, nimm halt alle, wenn es doch so schnell geht ;)

Ich bin nicht sicher, ob das bei mir so bleiben wird...

Aber klar, es sollte nur ein Beispiel für einen Eintrag in der make.conf sein und nicht etwa ein Vorschlag und schon gar nicht Schule machen.
 

pit234a

Well-Known Member
Aber was soll das with-dict bewirken?

frag mich nicht mehr, wo ich das gelesen habe. Im Makefile kann man es vielleicht ahnen.
with-dict wird da per Default auf den Wert von LOCALIZED_LANG gesetzt.
LOCALIZED_LANG wäre die Sprache des GUI, dict die Sprachpakete zur Rechtschreibprüfung.

Wie gesagt hatte ich bei OOo alles gleich und auf Deutsch eingestellt. Bei einer frühen Version von libreoffice hatte ich aber gesehen, dass der mit allen Rechtschreibpaketen gebaut war.
OOo hatte ja zeitweise diese Pakete nachträglich aus dem Web installieren lassen.
libreoffice scheint das nun direkt beim Bau berücksichtigen zu können.

Gerade baut es bei mir wieder libreoffice-build-3.3.2.2 und es wurden wirklich eine ganze Reihe Sprachpakete installiert. Ich muss mir das aber mal genauer ansehen, wenn es fertig ist. Nicht, dass ich da mal wieder einer Täuschung aufgesessen bin.
Vermutlich gibt es aber zum einen nicht sooo viele Pakete und zum anderen vielleicht nicht oft Aktuallisierungen dazu. Das Einbauen geht jedenfalls relativ flott und es brauchte dazu nun keine weiteren Downloads (die bei mir immer bremsen).
 

pit234a

Well-Known Member
wenn ich in den config.log sehe, ist überall --with-dict=de genommen worden :(
das noch installierte libreoffice hatte Deutsch, Französich, Englisch ind mehreren versionen und Italienisch eingebaut. Ob das alles mit de mitkomm?
 

pit234a

Well-Known Member
Ich finde keine Stelle an der eine Variable namens with-dict gelesen wird.

Gebaut ist fertig und ich sehe im config.log dies.
Code:
$ ./configure --without-download --with-binsuffix=no [B]--with-dict=de --with-myspell-dicts --with-lang=de[/B] --disable-odk --with-build-version=FreeBSD ports 3.3.2 ....
Code:
...configure:8434: WARNING: unrecognized options: --with-dict, --with-myspell-dicts, --with-build-version...
später kommt nochmal eine Zeile, wie die obere.

Im libreoffice-writer und in den Einstellungen unter Extras-Optionen kann ich zwischen den verschiedenen Englisch, Französisch, Deutsch und einem Italienisch wählen.
Während des Baus hatte ich mal die Ausgabe gesehen und da liefen deutlich mehr dic's durch. Wenn ich nachsehe in
Code:
/usr/ports/editors/libreoffice/work/libreoffice-build-3.3.2.2/build/libreoffice/dictionaries/unxfbsdx.pro/misc
dann finde ich dort auch eine ganze Menge mehr. Ich zeige die mal hier, aber die Details sind sicher unwichtig. Die verschiednen .dic wurden aber während des Baus angelegt und es stehen etliche Wörter darin, sie sind also nicht leer.
Scheinbar wirkt die Option All nicht und es wird de genommen, aber trotzdem sind viele (Alle?) dicts gebaut worden.

Für diesen Thread ist sicher diese Funktion nicht interessant, aber die grundsätzliche Frage schon, ob nämlich auf diese Weise auch Otionen übergeben werden können, die dann den Bau eines Ports beeinflussen und ob dafür die Synthax passt.

Hier der tree aus dem Verzeichnis mit den dic's.
Code:
.
├── dict-af
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_af_ZA.txt
│ ├── af_ZA.aff
│ ├── af_ZA.dic
│ ├── description.xml
│ ├── dictionaries.xcu
│ └── hyph_af_ZA.dic
├── dict-af_lang_track.mk
├── dict-br
│ ├── LICENSES-en.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── br_FR.aff
│ ├── br_FR.dic
│ ├── description.xml
│ ├── dictionaries.xcu
│ └── package-description.txt
├── dict-br_lang_track.mk
├── dict-ca
│ ├── LICENSES-en.txt
│ ├── LLICENCIES-ca.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_th_ca_ES_v3.txt
│ ├── ca.aff
│ ├── ca.dic
│ ├── description.xml
│ ├── dict_LICENSES-en.txt
│ ├── dict_LLICENCIES-ca.txt
│ ├── dictionaries.xcu
│ ├── hyph_LICENSES-en.txt
│ ├── hyph_LLICENCIES-ca.txt
│ ├── hyph_ca.dic
│ ├── hyph_release-note_ca.txt
│ ├── hyph_release-note_en.txt
│ ├── th_LICENCES-fr.txt
│ ├── th_LICENCIAS-es.txt
│ ├── th_LICENSES-en.txt
│ ├── th_LLICENCIES-ca.txt
│ ├── th_ca_ES_v3.dat
│ ├── th_ca_ES_v3.idx
│ └── th_release_note-ca.txt
├── dict-ca_lang_track.mk
├── dict-cs
│ ├── META-INF
│ │ └── manifest.xml
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── th_cs_CZ_license.txt
│ ├── th_cs_CZ_v2.dat
│ └── th_cs_CZ_v2.idx
├── dict-cs_lang_track.mk
├── dict-da
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_da_DK.txt
│ ├── README_th_da_DK.txt
│ ├── Trold_42x42.png
│ ├── da_DK.aff
│ ├── da_DK.dic
│ ├── desc_da_DK.txt
│ ├── desc_en_US.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── help
│ │ └── da
│ │     ├── help.tree
│ │     └── org.openoffice.da.hunspell.dictionaries
│ │         ├── Trold.png
│ │         └── page1.xhp
│ ├── hyph_da_DK.dic
│ ├── th_da_DK.dat
│ └── th_da_DK.idx
├── dict-da_lang_track.mk
├── dict-de-AT
│ ├── COPYING
│ ├── COPYING_GPLv3
│ ├── COPYING_OASIS
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_de_AT_frami.txt
│ ├── README_extension_owner.txt
│ ├── README_hyph_de_AT.txt
│ ├── README_th_de_AT_v2.txt
│ ├── de_AT_frami.aff
│ ├── de_AT_frami.dic
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_de_AT.dic
│ ├── th_de_AT_v2.dat
│ └── th_de_AT_v2.idx
├── dict-de-CH
│ ├── COPYING
│ ├── COPYING_GPLv3
│ ├── COPYING_OASIS
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_de_CH_frami.txt
│ ├── README_extension_owner.txt
│ ├── README_hyph_de_CH.txt
│ ├── README_th_de_CH_v2.txt
│ ├── de_CH_frami.aff
│ ├── de_CH_frami.dic
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_de_CH.dic
│ ├── th_de_CH_v2.dat
│ └── th_de_CH_v2.idx
├── dict-de-DE
│ ├── COPYING_GPLv2
│ ├── COPYING_GPLv3
│ ├── COPYING_OASIS
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_de_DE_frami.txt
│ ├── README_extension_owner.txt
│ ├── README_hyph_de_DE.txt
│ ├── README_th_de_DE_v2.txt
│ ├── de_DE_frami.aff
│ ├── de_DE_frami.dic
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_de_DE.dic
│ ├── th_de_DE_v2.dat
│ └── th_de_DE_v2.idx
├── dict-de-at_lang_track.mk
├── dict-de-ch_lang_track.mk
├── dict-de-de_lang_track.mk
├── dict-en
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README.txt
│ ├── README_en_AU.txt
│ ├── README_en_CA.txt
│ ├── README_en_GB.txt
│ ├── README_en_GB_thes.txt
│ ├── README_en_US.txt
│ ├── README_en_ZA.txt
│ ├── README_hyph_en_GB.txt
│ ├── README_hyph_en_US.txt
│ ├── WordNet_license.txt
│ ├── affDescription.txt
│ ├── changelog.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── en_AU.aff
│ ├── en_AU.dic
│ ├── en_CA.aff
│ ├── en_CA.dic
│ ├── en_GB.aff
│ ├── en_GB.dic
│ ├── en_US.aff
│ ├── en_US.dic
│ ├── en_ZA.aff
│ ├── en_ZA.dic
│ ├── hyph_en_GB.dic
│ ├── hyph_en_US.dic
│ ├── license.txt
│ ├── th_en_US_v2.dat
│ └── th_en_US_v2.idx
├── dict-en_lang_track.mk
├── dict-es
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_es_ES.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── es_ES.aff
│ └── es_ES.dic
├── dict-es_lang_track.mk
├── dict-et
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_et_EE.txt
│ ├── README_hyph_et_EE.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── eehyph.tex
│ ├── et_EE.aff
│ ├── et_EE.dic
│ └── hyph_et_EE.dic
├── dict-et_lang_track.mk
├── dict-fr
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_fr.txt
│ ├── README_hyph_fr.txt
│ ├── README_thes_fr.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── drapeau_tricolore.png
│ ├── fr.aff
│ ├── fr.dic
│ ├── frhyph.tex
│ ├── hyph_fr.dic
│ ├── package-description.txt
│ ├── thes_fr.dat
│ └── thes_fr.idx
├── dict-fr_lang_track.mk
├── dict-gl
│ ├── LICENCES-gl.txt
│ ├── LICENSES-en.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README-gl-ES.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── gl_ES.aff
│ ├── gl_ES.dic
│ └── spell.txt
├── dict-gl_lang_track.mk
├── dict-he
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_he_IL.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── he_IL.aff
│ └── he_IL.dic
├── dict-he-IL_lang_track.mk
├── dict-hr
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hr_HR.txt
│ ├── README_hyph_hr_HR.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hr_HR.aff
│ ├── hr_HR.dic
│ └── hyph_hr_HR.dic
├── dict-hr_lang_track.mk
├── dict-hu
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hu_HU.txt
│ ├── README_hyph_hu_HU.txt
│ ├── README_th_hu_HU_v2.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── help
│ │ └── hu
│ │     ├── help.tree
│ │     └── org.openoffice.hu.hunspell.dictionaries
│ │         ├── fsfhu.png
│ │         ├── page1.xhp
│ │         └── szinonima.png
│ ├── hu_HU.aff
│ ├── hu_HU.dic
│ ├── hyph_hu_HU.dic
│ ├── th_hu_HU_v2.dat
│ └── th_hu_HU_v2.idx
├── dict-hu_lang_track.mk
├── dict-it
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hyph_it_IT.txt
│ ├── README_it_IT.txt
│ ├── README_th_it_IT.txt
│ ├── desc_en.txt
│ ├── desc_it.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_it_IT.dic
│ ├── ico.png
│ ├── it_IT.aff
│ ├── it_IT.dic
│ ├── th_it_IT_v2.dat
│ └── th_it_IT_v2.idx
├── dict-it_lang_track.mk
├── dict-ku-TR
│ ├── META-INF
│ │ └── manifest.xml
│ ├── MPL-1.1.txt
│ ├── README_ku_TR.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── ferheng.org.png
│ ├── gpl-3.0.txt
│ ├── ku_TR.aff
│ ├── ku_TR.dic
│ ├── lgpl-2.1.txt
│ └── license.txt
├── dict-ku-TR_lang_track.mk
├── dict-lt
│ ├── COPYING_lt_LT
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hyph_lt_LT.txt
│ ├── README_lt_LT.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_lt_LT.dic
│ ├── lt_LT.aff
│ └── lt_LT.dic
├── dict-lt_lang_track.mk
├── dict-ne
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_ne_NP.txt
│ ├── README_th_ne_NP_v2.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── ne_NP.aff
│ ├── ne_NP.dic
│ ├── th_ne_NP_v2.dat
│ └── th_ne_NP_v2.idx
├── dict-ne_lang_track.mk
├── dict-nl
│ ├── META-INF
│ │ └── manifest.xml
│ ├── OpenTaal.png
│ ├── README_NL.txt
│ ├── desc_en_US.txt
│ ├── desc_nl_NL.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_nl_NL.dic
│ ├── license_en_EN.txt
│ ├── licentie_nl_NL.txt
│ ├── nl_NL.aff
│ └── nl_NL.dic
├── dict-nl_lang_track.mk
├── dict-no
│ ├── COPYING
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hyph_NO.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_nb_NO.dic
│ ├── hyph_nn_NO.dic
│ ├── nb_NO.aff
│ ├── nb_NO.dic
│ ├── nn_NO.aff
│ ├── nn_NO.dic
│ ├── th_nb_NO_v2.dat
│ ├── th_nb_NO_v2.idx
│ ├── th_nn_NO_v2.dat
│ └── th_nn_NO_v2.idx
├── dict-no_lang_track.mk
├── dict-oc
│ ├── LICENCES-fr.txt
│ ├── LICENSES-en.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_oc_FR.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── oc_FR.aff
│ └── oc_FR.dic
├── dict-oc_lang_track.mk
├── dict-pl
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_en.txt
│ ├── README_pl.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── flaga.png
│ ├── hyph_pl_PL.dic
│ ├── pl_PL.aff
│ ├── pl_PL.dic
│ ├── plhyph.tex
│ ├── th_pl_PL_v2.dat
│ └── th_pl_PL_v2.idx
├── dict-pl_lang_track.mk
├── dict-pt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_en.TXT
│ ├── README_hyph_pt_BR.TXT
│ ├── README_pt_BR.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_pt_BR.dic
│ ├── pt_BR.aff
│ └── pt_BR.dic
├── dict-pt_lang_track.mk
├── dict-ro
│ ├── COPYING.GPL
│ ├── COPYING.LGPL
│ ├── COPYING.MPL
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_EN.txt
│ ├── README_RO.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_ro_RO.dic
│ ├── ro_RO.aff
│ ├── ro_RO.dic
│ ├── th_ro_RO_v2.dat
│ └── th_ro_RO_v2.idx
├── dict-ro_lang_track.mk
├── dict-ru
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_ru_RU.txt
│ ├── README_thes_ru_RU.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_ru_RU.dic
│ ├── ru_RU.aff
│ ├── ru_RU.dic
│ ├── th_ru_RU_v2.dat
│ └── th_ru_RU_v2.idx
├── dict-ru_lang_track.mk
├── dict-sk
│ ├── LICENSE.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_en.txt
│ ├── README_sk.txt
│ ├── README_th_sk_SK_v2.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_sk_SK.dic
│ ├── iconsk3.png
│ ├── release_en.txt
│ ├── release_sk.txt
│ ├── sk_SK.aff
│ ├── sk_SK.dic
│ ├── th_sk_SK_v2.dat
│ └── th_sk_SK_v2.idx
├── dict-sk_lang_track.mk
├── dict-sl
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hyph_sl_SI.txt
│ ├── README_sl_SI.txt
│ ├── README_th_sl_SI.txt
│ ├── desc_en_US.txt
│ ├── desc_sl_SI.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_sl_SI.dic
│ ├── sl_SI.aff
│ ├── sl_SI.dic
│ ├── th_sl_SI_v2.dat
│ └── th_sl_SI_v2.idx
├── dict-sl_lang_track.mk
├── dict-sr
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_sh.dic
│ ├── hyph_sr.dic
│ ├── sh.aff
│ ├── sh.dic
│ ├── sr.aff
│ └── sr.dic
├── dict-sr_lang_track.mk
├── dict-sv
│ ├── LICENSE_en_US.txt
│ ├── LICENSE_sv_SE.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── sv_SE.aff
│ └── sv_SE.dic
├── dict-sv_lang_track.mk
├── dict-sw
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_sw_TZ.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── sw_TZ.aff
│ └── sw_TZ.dic
├── dict-sw_lang_track.mk
├── dict-th
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_th_TH.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── th_TH.aff
│ └── th_TH.dic
├── dict-th_lang_track.mk
├── dict-uk
│ ├── META-INF
│ │ └── manifest.xml
│ ├── README_hyph_uk_UA.txt
│ ├── README_th_uk_UA.txt
│ ├── README_uk_UA.txt
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── hyph_uk_UA.dic
│ ├── th_uk_UA.dat
│ ├── th_uk_UA.idx
│ ├── uk_UA.aff
│ └── uk_UA.dic
├── dict-uk_lang_track.mk
├── dict-vi
│ ├── LICENSES-en.txt
│ ├── META-INF
│ │ └── manifest.xml
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── registration
│ │ └── LICENSES-vi.txt
│ ├── vi_VN.aff
│ └── vi_VN.dic
├── dict-vi_lang_track.mk
├── dict-zu
│ ├── META-INF
│ │ └── manifest.xml
│ ├── description.xml
│ ├── dictionaries.xcu
│ ├── dummy.txt
│ └── hyph_zu_ZA.dic
├── dict-zu_lang_track.mk
└── logs

80 directories, 438 files
 

Kamikaze

Warrior of Sunlight
Gebaut ist fertig und ich sehe im config.log dies. ...

Für diesen Thread ist sicher diese Funktion nicht interessant, aber die grundsätzliche Frage schon, ob nämlich auf diese Weise auch Otionen übergeben werden können, die dann den Bau eines Ports beeinflussen und ob dafür die Synthax passt.
Ich kann dir versprechen das funktioniert so nicht. Wenn du with-dict aus deiner make.conf löschst wird der Bau ganz genau so passieren.

Alles was du in der make.conf machst ist Variablen initialisieren. Wenn die nirgendwo gelesen werden ist Jacke wie Hose.

@drm
Um mal zum Thema zurückzukommen. Solche Dinge sollen die Ports für dich erledigen. Wenn das nicht klappt schreibt man dem Maintainer eine E-Mail. Wenn es gelingt das Problem selbst zu lösen, schreibt man dem Maintainer eine E-Mail in der man das Problem und die Lösung (in der Regel ein Patch) beschreibt.

Alternativ schreibt man einen Problem Report und bittet den Maintainer um seinen Segen für den Patch.
 

drm

Well-Known Member
So, ich hab jetzt die Ursache des Problems erkannt :)

Ich hatte unter anderem Pidgin als PBI installiert und versucht, per .gtkrc-2.0 die Schriftart und das Theme der GTK-Anwendungen einzustellen. Die Schriftart wurde übernommen, das Theme aber komischerweise nicht. Da dachte ich, es läge an den fehlenden cmake-Optionen, aber auch das Kompilieren mit diesen brachte keinen Erfolg.

Nachdem ich jetzt Pidgin und das Theme aus den Ports installiert habe, läuft alles wunderbar. Liegt wohl an den PBIs, eventuell frage ich mal in den PCBSD-Foren nach, woran das liegt.

Viele Grüße,
drm
 

Kamikaze

Warrior of Sunlight
Von PC-BSD/PBI habe ich vorher nichts mitbekommen. Tut mir Leid, ich dachte du verwendest FreeBSD.
 

drm

Well-Known Member
Jo, hab erstmal PCBSD installiert, weil ich gerne ZFS haben wollte, ohne mich groß einzulesen. Die Idee mit den PBIs gefällt mir eigentlich auch, aber wenn die Programme dafür dann total hässlich sind, kann ich auch drauf verzichten ;)

Hab mir jetzt diverse Programme aus den Ports installiert, selbst Firefox lief erstaunlich schnell durch. Wahrscheinlich werde ich für 3D-Unterstützung bald auch noch meinen ersten eigenen Kernel bauen, dann bleibt von PCBSD wohl nur die Konfiguration.

Viele Grüße,
drm

Edit: das scheint mir mesa und nicht der Kernel zu sein, ist schon spät ;)

Edit2: war doch Kernel und mesa
 
Zuletzt bearbeitet:

Kamikaze

Warrior of Sunlight
Hmm, also Kernel bauen muss man eigentlich gar nicht. Ich mache das auch nur aus gewohnheit. Es gibt sehr selten einen Grund für einen eigenen Kernel.

Yamagi macht z.B. ultramodulare Kernel. D.h. möglichst wenig fest im Kernel und alles was geht als Modul. Dann kann man Kernel Patches die nur ein bestimmtes Modul betreffen ohne Reboot einspielen und in Betrieb nehmen. Für einen Server sehr cool.

Es verlängert aber die Bootzeiten um mehrere Sekunden (subjektiv).
 
Zuletzt bearbeitet:

drm

Well-Known Member
Code:
> grep 4250 /usr/src/sys/dev/drm/drm_pciids.h
gibt mir nichts aus, ich muss die Datei also patchen. Was genau muss ich denn dann neu kompilieren? Nicht den Kernel?

Viele Grüße,
drm
 

metro

i² = -1
@drm ... immer langsam mit den jungen Pferden .... :)
PCBSD ist in der Handhabung nicht gleich FreeBSD, sondern sozusagen benutzerfreundlich gestaltet. Daher hast du dies auch (siehe ein paar Posts weiter oben) installiert, allerdings ohne der durchaus hilfreichen Leserschaft hier das mitzuteilen.

Die Antworten hier bezogen sich darauf, wie aus dem exzellenten und bestens funktionierenden FreeBSD Portssystem heraus etwas gebaut und installiert wird.
Um das erfolgreich zu tun, braucht es ein Grundwissen um eben diesen Portstree und wie man damit umgeht.
Die Systemsourcen zu patchen, zu bauen etc. um eine gtk-anwendung zu installieren ist eher nicht der Weg.
Wie man mit dem FBSD Portstree umgeht steht im FBSD Handbuch, Kapitel 4. Falls grundsätzliches Interesse besteht am System FreeBSD zu arbeiten, gibt es einen guten Einstieg mit dem FreeBSD Developers' Handbook. Für die, die sich für Entwicklung oder Portierung von Anwendungen interessieren existiert das FreeBSD Porter-Handbuch. Alle gibt's sogar auf Deutsch.
Je nachdem, wo es hingehen soll, ist das sozusagen Grundlage.

Viel Spaß und Erfolg bei der Umsetzung
 

drm

Well-Known Member
Hallo metro,

ich hätte natürlich erwähnen müssen, dass ich PC-BSD benutze. Das Problem war ja das Erscheinungsbild der (gtk)-Anwendungen, die als PBI installiert wurden. Offenbar ist in den PBIs ein bestimmtes Erscheinungsbild festgelegt, und ich habe noch nicht herausgefunden, wie man es ändern kann.

Das Theme selbst gibt es nicht als PBI, daher habe ich es aus den Ports installiert. Das brachte aber keine optische Änderung, und daher dachte ich erst, es läge am Theme. Dann hab ich versucht, den Fehler über die cmake-Option zu beheben. Wie ich durch diesen Thread erfahren habe, war dieser Ansatz falsch :) Es lag gar nicht am Port, sondern an den PBIs.

Jetzt habe ich die betreffenden PBI-Anwendungen aus den Ports reinstalliert (das Kapitel aus dem Handbuch habe ich gelesen) und schon nehmen sie das Theme an, ganz ohne Verrenkungen.

Das andere Problem, für das ich wohl besser einen neuen Thread aufmache, bezieht sich auf die fehlende 3D-Unterstützung meiner ATI Radeon 4250. Es existieren Patches sowohl für /usr/src/sys/dev/drm/drm_pciids.h, als auch für mesa. Soweit ich es jetzt durchblickt habe, muss ich wohl Kernel und mesa neu kompilieren, um in den Genuss von 3D zu kommen? Das hat aber mit dem Aussehen irgendwelcher Anwendungen nichts mehr zu tun :)

Viele Grüße,
drm
 

drm

Well-Known Member
In einem anderen Port-Makefile hab ich
Code:
CMAKE_ARGS+= ...
gefunden, falls es jemanden interessiert :)
 
Oben