Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Oct 2014 12:01:07 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 194239] New: gnustep-base on arm - package needs libiconv and binaries segfault
Message-ID:  <bug-194239-13@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=194239

            Bug ID: 194239
           Summary: gnustep-base on arm - package needs libiconv and
                    binaries segfault
           Product: Ports Tree
           Version: Latest
          Hardware: Any
                OS: Any
            Status: Needs Triage
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: freebsd-ports-bugs@FreeBSD.org
          Reporter: direct727@gmail.com

Can compile gnustep-base on a Raspberry Pi now. The first time I've been able
to compile gnustep-base. However binaries built using gnustep-base are
segfaulting

1. The gnustep-base package won't compile unless the libiconv package being
installed. So the libiconv needs to be added as a hard dependency, which it
isn't at the moment.


2. GNU step binaries are segfaulting when they call into the Foundation
library. For instance if I create GNUstep "Hello World" program and call
printf("Hello World"), this runs. However if I change the printf call to
NSLog(@"Hello World"), the program segfaults.

# uname -a 
FreeBSD raspberry-pi 10.1-RC1 FreeBSD 10.1-RC1 #0 r272463: Fri Oct  3 07:27:18
UTC 2014     root@releng1.nyi.freebsd.org:/usr/obj/arm.armv6/usr/src/sys/RPI-B 
arm

Compiled libobjc2 and gnustep-base with the following environment variables
set:-
WITH_DEBUG=yes
CFLAGS=-integrated-as


source.m
-----------------------
#include <Foundation/Foundation.h>

int main (int argc, char ** argv) {
  NSLog(@"Hello world...");
}


GNUmakefile 
-----------------------
include $(GNUSTEP_MAKEFILES)/common.make

debug=yes

${TOOL_NAME}_OBJCFLAGS = -fobjc-arc
TOOL_NAME = hello
hello_OBJC_FILES = source.m

include $(GNUSTEP_MAKEFILES)/tool.make


Compilation...
----------
$ ls
GNUmakefile    obj        source.m
$ game
This is gnustep-make 2.6.6. Type 'gmake print-gnustep-make-help' for help.
Making all for tool hello...
 Compiling file source.m ...
 Linking tool hello ...
$ ./obj/hello
Segmentation fault (core dumped)


gdb
--------------
$ gdb obj/hello hello.core
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "armv6-marcel-freebsd"...(no debugging symbols
found)...
Core was generated by `hello'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from
/usr/local/GNUstep/System/Library/Libraries/libgnustep-base.so.1.24...done.
Loaded symbols for
/usr/local/GNUstep/System/Library/Libraries/libgnustep-base.so.1.24
Reading symbols from /usr/local/lib/libobjc.so.4.6...done.
Loaded symbols for /usr/local/lib/libobjc.so.4.6
Reading symbols from /usr/local/lib/libgmp.so.10...done.
Loaded symbols for /usr/local/lib/libgmp.so.10
Reading symbols from /usr/local/lib/libgnutls.so.28...done.
Loaded symbols for /usr/local/lib/libgnutls.so.28
Reading symbols from /usr/local/lib/libgcrypt.so.20...done.
Loaded symbols for /usr/local/lib/libgcrypt.so.20
Reading symbols from /usr/local/lib/libxslt.so.2...done.
Loaded symbols for /usr/local/lib/libxslt.so.2
Reading symbols from /usr/local/lib/libxml2.so.2...done.
Loaded symbols for /usr/local/lib/libxml2.so.2
Reading symbols from /lib/libz.so.6...done.
Loaded symbols for /lib/libz.so.6
Reading symbols from /lib/libm.so.5...done.
Loaded symbols for /lib/libm.so.5
Reading symbols from /usr/local/lib/libffi.so.6...done.
Loaded symbols for /usr/local/lib/libffi.so.6
Reading symbols from /lib/libkvm.so.6...done.
Loaded symbols for /lib/libkvm.so.6
Reading symbols from /usr/lib/librt.so.1...done.
Loaded symbols for /usr/lib/librt.so.1
Reading symbols from /lib/libthr.so.3...done.
Loaded symbols for /lib/libthr.so.3
Reading symbols from /usr/local/lib/libicui18n.so.53...done.
Loaded symbols for /usr/local/lib/libicui18n.so.53
Reading symbols from /usr/local/lib/libicuuc.so.53...done.
Loaded symbols for /usr/local/lib/libicuuc.so.53
Reading symbols from /usr/local/lib/libicudata.so.53...done.
Loaded symbols for /usr/local/lib/libicudata.so.53
Reading symbols from /usr/local/lib/libdispatch.so.0...done.
Loaded symbols for /usr/local/lib/libdispatch.so.0
Reading symbols from /lib/libc.so.7...done.
Loaded symbols for /lib/libc.so.7
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/libcxxrt.so.1...done.
Loaded symbols for /lib/libcxxrt.so.1
Reading symbols from /usr/local/lib/libp11-kit.so.0...done.
Loaded symbols for /usr/local/lib/libp11-kit.so.0
Reading symbols from /usr/local/lib/libtspi.so.1...done.
Loaded symbols for /usr/local/lib/libtspi.so.1
Reading symbols from /usr/local/lib/libtasn1.so.6...done.
Loaded symbols for /usr/local/lib/libtasn1.so.6
Reading symbols from /usr/local/lib/libnettle.so.4...done.
Loaded symbols for /usr/local/lib/libnettle.so.4
Reading symbols from /usr/local/lib/libhogweed.so.2...done.
Loaded symbols for /usr/local/lib/libhogweed.so.2
Reading symbols from /usr/local/lib/libgpg-error.so.0...done.
Loaded symbols for /usr/local/lib/libgpg-error.so.0
Reading symbols from /usr/lib/liblzma.so.5...done.
Loaded symbols for /usr/lib/liblzma.so.5
Reading symbols from /usr/lib/libc++.so.1...done.
Loaded symbols for /usr/lib/libc++.so.1
Reading symbols from /usr/lib/libBlocksRuntime.so.0...done.
Loaded symbols for /usr/lib/libBlocksRuntime.so.0
Reading symbols from /lib/libcrypto.so.7...done.
Loaded symbols for /lib/libcrypto.so.7
Reading symbols from /libexec/ld-elf.so.1...done.
Loaded symbols for /libexec/ld-elf.so.1
#0  0x20645400 in objc_msgSend_fpret () from /usr/local/lib/libobjc.so.4.6
[New Thread 23003300 (LWP 100113/hello)]
(gdb) 
(gdb) bt full
#0  0x20645400 in objc_msgSend_fpret () from /usr/local/lib/libobjc.so.4.6
No symbol table info available.
#1  0x202f7db4 in NSLogv (format=0x121c8, args={__ap = 0xbffff6c4})
    at NSLog.m:327
    pid = 0
    prefix = (class NSString *) 0xf6
    message = (class NSString *) 0xbffff6c4
    arp = (class NSAutoreleasePool *) 0xbffff6c4
#2  0xbffff6c4 in ?? ()
No symbol table info available.
Cannot access memory at address 0xf6

-- 
You are receiving this mail because:
You are the assignee for the bug.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-194239-13>