je cherche a savoir si les .so sont pour linux la meme chose que les
.dll sous windows?
quelles differences y a il?
quelles difference dans la gestion dans le programme?
y a il un autre moyen de faire des "plugins" qui soit multi-os?
Ok donc mon but c'etait de faire des plugings dont le source soit multiOs. c'est donc possible ca?! et pour le chargement dynamique c'est dependant de l'os donc?! vous avez de la doc la dessus?
Ok donc mon but c'etait de faire des plugings dont le source soit
multiOs. c'est donc possible ca?!
et pour le chargement dynamique c'est dependant de l'os donc?!
vous avez de la doc la dessus?
Ok donc mon but c'etait de faire des plugings dont le source soit multiOs. c'est donc possible ca?! et pour le chargement dynamique c'est dependant de l'os donc?! vous avez de la doc la dessus?
kanze
Gabriel Dos Reis wrote:
writes:
| Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on
mais il supporte une autre API avec une sémantique proche.
Oui, mais mon code appelle dlopen et dlsym:-). J'ai actuellement prévu deux répertoires, Unix et Windows, pour la portabilité -- dans le répertoire Unix, j'ai fait beaucoup d'attention à ne me servir que des choses qui sont commun à Linux et aux Open System.
J'avoue que la manque de conformance de la part de HP m'étonne ; c'est quand même HP qui a fait que l'ancien X/Open (l'ancêtre de Open Systems) a évolué d'un petit regroupement de constructeurs européens (Siemens, Nixdorf, Olivetti, Philips, ICL, CII et HB, orginalement) à l'organisation de normalisation pour un des deux concurrents principaux (et à la fin, le gagnant) dans la guerre des Unix.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Gabriel Dos Reis wrote:
kanze@gabi-soft.fr writes:
| Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on
mais il supporte une autre API avec une sémantique proche.
Oui, mais mon code appelle dlopen et dlsym:-). J'ai actuellement
prévu deux répertoires, Unix et Windows, pour la portabilité --
dans le répertoire Unix, j'ai fait beaucoup d'attention à ne me
servir que des choses qui sont commun à Linux et aux Open
System.
J'avoue que la manque de conformance de la part de HP m'étonne ;
c'est quand même HP qui a fait que l'ancien X/Open (l'ancêtre de
Open Systems) a évolué d'un petit regroupement de constructeurs
européens (Siemens, Nixdorf, Olivetti, Philips, ICL, CII et HB,
orginalement) à l'organisation de normalisation pour un des deux
concurrents principaux (et à la fin, le gagnant) dans la guerre
des Unix.
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
| Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on
mais il supporte une autre API avec une sémantique proche.
Oui, mais mon code appelle dlopen et dlsym:-). J'ai actuellement prévu deux répertoires, Unix et Windows, pour la portabilité -- dans le répertoire Unix, j'ai fait beaucoup d'attention à ne me servir que des choses qui sont commun à Linux et aux Open System.
J'avoue que la manque de conformance de la part de HP m'étonne ; c'est quand même HP qui a fait que l'ancien X/Open (l'ancêtre de Open Systems) a évolué d'un petit regroupement de constructeurs européens (Siemens, Nixdorf, Olivetti, Philips, ICL, CII et HB, orginalement) à l'organisation de normalisation pour un des deux concurrents principaux (et à la fin, le gagnant) dans la guerre des Unix.
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Dimitri PAPADOPOULOS-ORFANOS
Quelque vérifications supplémentaires révèlent que HP/UX n'est conforme qu'avec Unix 95, donc avant l'introduction des objets dynamiques. Il n'y a que Solaris (à partir de Solaris 8), AIX (à partir de 5L) et le HP Alpha V5.1A (né DEC) qui sont conformes à Unix 98.
Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on ne peut pas le conclure d'après la norme. (Ce qui me deçoit énormement. J'ai toujours cru qu'en respectant Posix et Open System, j'avais du code portable.)
HP-UX ne supporte pas dlopen() mais plutôt shl_load() sur les anciennes versions de HP-UX comme HP-UX 10.20 pour des raisons historiques.
Une fois la décision de standardiser dlopen() et al. prise, HP a évolué vers cette API. Cette transition prend du temps pour des raisons de compatibilité.
A partir de HP-UX 11.00 dlopen() commence à être supporté en particulier sur le nouveau sous-système 64-bit et sur HP-UX 11i : http://devrsrc1.external.hp.com/STK/impacts/i494.html Quelques couacs sur le sous-système 32-bit : * Je crois qu'il faut un patch pour avoir dlopen() sur les toutes premières versions de HP-UX 11.00. * Les toutes premières versions de dlopen() semblent boguées sur HP-UX, ce qui nécessite un patch même si dlopen() existe : http://lists.gnu.org/archive/html/libtool-patches/2001-06/msg00029.html
Dimitri Papadopoulos
Quelque vérifications supplémentaires révèlent que HP/UX n'est
conforme qu'avec Unix 95, donc avant l'introduction des objets
dynamiques. Il n'y a que Solaris (à partir de Solaris 8), AIX (à
partir de 5L) et le HP Alpha V5.1A (né DEC) qui sont conformes à
Unix 98.
Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on
ne peut pas le conclure d'après la norme. (Ce qui me deçoit
énormement. J'ai toujours cru qu'en respectant Posix et Open
System, j'avais du code portable.)
HP-UX ne supporte pas dlopen() mais plutôt shl_load() sur les anciennes
versions de HP-UX comme HP-UX 10.20 pour des raisons historiques.
Une fois la décision de standardiser dlopen() et al. prise, HP a évolué
vers cette API. Cette transition prend du temps pour des raisons de
compatibilité.
A partir de HP-UX 11.00 dlopen() commence à être supporté en particulier
sur le nouveau sous-système 64-bit et sur HP-UX 11i :
http://devrsrc1.external.hp.com/STK/impacts/i494.html
Quelques couacs sur le sous-système 32-bit :
* Je crois qu'il faut un patch pour avoir dlopen() sur les toutes
premières versions de HP-UX 11.00.
* Les toutes premières versions de dlopen() semblent boguées sur HP-UX,
ce qui nécessite un patch même si dlopen() existe :
http://lists.gnu.org/archive/html/libtool-patches/2001-06/msg00029.html
Quelque vérifications supplémentaires révèlent que HP/UX n'est conforme qu'avec Unix 95, donc avant l'introduction des objets dynamiques. Il n'y a que Solaris (à partir de Solaris 8), AIX (à partir de 5L) et le HP Alpha V5.1A (né DEC) qui sont conformes à Unix 98.
Ça ne veut pas dire que HP/UX ne supporte pas dlopen, mais qu'on ne peut pas le conclure d'après la norme. (Ce qui me deçoit énormement. J'ai toujours cru qu'en respectant Posix et Open System, j'avais du code portable.)
HP-UX ne supporte pas dlopen() mais plutôt shl_load() sur les anciennes versions de HP-UX comme HP-UX 10.20 pour des raisons historiques.
Une fois la décision de standardiser dlopen() et al. prise, HP a évolué vers cette API. Cette transition prend du temps pour des raisons de compatibilité.
A partir de HP-UX 11.00 dlopen() commence à être supporté en particulier sur le nouveau sous-système 64-bit et sur HP-UX 11i : http://devrsrc1.external.hp.com/STK/impacts/i494.html Quelques couacs sur le sous-système 32-bit : * Je crois qu'il faut un patch pour avoir dlopen() sur les toutes premières versions de HP-UX 11.00. * Les toutes premières versions de dlopen() semblent boguées sur HP-UX, ce qui nécessite un patch même si dlopen() existe : http://lists.gnu.org/archive/html/libtool-patches/2001-06/msg00029.html
Dimitri Papadopoulos
nico
Salut,
y a il un autre moyen de faire des "plugins" qui soit multi-os?
Oui tu peux les charger dynamiquement aussi sous linux que sous windows, mais pas de la même facon, la classe QLibrary de Qt fait tres bien cela (multiplatforme).
-- nico
Salut,
y a il un autre moyen de faire des "plugins" qui soit multi-os?
Oui tu peux les charger dynamiquement aussi sous linux que sous windows,
mais pas de la même facon, la classe QLibrary de Qt fait tres bien cela
(multiplatforme).
y a il un autre moyen de faire des "plugins" qui soit multi-os?
Oui tu peux les charger dynamiquement aussi sous linux que sous windows, mais pas de la même facon, la classe QLibrary de Qt fait tres bien cela (multiplatforme).
-- nico
Jean-Baptiste Nivoit
Jean-Marc Bourguet wrote:
J'avais le souvenir que dlopen etc n'etaient pas disposible sous HP/UX. Ou je me souviens mal ou les choses ont changes car cette API est en effet disponible sous HP-UX. HP-UX possede un shl_load qui est equivalent. Pour info Mac OS X propose
aussi dlopen & co (en fait dyld fourni une API legerement differente, mais il y a un wrapper 'dlcompat' qui fourni dlopen).
jb
Jean-Marc Bourguet wrote:
J'avais le souvenir que dlopen etc n'etaient pas disposible sous
HP/UX. Ou je me souviens mal ou les choses ont changes car cette API
est en effet disponible sous HP-UX.
HP-UX possede un shl_load qui est equivalent. Pour info Mac OS X propose
aussi dlopen & co (en fait dyld fourni une API legerement differente,
mais il y a un wrapper 'dlcompat' qui fourni dlopen).
J'avais le souvenir que dlopen etc n'etaient pas disposible sous HP/UX. Ou je me souviens mal ou les choses ont changes car cette API est en effet disponible sous HP-UX. HP-UX possede un shl_load qui est equivalent. Pour info Mac OS X propose
aussi dlopen & co (en fait dyld fourni une API legerement differente, mais il y a un wrapper 'dlcompat' qui fourni dlopen).