Partage
  • Partager sur Facebook
  • Partager sur Twitter

Latexmk - Problème références bibliographiques

Sujet résolu
18 décembre 2014 à 19:26:07

Bonjour à tous,

après plusieurs recherches et du fait de mes débuts avec latex, je ne parviens pas à comprendre pourquoi lors de mes compilations avec latexmk mes références bibliographiques ne fonctionnent pas :

\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\usepackage{setspace}
\usepackage[citestyle=verbose-trad2]{biblatex}
\usepackage[maxlevel=3]{csquotes}
\setmainlanguage{french}
\bibliography{bibliographie.bib}

\begin{document}

\part*{FDL OCASIO 1997}

\section{Références}

\cite{Ocasio1997}

\end{document}


Le PDF obtenu affiche Ocasio1997 en lieu et place de la référence complète...

Mon fichier bibliographie.bib étant :

@Article{Ocasio1997,
  Title                    = {Towards an attention-based view of the firm},
  Author                   = {William Ocasio},
  Journal                  = {Strategic Management Journal},
  Year                     = {1997},
  Pages                    = {187-206},
  Volume                   = {18},
  Entrysubtype             = {article},
  Issue                    = {Summer Special Issue},
  Journaltitle             = {Strategic Management Journal}
}


En espérant poster mon problème au bon endroit et de la bonne façon... J'ai tenté plusieurs tutoriels ou ouvrages mais je bloque... Je remercie ceux qui accepterons de m'apporter leur aide.

P.S. : j'utilise MikTex et TexMaker sur Windows 8...

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
18 décembre 2014 à 20:05:25

Salut,

Le PDF obtenu affiche Ocasio1997 en lieu et place de la référence complète...

Bah c'est normal, c'est ce que tu lui demandes... :-° Il faut lui dire d'insérer une bibliographie avec la commande \bibliography (qui doit être dans le cœur du texte à l'emplacement souhaité, pas en préambule).

Tu as fais un coup de bibtex aussi ?

Bref, j'ai l'impression que tu n'as pas beaucoup cherché comment on faisait une bibliographie, quand même...

  • Partager sur Facebook
  • Partager sur Twitter
18 décembre 2014 à 20:33:29

J'ai essayé hors préambule aussi... Je retente.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
18 décembre 2014 à 20:34:07

Bonsoir,

@dri1 : il utilise biblatex, le fonctionnement est différent de BibTeX ;)

Quelques précisions sur le fonctionnement de BibLaTeX et XeLaTeX :

  • le package ìnputenc` n'est pas utile avec XeLaTeX, au contraire même, il génère des erreurs;
  • \bibliography sert bien a indiquer le fichier bibliographique à utiliser, tu l'utilises bien;
  • \cite sert à indiquer, dans un texte, a la suite d'une citation, que tu places une référence bibliographique. Il ne sert en aucun cas à afficher la bibliographie;
  • pour afficher la bibliographie en elle-même, c'est la commande \printbibliography

Essaye de compiler sans latexmk, c'est à dire en faisant :

  • xelatex <nom_fichier.tex>
  • biber <nom_fichier_sans_extension> (le même nom que ton fichier .tex, mais biber est assez grand pour retrouver les fichiers seul)</nom_fichier_sans_extension>
  • xelatex <nom_fichier.tex> (inclusion de la bibliographie dans le document)
  • xelatex <nom_fichier.tex> (pour faire correspondre les éventuelles références croisées).

Une fois les erreurs corrigées, ton fichier compile et la citation apparait bien (du moins chez moi).

-
Edité par Anonyme 18 décembre 2014 à 20:35:39

  • Partager sur Facebook
  • Partager sur Twitter
18 décembre 2014 à 20:35:04

Je dois mal m'y prendre avec latexmk. Dans quel ordre m'y prendre pour bibtex ?
  • Partager sur Facebook
  • Partager sur Twitter
18 décembre 2014 à 21:11:39

Ok merci cestpasmoi. Ça me semble clair. Je tente cela !
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
18 décembre 2014 à 22:05:21

@dri1 : il utilise biblatex, le fonctionnement est différent de BibTeX ;)

Ah, j'avais même pas vu... :-°

  • Partager sur Facebook
  • Partager sur Twitter
18 décembre 2014 à 22:21:18

Bon, je pense avoir pris en compte les conseils (voir ci-dessous) mais malheureusement, je n'obtiens toujours rien... à part des messages indiquant des packages manquants. 

\documentclass[12pt,a4paper]{article}
\usepackage{fontspec}
\usepackage{xunicode}
\usepackage{polyglossia}
\usepackage{setspace}
\usepackage[citestyle=verbose-trad2]{biblatex}
\usepackage[maxlevel=3]{csquotes}
\setmainlanguage{french}
\bibliography{bibliographie.bib}

\begin{document}

\part*{FDL OCASIO 1997}

\section{Références}

\printbibliography

\end{document}


J'obtiens : 

No file test.bbl.

Package biblatex Info: Reference section=0 on input line 11.

Package biblatex Info: Reference segment=0 on input line 11.

LaTeX Warning: Empty bibliography on input line 17.

Ainsi que :

Package biblatex Warning: No "backend" specified, using Biber backend.

(biblatex)                To use BibTeX, load biblatex with 

(biblatex)                the "backend=bibtex" option.

J'ai pourtant installé MikTex il y a peu...

-
Edité par Aeternus 18 décembre 2014 à 22:24:42

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
18 décembre 2014 à 22:35:08

Les erreurs sont normales, tu n'as cité aucune source. Pour que la bibliographie s'affiche, il faut que tu ajoutes au moins une commande \cite dans ton document. Si tu ne cites personne dans le document, ajoutes juste \nocite{*}(où * peut être remplacé par une oeuvre précise de ta bibliographie, l'étoile les affiche toute) pour ajouter artificiellement des oeuvres à ta bibliographie.

La seconde erreur que tu obtiens, te demande de préciser le compilateur pour biblatex. Passes l'option backend=biber au package biblatex et ça va disparaitre.

Lorsque tu compiles, il faut bien utiliser biber et non bibtex (sans le "t"). Et utilises bien la séquence de compilation que je t'ai donné dans mon précédent message.

Testes ce code, il fonctionne chez moi, et devrait également t'aider à comprendre tes erreurs.

    \documentclass[12pt,a4paper]{article}

    \usepackage{fontspec}
    \usepackage{xunicode}
    \usepackage{polyglossia}
    \usepackage{setspace}
    \usepackage[citestyle=verbose-trad2, backend=biber]{biblatex}
    \usepackage{csquotes}

    \setmainlanguage{french}
    \bibliography{bibliographie.bib}

    \begin{document}
 
        	\part*{FDL OCASIO 1997}
 
        		\nocite{*}

        		\printbibliography
    
     \end{document}

-
Edité par Anonyme 18 décembre 2014 à 22:41:38

  • Partager sur Facebook
  • Partager sur Twitter
18 décembre 2014 à 22:45:10

Je n'obtiens malheureusement toujours rien en appliquant à la lettre l'ordre de compilation...

Quelques messages :

No file test.bbl.
Package biblatex Info: Reference section=0 on input line 13.
Package biblatex Info: Reference segment=0 on input line 13.

LaTeX Warning: Empty bibliography on input line 19.
LaTeX Warning: There were undefined references.




-
Edité par Aeternus 19 décembre 2014 à 2:00:28

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
19 décembre 2014 à 12:05:16

Etrange, le code que je t'ai fourni compile parfaitement avec la séquence de compilation que je t'ai donné aussi. Est-ce que tu peux poster le contenu exact de tes fichiers, la procédures exacte que tu utilises pour compiler ainsi que le fichier .log que tu obtiens.

  • Partager sur Facebook
  • Partager sur Twitter
19 décembre 2014 à 12:28:59

La procédure (effectuée via l'invite de commande et tentée aussi via TexMaker), j'ai mon fichier test.tex (copié collé de ton code) et bibliographie.bib dans un même dossier :

xelatex test.tex

biber test

xelatex test.tex

xelatex test.tex

Encore merci pour ton aide...

Le fichier log :

 supprimé

-
Edité par Aeternus 23 décembre 2014 à 12:04:32

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
19 décembre 2014 à 18:10:08

Malheureusement je n'ai plus aucune idée, et vu que je suis sous Mac, je ne peux pas reproduire exactement ton problème. Essaye de voir si ça fonctionne en compilant avec pdflatex. Ça implique quelques changements dans ton préambule. Il faut que tu remplaces :

  • fontspec et xunicode par \usepackage[utf8]{inputenc} et \usepackage[T1]{fontenc};
  • polyglossia par babel avec l'option french;
  • que tu supprimes \setmainlanguage.
  • Partager sur Facebook
  • Partager sur Twitter
21 décembre 2014 à 19:39:46

Malheureusement, cela ne change rien au problème car rien ne s'affiche... cela pourrait provenir d'un problème avec mon fichier .bib ?

 log supprimé

-
Edité par Aeternus 22 décembre 2014 à 20:35:26

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
21 décembre 2014 à 22:59:21

En fait, il y a plusieurs erreurs dans ton fichier .log qui me laissent perplexe.

Package biblatex Info: ... file 'test.bbl' not found.

Ce fichier est créé par biber à partir d'un fichier .bcf. Le fichier .bcf est créé par LaTeX. Est-ce que tu pourrais nous donner le log que sort biber ? (fichier .blg de mémoire).

Package biblatex Warning: Please (re)run Biber on the file:
(biblatex)                test
(biblatex)                and rerun LaTeX afterwards.

Là, clairement il te dit que quelque chose ne va pas et te dit de relancer biber.

Ton problème est vraiment étrange et je n'arrive pas bien à saisir ce qui ne va pas.

-
Edité par Anonyme 21 décembre 2014 à 23:08:10

  • Partager sur Facebook
  • Partager sur Twitter
22 décembre 2014 à 13:01:53

-
Edité par Aeternus 22 décembre 2014 à 20:36:14

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
22 décembre 2014 à 13:44:58

Non non, c'est bien le fichier .blg qui contient le log. C'est le même contenu que ce qu'affiche la console quand tu lances biber.

Édites tes messages pour supprimer les logs et rendre la navigation sur la page un peu plus agréable ;)

  • Partager sur Facebook
  • Partager sur Twitter
22 décembre 2014 à 20:36:18

voici le contenu du fichier .blg après Biber :

[3] 73b5ab1d.pm:320> INFO - This is Biber 1.9

[4] 73b5ab1d.pm:323> INFO - Logfile is 'test.blg'

il manque d'ailleurs à la fin ce message qui s'affiche dans mon invite de commande :

read_file 'C:\Users\...\AppData\Local\Temp\par-4572776e\cache-c38a9b97a81d339b4947ba00f0aacefe00497\recode_data.xml' - sysopen: No such file or directory at C:\Users\...\AppData\Local\Temp\par-4572776e\cache-c38a9b97a81d339b4947ba00f0aacefe00497\bda77484.pm line 112.

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
22 décembre 2014 à 21:58:58

Ça y est, j'ai compris ce qui se passe. J'ai eu le même problème y'a pas longtemps. En fait, Biber est écrit en Perl (il me semble) et il créer un cache. Parfois le cache est corrompu et il faut le supprimer. Je t'oriente vers ce sujet sur stackexchange qui avait corrigé le problème chez moi.

Une fois que le cache est supprimé, tu relance biber. Normalement, si tout s'est bien passé, il va t'indiquer que le résultat se trouve dans le fichier .bbl, le fameux fichier qu'il te manque depuis le début de toute ta galère ;)

  • Partager sur Facebook
  • Partager sur Twitter
23 décembre 2014 à 12:15:49

Un grand merci ! 

Cela fonctionne en effet.

Par contre, ce cache sera à supprimer à chaque fois ?

Encore merci pour ton aide !

-
Edité par Aeternus 23 décembre 2014 à 12:16:52

  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
23 décembre 2014 à 13:31:13

De ce que j'ai pu constater, c'est assez aléatoire. J'ai du le faire 2 fois en une semaine et depuis plus rien.

Concernant ta question de base, pour utiliser latexmk avec XeLaTeX, il faut créer un fichier latexmkrc (sans extension) à coté de ton fichier à compiler et y mettre :

$pdf_mode = "1";
$pdflatex = "xelatex";

la première ligne indique qu'il faut compiler en pdf, la seconde indique le moteur à utiliser.

À toi les joies de LaTeX !

  • Partager sur Facebook
  • Partager sur Twitter
30 décembre 2014 à 13:37:51

Yes, j'ai ce fichier depuis le départ quand je tente latexmk. Maintenant tout fonctionne. Plusieurs fois à suivre... Merci pour tout.
  • Partager sur Facebook
  • Partager sur Twitter
10 août 2023 à 12:11:33 - Message modéré pour le motif suivant : Merci de créer votre propre sujet


10 août 2023 à 16:25:22

@IbrahimCisse35 Bonjour, merci de ne pas squatter le sujet résolu des autres pour une nouvelle question, créer votre propre sujet dans le respect des règles du forum en nous transmettant le code que vous avez écrit inséré sur le forum à l'aide de l'outil d'intégration de code soit le bouton code </>.

Déterrage

Citation des règles générales du forum :

Avant de poster un message, vérifiez la date du sujet dans lequel vous comptiez intervenir.

Si le dernier message sur le sujet date de plus de deux mois, mieux vaut ne pas répondre.
En effet, le déterrage d'un sujet nuit au bon fonctionnement du forum, et l'informatique pouvant grandement changer en quelques mois il n'est donc que rarement pertinent de déterrer un vieux sujet.

Au lieu de déterrer un sujet il est préférable :

  • soit de contacter directement le membre voulu par messagerie privée en cliquant sur son pseudonyme pour accéder à sa page profil, puis sur le lien "Ecrire un message"
  • soit de créer un nouveau sujet décrivant votre propre contexte
  • ne pas répondre à un déterrage et le signaler à la modération

Je ferme ici.

  • Partager sur Facebook
  • Partager sur Twitter