[grisbi-devel] go-optionmenu.c:456:5: error: use of undeclared identifier 'tmp_filename'

Ludovic Rousseau ludovic.rousseau at gmail.com
Thu Sep 22 20:59:37 CEST 2016


Le 21 septembre 2016 à 16:47, Pierre Biava <pierre.biava at orange.fr> a écrit
:

> Ludovic Rousseau a écrit le 21/09/2016 à 09:50 :
>
> Bonjour Ludovic,
>
> Bonjour,
>>
>> La compilation de la branche master échoue (sur macOS en tout cas) avec:
>>
>>   CC       go-optionmenu.lo
>> go-optionmenu.c:456:5: error: use of undeclared identifier 'tmp_filename'
>>     tmp_filename = g_build_filename (gsb_dirs_get_pixmaps_dir (),
>> "arrow...
>>     ^
>> go-optionmenu.c:457:5: error: use of undeclared identifier 'arrow_left'
>>     arrow_left = gtk_image_new_from_file (tmp_filename);
>>     ^
>> go-optionmenu.c:457:43: error: use of undeclared identifier 'tmp_filename'
>>     arrow_left = gtk_image_new_from_file (tmp_filename);
>>                                           ^
>> go-optionmenu.c:458:13: error: use of undeclared identifier 'tmp_filename'
>>     g_free (tmp_filename);
>>             ^
>> go-optionmenu.c:485:4: warning: missing field 'value_table' initializer
>>       [-Wmissing-field-initializers]
>>                         };
>>
>
> Un oubli malheureux lors d'un copié collé. Ce qui est curieux c'est que je
> compile toujours avant de pousser un commit.
>

J'ai corrigé 2 erreurs de compilation.

Maintenant j'ai une erreur au link:
  CCLD     grisbi
duplicate symbol _default_couleur_bet_transfert in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _couleur_bet_transfert in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _default_couleur_bet_division in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _couleur_bet_division in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _default_couleur_bet_future in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _couleur_bet_future in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _default_couleur_bet_solde in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
duplicate symbol _couleur_bet_solde in:
    ./.libs/libgrisbi.a(gsb_color.o)
    ./.libs/libgrisbi.a(gsb_rgba.o)
ld: 8 duplicate symbols for architecture x86_64


Il semble que gsb_rgba.c soit une  version améliorée de gsb_color.c.
Si l'enlève gsb_color.c de Makefile.am je n'ai plus les symboles dupliqués
mais du coup il m'en manque :

Undefined symbols for architecture x86_64:
  "_gsb_color_get_strings_to_save", referenced from:
      _gsb_file_save_save_file in libgrisbi.a(gsb_file_save.o)
  "_gsb_color_initialise_couleurs_par_defaut", referenced from:
      _main in main.o
  "_gsb_color_set_colors_to_default", referenced from:
      _init_variables in libgrisbi.a(traitement_variables.o)
  "_gsb_color_set_couleur", referenced from:
      _gsb_file_load_start_element in libgrisbi.a(gsb_file_load.o)
  "_gsb_color_set_couleur_with_indice", referenced from:
      _gsb_file_load_start_element in libgrisbi.a(gsb_file_load.o)
ld: symbol(s) not found for architecture x86_64


Travis-CI trouve d'autres erreurs :

./.libs/libgrisbi.a(accueil.o): In function `gsb_main_page_get_table_for_
accounts':
/home/travis/build/grisbi/grisbi/src/accueil.c:860: undefined reference to
`gtk_widget_set_margin_start'
/home/travis/build/grisbi/grisbi/src/accueil.c:861: undefined reference to
`gtk_widget_set_margin_end'
./.libs/libgrisbi.a(accueil.o): In function `creation_onglet_accueil':
/home/travis/build/grisbi/grisbi/src/accueil.c:1793: undefined reference to
`gtk_widget_set_margin_start'
/home/travis/build/grisbi/grisbi/src/accueil.c:1794: undefined reference to
`gtk_widget_set_margin_end'
./.libs/libgrisbi.a(gsb_form.o): In function `gsb_form_create_widgets':
/home/travis/build/grisbi/grisbi/src/gsb_form.c:230: undefined reference to
`gtk_widget_set_margin_end'
./.libs/libgrisbi.a(utils.o): In function `utils_labels_set_alignement':
/home/travis/build/grisbi/grisbi/src/utils.c:1053: undefined reference to
`gtk_label_set_xalign'
./.libs/libgrisbi.a(utils.o): In function `utils_widget_set_padding':
/home/travis/build/grisbi/grisbi/src/utils.c:1072: undefined reference to
`gtk_widget_set_margin_start'
/home/travis/build/grisbi/grisbi/src/utils.c:1073: undefined reference to
`gtk_widget_set_margin_end'
./.libs/libgrisbi.a(utils.o): In function `utils_labels_set_alignement':
/home/travis/build/grisbi/grisbi/src/utils.c:1054: undefined reference to
`gtk_label_set_yalign'
./.libs/libgrisbi.a(fenetre_principale.o): In function
`gsb_gui_create_general_widgets':
/home/travis/build/grisbi/grisbi/src/fenetre_principale.c:111: undefined
reference to `gtk_widget_set_margin_end'
collect2: error: ld returned 1 exit status

La différence est que je compile sous Mac OS X alors que Travis-CI utilise
Ubuntu.

Je ne sais pas trop quoi faire maintenant. Pierre, tu dois avoir des
modifications que tu n'as pas poussé.

Je dois avoir un problème de nettoyage du code avant compilation complète.
> Il faut que je regarde ça.
>

On dirait bien :-)

à+

-- 
 Dr. Ludovic Rousseau
-------------- section suivante --------------
Une pi�ce jointe HTML a �t� nettoy�e...
URL: <http://listes.grisbi.org/pipermail/devel/attachments/20160922/693c1cfc/attachment-0001.htm>


More information about the devel mailing list