Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Feb 2014 23:05:47 GMT
From:      ShelLuser <pl@catslair.org>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/187102: graphics/gnofract4d contains hardlink to gcc (won't run on FreeBSD 10.x+)
Message-ID:  <201402262305.s1QN5lw3073690@cgiserv.freebsd.org>
Resent-Message-ID: <201402262310.s1QNA02G025620@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         187102
>Category:       ports
>Synopsis:       graphics/gnofract4d contains hardlink to gcc (won't run on FreeBSD 10.x+)
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Feb 26 23:10:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     ShelLuser
>Release:        FreeBSD 10.0-RELEASE/i386
>Organization:
>Environment:
FreeBSD fbsd10 10.0-RELEASE FreeBSD 10.0-RELEASE #1 r262327: Tue Feb 25 23:22:14 CET 2014     root@fbsd10:/usr/obj/usr/src/sys/VIRTKERN10  i386

>Description:
The Gnofract4D port contains a Python script which checks the environment it's being used on and if it is not windows it'll set the self.compiler-name to 'gcc', which in return ensures that this program will no longer run on FreeBSD 10 and up (which don't contain 'gcc' at all anymore) nor on earlier versions where the admin has opted to replace GCC with Clang.

>How-To-Repeat:
Install graphics/gnofract4d (either using make or portmaster) then try to run it from the commandline (some output omitted):

fbsd10:/home/peter $ gnofract4d

(process:24302): Gtk-WARNING **: Locale not supported by C library.
        Using the fallback 'C' locale.
A fatal error occurred:
        Error reported by C compiler:gcc: not found
..CUT...
  File "/usr/local/lib/python2.7/site-packages/fract4d/fractal.py", line 624, in compile
    self.compiler_options)
  File "/usr/local/lib/python2.7/site-packages/fract4d/fc.py", line 278, in compile_all
    outputfile = os.path.abspath(self.generate_code(t, cg))
  File "/usr/local/lib/python2.7/site-packages/fract4d/fc.py", line 430, in generate_code
    "Error reported by C compiler:%s" % output)
fract4d.fracttypes.TranslationError: Error reported by C compiler:gcc: not found

>Fix:
If the port has already been installed then edit this file:

/usr/local/lib/python2.7/site-packages/fract4d/fc.py

Find the line 150: "self.compiler_name = "gcc"" and remove the 'g'.

To fix the port itself simply create a new directory "files" in the port directory (so /usr/ports/graphics/gnofract4d/files) and place the attached file into it. The patch will apply automatically and all shall be right with the world again ;-)


Patch attached with submission follows:

diff -ru gnofract4d-3.14/fract4d/fc.py new/fract4d/fc.py
--- gnofract4d-3.14/fract4d/fc.py	2011-01-29 16:09:50.000000000 +0100
+++ new/fract4d/fc.py	2014-02-26 23:47:19.000000000 +0100
@@ -147,7 +147,7 @@
         self.cache_dir = os.path.expanduser("~/.gnofract4d-cache/")
         self.init_cache()
         if 'win' not in sys.platform:
-            self.compiler_name = "gcc"
+            self.compiler_name = "cc"
             self.flags = "-fPIC -DPIC -g -O3 -shared"
             self.output_flag = "-o "
             self.libs = "-lm"


>Release-Note:
>Audit-Trail:
>Unformatted:



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