Forums FUG-FR
https://forums.fug-fr.org/cgi-bin/yabb2/YaBB.pl
FreeBSD >> Logiciels tiers >> [RÉSOLU] Installation de "surf" de chez suckless
https://forums.fug-fr.org/cgi-bin/yabb2/YaBB.pl?num=1260620417

Message started by Beastieol on 12. Dec 2009 at 13:20

Title: [RÉSOLU] Installation de "surf" de chez suckless
Post by Beastieol on 12. Dec 2009 at 13:20
Bonjour,
je cherche à installer mes logiciels préférés sur ma freebsd toute fraîche mais je rencontre un récalcitrant!
Il s'agit de surf, un navigateur minimal basé sur webkit.

- La sortie de commande de l'installation :

Code (]%make clean install
cleaning
surf build options:
CFLAGS   = -std=c99 -pedantic -Wall -Os -I. -I/usr/local/include  -DVERSION="0.4"
LDFLAGS  = -s -L/usr/local/lib -lc  -lgthread-2.0
CC       = cc
CC surf.c
surf.c:8:21: error: gtk/gtk.h: No such file or directory
surf.c:9:22: error: gdk/gdkx.h: No such file or directory
surf.c:10:21: error: gdk/gdk.h: No such file or directory
surf.c:11:28: error: gdk/gdkkeysyms.h: No such file or directory
surf.c:18:27: error: webkit/webkit.h: No such file or directory
surf.c:19:25: error: glib/gstdio.h: No such file or directory
surf.c:20:39: error: JavaScriptCore/JavaScript.h: No such file or directory[/code):

Suivent une tonne d'erreurs résultant des librairies non trouvées.

- Une copie du config.mk :
[code]# surf version
VERSION = 0.4

# Customize below to fit your system

# paths
PREFIX = /usr/local
MANPREFIX = ${PREFIX}/share/man

GTKINC=$(shell pkg-config --cflags gtk+-2.0 webkit-1.0)
GTKLIB=$(shell pkg-config --libs gtk+-2.0 webkit-1.0)

# includes and libs
#INCS = -I. -I/usr/include ${GTKINC}
#LIBS = -L/usr/lib -lc ${GTKLIB} -lgthread-2.0
INCS = -I. -I/usr/local/include ${GTKINC}
LIBS = -L/usr/local/lib -lc ${GTKLIB} -lgthread-2.0

# flags
CPPFLAGS = -DVERSION=\"${VERSION}\"
CFLAGS = -std=c99 -pedantic -Wall -Os ${INCS} ${CPPFLAGS}
LDFLAGS = -s ${LIBS}

# Solaris
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
#LDFLAGS = ${LIBS}

# compiler and linker
CC = cc

Toutes les librairies non trouvées sont celles que j'ai installée à la main, j'ai été voir dans /usr/local/include et /usr/llocal/lib et j'ai bien mes librairies.

Je ne sais pas trop quoi faire pour que mes librairies soient détectées et/ou que la construction se passe bien.

J'en a

Title: Re: Installation du navigateur "surf" de chez suckless
Post by fgudin on 12. Dec 2009 at 14:29
Est-ce que les dépendances installées à la main ont bien ajouté leurs infos à pkgconfig ? (que donnent les appels à pkg-config (GTKINC et GTKLIB) ?)
Si ce n'est pas le cas, tu pourrais installer l'équivalent par les ports, qui mettront bien à jour ces infos, eux.

Title: Re: Installation du navigateur "surf" de chez suckless
Post by Beastieol on 12. Dec 2009 at 19:46
Je m'étais mal exprimé, j'avais installé webkit-gtk2 et gtk20 avec pkg_add, donc je pense que le nécessaire a dû être fait par le système, par contre quand j'appelle pkg-config, j'ai droit à :
[code]gnome-config : not found[/code]donc je ne peux pas vraiment répondre à ta question.

Title: Re: Installation du navigateur "surf" de chez suckless
Post by Beastieol on 12. Dec 2009 at 23:29
Bon, c'est résolu!

Je te remercie, fgudin de t'être penché sur mon problème.

C'est la réponse de Mickey, d'un forum anglophone qui m'a permis de comprendre comment faire.

Dans le config.mk, j'ai remplacé ${GTKINC}
par la sortie de

Code (]% pkg-config --cflags gtk+-2.0 webkit-1.0[/code):
c'est à dire :
[code]-D_THREAD_SAFE -I/usr/local/include/gtk-2.0 -I/usr/local/lib/gtk-2.0/include -I/usr/local/include/atk-1.0 -I/usr/local/include/cairo -I/usr/local/include/pango-1.0 -I/usr/local/include -I/usr/local/include/glib-2.0 -I/usr/local/lib/glib-2.0/include -I/usr/local/include/pixman-1 -I/usr/local/include/freetype2 -I/usr/local/include/webkit-1.0 -I/usr/local/include/webkit-1.0/webkit -I/usr/local/include/libsoup-2.4 -I/usr/local/include/libxml2
et ${GTKLIB} par la sortie de :

Code (]% pkg-config --libs gtk+-2.0 webkit-1.0[/code):
c'est à dire :
[code]-pthread -L/usr/local/lib -lwebkit-1.0 -lgtk-x11-2.0 -lsoup-2.4 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXext -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage -lpangoft2-1.0 -lXfixes -lcairo -lX11 -lpango-1.0 -lm -lfreetype -lfontconfig -lgio-2.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0


Par contre je ne comprend pas pourquoi ça ne fonctionnait pas sans les substitutions.

Si quelqu'un a une idée là dessus ...

Title: Re: [RÉSOLU] Installation de "surf" de chez suckless
Post by fgudin on 13. Dec 2009 at 13:04
Je ne connais rien en matière de Make, mais est-ce que ce n'est pas un Makefile pour gmake, des fois ?

Title: Re: [RÉSOLU] Installation de "surf" de chez suckless
Post by Beastieol on 14. Dec 2009 at 00:59

fgudin wrote on 13. Dec 2009 at 13:04:
Je ne connais rien en matière de Make, mais est-ce que ce n'est pas un Makefile pour gmake, des fois ?

Apparament, c'était ça le problème, la solution la plus propre est soit d'utiliser gmake soit de remplacer :

Code (]GTKINC=$(shell pkg-config --cflags gtk+-2.0 webkit-1.0)
GTKLIB=$(shell pkg-config --libs gtk+-2.0 webkit-1.0)[/code):

par :
[code]GTKINC=`pkg-config --cflags gtk+-2.0 webkit-1.0`
GTKLIB=`pkg-config --libs gtk+-2.0 webkit-1.0`

dans le config.mk

Title: Re: [RÉSOLU] Installation de "surf" de chez suckless
Post by ros on 14. Dec 2009 at 16:38
En théorie si le makefile à été prévu pour le make gnu, c'est mieux d'utiliser gmake, en théorie ça évite de patcher le Makefile et de devoir repasser à chaque mise à jour.
En plus si on utilise autoconf et ses petits amis, ce n'est même plus une question, mais un pré-requis.

ps:
Au fait, surf semble être dans le ports, ou c'est moi qui me trompe.

Title: Re: [RÉSOLU] Installation de "surf" de chez suckless
Post by Bapt on 14. Dec 2009 at 23:19
Tu te trompes ce n'est pas le même

Title: Re: [RÉSOLU] Installation de "surf" de chez suckless
Post by Beastieol on 16. Dec 2009 at 00:30

ros wrote on 14. Dec 2009 at 16:38:
En théorie si le makefile à été prévu pour le make gnu, c'est mieux d'utiliser gmake, en théorie ça évite de patcher le Makefile et de devoir repasser à chaque mise à jour.
En plus si on utilise autoconf et ses petits amis, ce n'est même plus une question, mais un pré-requis.
J'ai utilisé make par habitude, quand je construisais surf sur debian, ça marchait très bien avec les mêmes sources et make et j'ai pas pensé que ça pourrait être différent ici.


ros wrote on 14. Dec 2009 at 16:38:
ps:
Au fait, surf semble être dans le ports, ou c'est moi qui me trompe.
Hé Hé, j'y avais cru aussi quand j'avais vu un paquet nommé "surf" dans la liste des dépots, mais c'était un homonyme dédié aux maths sans rapport avec le surf de suckless, soit dit en passant on fait comment dans ces cas là si on veut le porter pour FreeBSD, faudra le renommer?

Forums FUG-FR » Powered by YaBB 2.5.2!
YaBB Forum Software © 2000-2025. All Rights Reserved.