Hello Nicolas,
I have downloaded the code you have sent me and the latest Valide source
from SVN (I think it was 511) but still when I try to compile the project
with your example it compiles fine (by the way the compiler doesn't
recognize "throws PluginError" so I removed it for now... ), but when I try
to run Valide I get:

*ark...@arkadi-laptop:~/Projects/valide$ valide
valide: symbol lookup error:
/usr/local/lib/valide/plugins/terminal/libterminal.so: undefined symbol:
vte_terminal_new
*
Maybe you have some another idea?

On Mon, Mar 29, 2010 at 8:09 PM, Nicolas Joseph <
gege2...@redaction-developpez.com> wrote:

> Hello,
>
> I have added, in trunk, the support for specific compilation configuration
> for plugins.
>
> Try the attached sample plugin, I don't have problem.
>
> 2010/3/29 Arkadi Viner <arkash...@gmail.com>
>
>> Hello,
>> I'm trying to write a simple plugin for ValaIde, which is called
>> 'Terminal',
>> which should display a terminal window (or maybe there will be an option
>> to
>> open more then one..) inside the IDE (like in geany IDE for example..).
>> I took most of the code from the TODO plugin and changed it for my needs.
>> My
>> problem is when I try to create a Terminal widget using -
>> this.terminal = new Terminal();
>> , it compiles fine but *when I try to run ValaIde it doesn't start and I
>> get
>> this message:*
>> *ark...@arkadi-laptop:~/Projects/valide$ valide
>> valide: symbol lookup error:
>> /usr/local/lib/valide/plugins/terminal/libterminal.so: undefined symbol:
>> vte_terminal_new   *
>>
>> *My plugin's code:*
>>
>> using Valide;
>> using Vte;
>>
>> public class Valide_Terminal : Plugin, Object
>> {
>>  private Gtk.ScrolledWindow scrolled_window;
>>
>>  Terminal terminal; //with this line only it compiles and run fine
>>
>>  public string path { get; construct set; }
>>
>>  public Window window { get; construct set; }
>>
>>  private bool only_load_active_tab
>>  {
>>    get
>>    {
>>      return this.window.config_manager.get_boolean ("Todo",
>> "only-load-active-tab");
>>    }
>>    set
>>    {
>>      this.window.config_manager.set_boolean ("Todo",
>> "only-load-active-tab", value);
>>    }
>>  }
>>
>>  construct
>>  {
>>    this.scrolled_window = new Gtk.ScrolledWindow (null, null);
>>
>>    this.scrolled_window.set_policy (Gtk.PolicyType.AUTOMATIC,
>>                                     Gtk.PolicyType.AUTOMATIC);
>>
>>    this.terminal = new Terminal(); //with this line it compiles fine but
>> doesn't run...
>>
>>    try
>>    {
>>      Utils.register_icon (Path.build_filename (Config.PIXMAPS_DIR,
>> "plugins",
>>                                                "terminal.png"),
>> "terminal-plugin-icon");
>>    }
>>    catch (Error e)
>>    {
>>      debug (e.message);
>>    }
>>    this.window.add_widget (this.scrolled_window, "terminal-plugin",
>> _("Terminal"),
>>                            Window.Placement.BOTTOM,
>> "terminal-plugin-icon");
>>  }
>>
>>  ~Todo ()
>>  {
>>    this.window.remove_widget (this.scrolled_window);
>>  }
>>
>>    public Gtk.Widget create_configure_dialog ()
>>    {
>>      Gtk.VBox vbox;
>>      Gtk.CheckButton check;
>>
>>      vbox = new Gtk.VBox (true, 0);
>>
>>      check = new Gtk.CheckButton.with_label (_("Only load symbols for
>> active tab"));
>>      check.set_active (this.only_load_active_tab);
>>      check.toggled.connect ((s) => {
>>        this.only_load_active_tab = s.get_active ();
>>      });
>>      vbox.pack_start (check, true, true, 0);
>>
>>      return vbox;
>>  }
>> }
>>
>> [ModuleInit]
>> public Type register_plugin ()
>> {
>>  return typeof (Valide_Terminal);
>> }
>>
>> public Gtk.Widget create_configure_dialog (Valide_Terminal self)
>> {
>>  return self.create_configure_dialog ();
>> }
>>
>> Please help..
>>
>> _______________________________________________
>> Vala-list mailing list
>> Vala-list@gnome.org
>> http://mail.gnome.org/mailman/listinfo/vala-list
>>
>>
> --
> Nicolas Joseph
>
_______________________________________________
Vala-list mailing list
Vala-list@gnome.org
http://mail.gnome.org/mailman/listinfo/vala-list

Reply via email to