Project

General

Profile

Actions

Feature #5844

closed

/hipster: add geany and gobby editors (from SFE)

Added by Predrag Zečević about 8 years ago. Updated about 7 years ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
OI-Userland
Target version:
-
Start date:
2015-04-16
Due date:
% Done:

0%

Estimated time:
Difficulty:
Medium
Tags:
needs-triage

Description

Hi all,
Currently both editors core dumps on use. Since I like them, tried to compile and wasn't so heavy at all:

$ export PREFIX=/opt/SFW # I use this path to test

Start with geany:

$ pfexec pkg install -v pkg:/x11/library/libpthread-stubs # check package description
$ wget http://download.geany.org/geany-1.24.1.tar.bz2
$ tar xf geany-1.24.1.tar.bz2
$ cd geany-1.24.1
$ PKG_CONFIG_PATH=/usr/lib/pkgconfig ./configure --prefix=/opt/SFW --enable-the-force --with-gnu-ld # I guess system PKG_CONFIG_PATH can be omitted
$ gmake
$ pfexec gmake install

will try to investigate if plug-ins are so easy to compile too: http://plugins.geany.org/downloads.html

Another one is gobby:

$ wget http://releases.0x539.de/gobby/gobby-0.5.0.tar.gz 
$ pkg list -H libinfinity
library/libinfinity                               0.5.5-2015.0.0.0           i--

# newest version requires newer libinfinity, but /hipster provides only 0.5.5 (latest is 0.6.5) so use older version:
$ wget http://releases.0x539.de/gobby/gobby-0.4.94.tar.gz
$ tar xf gobby-0.4.94.tar.gz
$ cd gobby-0.4.94
$ LIBS="-lnsl -lsocket" ./configure --prefix=/opt/SFW
$ gmake
$ pfexec gmake install

Hopefully, other people can benefit from this (if you manage to add it into /hipster)

Regards.


Files

GeanyAndPlugins.png (118 KB) GeanyAndPlugins.png New Geany and its plugins Predrag Zečević, 2015-04-16 09:12 AM
geany-build-log.txt (142 KB) geany-build-log.txt Geany and Geany PlugIns compilation log Predrag Zečević, 2015-12-29 04:09 PM
Makefile (1.62 KB) Makefile geany editor Predrag Zečević, 2016-01-12 03:22 PM
Makefile (1.67 KB) Makefile geany-plugings Predrag Zečević, 2016-01-12 03:23 PM
geany-compile-failure-gcc-4.9.txt (22.1 KB) geany-compile-failure-gcc-4.9.txt GCC 4.9 Geany Compilation Failure Log Predrag Zečević, 2016-01-15 12:51 PM
Actions #1

Updated by Predrag Zečević about 8 years ago

Funny thing (forgot to say) is that gobby installs as 0.5:

$ /opt/SFW/share/applications/gobby-0.5.desktop
$ /opt/SFW/bin/gobby-0.5
$ /opt/SFW/share/man/man1/gobby-0.5.1

That can be easilly fixed.

Regards.

Actions #2

Updated by Predrag Zečević about 8 years ago

And,

have compiled geany plugins (disabled 2: geanylua and multiterm because compilation failure. Had no time to analyze more).
This was procedure:

$ wget http://plugins.geany.org/geany-plugins/geany-plugins-1.24.tar.gz
$ tar xf geany-plugins-1.24.tar.gz 
$ cd geany-plugins-1.24

$ CC=gcc PKG_CONFIG_PATH=/opt/SFW/lib/pkgconfig CFLAGS="-lstdc++ -m32 -I/usr/include/vte-0.0/vte" CFXXFLAGS="-I/usr/include/vte-0.0/vte" ./waf configure --prefix=/opt/SFW \
  --enable-plugins=addons,autoclose,codenav,commander,debugger,defineformat,devhelp,geanydoc,geanyextrasel,geanygendoc,geanyinsertnum,geanylatex,geanylipsum,geanymacro,geanyminiscript,geanynumberedbookmarks,geanypg,geanyprj,geanypy,geanysendmail,geanyvc,geniuspaste,gproject,markdown,pairtaghighlighter,pohelper,scope,shiftcolumn,spellcheck,tableconvert,treebrowser,updatechecker,webhelper,xmlsnippets

$ ./waf build
$ pfexec ./waf install

Btw, binaries are 32 bit, that is why I have passed '-m32' (probably wasn't needed at all):

$ file  /opt/SFW/bin/gobby-0.5 /opt/SFW/bin/geany 
/opt/SFW/bin/gobby-0.5: ELF 32-bit LSB executable 80386 Version 1, dynamically linked, not stripped, no debugging information available
/opt/SFW/bin/geany:     ELF 32-bit LSB executable 80386 Version 1, dynamically linked, not stripped

In attachment I have loaded snapshot of running geany with all plugins 'visible'

Regards.

Actions #3

Updated by Alexander Pyhalov about 8 years ago

We already provide gobby - editor/gobby

Actions #4

Updated by Predrag Zečević about 8 years ago

Sorry, miissed that info.

Best regards.

Actions #5

Updated by Predrag Zečević over 7 years ago

Hi again,

new versions og geany and geany-plugins: 1.25

Geany compilation isn't changed:

$ ./configure --prefix=${PREFIX} --enable-the-force --with-gnu-ld

Geany Plugins has been changed a bit:

$ CC=gcc PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig CFLAGS="-lstdc++ -m32 -I/usr/include/vte-0.0/vte" CFXXFLAGS="-I/usr/include/vte-0.0/vte" ./waf configure --prefix=${PREFIX} --skip-plugins=multiterm

It compiles and is i use.

Regards.

Actions #6

Updated by Aurélien Larcher over 7 years ago

If you want to add geany and geany-plugins to oi-userland please prepare the component Makefiles.
As last time I can prepare the manifest, test and PR.
Cheers

Aurelien

Actions #7

Updated by Predrag Zečević over 7 years ago

Hi,

this is used for compilation (PREFIX is custom one, so not to mess with OS):

  GEANY_ED=1.26
  GEANY_PI=1.26

  pkg info x11/library/libpthread-stubs >/dev/null 2>&1
  [[ $? -eq 1 ]] && pfexec pkg install -v pkg:/x11/library/libpthread-stubs

  cd ${buildDIR}
  wget --continue http://download.geany.org/geany-${GEANY_ED}.tar.bz2
  [[ -d geany-${GEANY_ED} ]] && rm -rf geany-${GEANY_ED}
  tar xf geany-${GEANY_ED}.tar.bz2 && cd geany-${GEANY_ED}
  PKG_CONFIG_PATH=/usr/lib/pkgconfig ./configure --prefix=${PREFIX} --enable-the-force --with-gnu-ld # I guess system PKG_CONFIG_PATH can be omitted
  gmake
  pfexec gmake install

  cd ${buildDIR}
  wget --continue http://plugins.geany.org/geany-plugins/geany-plugins-${GEANY_PI}.tar.gz
  [[ -d geany-${GEANY_PI} ]] && rm -rf geany-${GEANY_PI}
  tar xf geany-plugins-${GEANY_PI}.tar.gz && cd geany-plugins-${GEANY_PI}

  CC=gcc PKG_CONFIG_PATH=${PREFIX}/lib/pkgconfig CFLAGS="-lstdc++ -m32 -I/usr/include/vte-0.0/vte" CFXXFLAGS="-I/usr/include/vte-0.0/vte" \
     ./waf configure --prefix=${PREFIX} --skip-plugins=multiterm
  ./waf build
  pfexec ./waf install

Log of this build is attached (distributed makefiles are used, let me know if you want me to attach those here).
For plugins, I had to omit multiterm, because it was breaking compilation).

Regards.

Actions #8

Updated by Aurélien Larcher over 7 years ago

Hello,
sorry about the delay, I did not see your message earlier.

On a Hipster installation, could you clone oi-userland to your home directory:

git clone https://github.com/OpenIndiana/oi-userland.git

cd oi-userland

gmake setup

cd components

mkdir geany

then copy the Makefile from components/gobby for example and modify it such that gmake install completes ?

Actions #9

Updated by Predrag Zečević over 7 years ago

Actions #10

Updated by Predrag Zečević over 7 years ago

Actions #11

Updated by Predrag Zečević over 7 years ago

I have uploaded Makefiles for geany and geany-plugins.

Not sure if those are prepared properly...

Please, let me know if you need anything else.

Best regards.

Actions #12

Updated by Aurélien Larcher over 7 years ago

Hi Predrag,
Thank you for the Makefiles, this is great !
Even if further modifications are needed this is already helping a lot.
I will get back to you after I get the chance to try them out.
Best regards,

Aurelien

Actions #13

Updated by Predrag Zečević over 7 years ago

Hi,

i have found (used fresh /hipster installation this time) that geany editor build requires also

x11/library/libpthread-stubs
developer/build/pkg-config
text/intltool
text/gnu-gettext

packages (probably for run too).

And forgot to say, compilation fails with gcc 4.9, so I am using 4.8 which does job completely...
(from /localhostoih repository, because its components are required by libreoffice4 - -guess you can use /hipster 4.8 version easy)

Regards.

Actions #14

Updated by Aurélien Larcher over 7 years ago

Hello,
can you paste how the compilation fails with 4.9 ?
Using 4.8 as a workaround is not a solution especially if you use SFE's.
Regards

Aurelien

Actions #15

Updated by Predrag Zečević over 7 years ago

Hi,
find log in attached file.

Regards.

Actions #16

Updated by Aurélien Larcher over 7 years ago

Could be that some dependent library in oi-userland needs to be recompiled with 4.9.
Could you try to find out ?

Actions #17

Updated by Predrag Zečević over 7 years ago

Hi,

eh, could be lot... For example (https://www.illumos.org/issues/6557) shows that perl 5.22 was compiled with gcc 4.8 (and I guess plenty of other components).

Not sure how to check which gcc was used?

After googling a bit, i found some examples, so this might be problem:

$ file /usr/lib/vte-0.0/slowcat
/usr/lib/vte-0.0/slowcat:       ELF 32-bit LSB executable 80386 Version 1, dynamically linked, not stripped

$ readelf -p .comment /usr/lib/vte-0.0/slowcat

String dump of section '.comment':
  [     1]  @(#)SunOS 5.11 illumos-ae44990 August 2013^J
  [    2d]  ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1749 (illumos)

$ objdump -s --section .comment !$
objdump -s --section .comment /usr/lib/vte-0.0/slowcat

/usr/lib/vte-0.0/slowcat:     file format elf32-i386-sol2

Contents of section .comment:
 0000 00402823 2953756e 4f532035 2e313120  .@(#)SunOS 5.11 
 0010 696c6c75 6d6f732d 61653434 39393020  illumos-ae44990 
 0020 41756775 73742032 3031330a 006c643a  August 2013..ld:
 0030 20536f66 74776172 65204765 6e657261   Software Genera
 0040 74696f6e 20557469 6c697469 6573202d  tion Utilities -
 0050 20536f6c 61726973 204c696e 6b204564   Solaris Link Ed
 0060 69746f72 733a2035 2e31312d 312e3137  itors: 5.11-1.17
 0070 34392028 696c6c75 6d6f7329 0000      49 (illumos)..  

As you might see this was build way back in 2013... Probably with gcc 4.8 (not OBVIOUS).

Regards.

Actions #18

Updated by Predrag Zečević over 7 years ago

For example 'gobby' editor has info:

$ readelf -p .comment /usr/bin/gobby

String dump of section '.comment':
  [     1]  @(#)SunOS 5.11 illumos-ae44990 August 2013^J
  [    2d]  ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1749 (illumos)

not there, but:
$ strings -a /usr/bin/gobby | grep GCC
GCC_3.0

Just an example.

Actions #19

Updated by Aurélien Larcher over 7 years ago

Hello,
I compiled succesfully with GCC 4.9 on fresh Hipster.
Here is the component:

https://github.com/alarcher/oi-userland/tree/geany126

I will check the plugins later.

Actions #20

Updated by Aurélien Larcher over 7 years ago

Hello Predrag,
geany is pushed to oi-userland:

https://github.com/OpenIndiana/oi-userland/pull/1638

Could you test it and give feedback on this ticket when it lands in the repository ?
I will get back to you when I have time for the plugins.
Best regards

Aurelien

Actions #21

Updated by Alexander Pyhalov about 7 years ago

  • Status changed from New to Resolved

We have both in OI Hipster now.

Actions

Also available in: Atom PDF