2a968
![]() |
|
|
|
|
|||||||
| Off-Topic Have some non-FreeBSD related questions, or want just to chit-chat about anything that is not related to FreeBSD? This is the forum for you. |
![]() |
|
|
Thread Tools | Display Modes |
|
#1
|
|||
|
|||
|
Taken from the other forum , thx BSDfan666
![]() Quote:
Last edited by DutchDaemon; June 14th, 2011 at 16:17. |
|
#2
|
||||
|
||||
|
As far as I've been able to tell only parts of it have a permissive license. Mainly a few run-time libraries and the debugger. Can't find any licensing info about the rest.
__________________
Senior UNIX Engineer at Unix Support Nederland Experience is something you don't get until just after you need it. |
|
#3
|
|||
|
|||
|
So when will you guys throw gcc and replace it with something better?
Last edited by DutchDaemon; June 15th, 2011 at 00:15. |
|
#4
|
|||
|
|||
|
9.0 has LLVM/Clang (for the world/kernel)
|
|
#5
|
|||
|
|||
|
When something "better" can build the ports. Right now clang is in HEAD and pcc in ports, both more "C compiler" than gcc, but you won't be able to build the majority of the ports with either of them.
Also, there's no point to drop gcc as gcc can't be built by anything other then gcc, so once gcc is out of base you won't be able to build it via ports... Nevertheless this is promising. Especially the fact they're doing the non-direct compiler tools, too. Last edited by DutchDaemon; June 15th, 2011 at 00:16. |
|
#6
|
|||
|
|||
|
Quote:
Quote:
Oh, and the source code can be found here: https://github.com/path64 (and, for what it's worth, the compiler builds fine and produces running binaries under FreeBSD). Last edited by DutchDaemon; June 15th, 2011 at 00:17. |
|
#7
|
|||
|
|||
|
@knk: Do you mean it isn't BSD licensed?
IMHO apple won't change clang to GPL
|
|
#8
|
|||
|
|||
|
From what I've gathered, the compiler is GPLv3, but the debugger and certain libraries are BSD licensed. Not very useful for the FreeBSD project, but a welcome addition to ports I'm sure.
|
|
#9
|
||||
|
||||
|
Quote:
PathDB is the debugger you're talking about (CDDL'ed): https://github.com/path64/debugger And yes, the compiler seems GPLv3: https://github.com/path64/compiler/blob/master/COPYING Alex. Last edited by DutchDaemon; June 16th, 2011 at 01:02. Reason: No space before punctuation. |
|
#10
|
|||
|
|||
|
I did not check that for some time. If it is true these days, this is imho a great opportunity to ask for a facepalming "WTF?" smily.
__________________
Optimists believe we live in the best world possible. Pessimists agree to this. Two little lights, blinking out in a sky full of stars - we will never forget you. I miss you so much |
|
#11
|
|||
|
|||
|
Quote:
I'm writing a how-to to build ekopath. I can start the big build process with the steps I described here (http://www.gorlani.com/portal/Home/A...onFreeBSD.aspx) but I stop at: Code:
[ 33%] Generating pscrt-static-x86_64/memcpy_em64t_c.o ### Assertion failure at line 812 of /tmp/compiler/src/be/../common/util/id_map.h: ### Compiler Error in file /tmp/compiler/src/libpscrt/memcpy_em64t.c during Global Optimization -- Create AUX Symbol table phase: ### ID_MAP::Insert: displaced item not found in hash table. *** Error code 1 Stop in /tmp/build. *** Error code 1 Stop in /tmp/build. *** Error code 1 Thanks Update: the only help from IRC channel is here: Code:
(12.53.20) LoZio: Well, I read the readme and started build, but it stop here: ### Assertion failure at line 812 of /tmp/compiler/src/be/../common/util/id_map.h: (12.53.20) LoZio: ### Compiler Error in file /tmp/compiler/src/libpscrt/memcpy_em64t.c during Global Optimization -- Create AUX Symbol table phase: (12.53.20) LoZio: ### ID_MAP::Insert: displaced item not found in hash table. (12.53.20) LoZio: *** Error code 1 (12.53.39) LoZio: this may be not FreeBSD specific (12.53.54) codestr0m: LoZio: ERRORPISSEDOFFATFBSDTRYAGAINANOTHERDAY Last edited by DutchDaemon; June 18th, 2011 at 19:33. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#12
|
||||
|
||||
|
When people stop writing GCC optimized/specific code for their third-party software. And that's not going to happen any time soon as most open source developers are Linux users/fans.
Last edited by DutchDaemon; June 18th, 2011 at 19:33. |
|
#13
|
|||
|
|||
|
Quote:
Code:
#!/bin/sh
GCCP=/usr/lib
cmake -DCMAKE_BUILD_TYPE=Debug \
-DPATH64_ENABLE_TARGETS="x86_64" \
-DPATH64_ENABLE_MATHLIBS=ON \
-DPATH64_ENABLE_FORTRAN=OFF \
-DPSC_CRT_PATH_x86_64=/usr/lib \
-DPSC_DYNAMIC_LINKER_x86_64=/libexec/ld-elf.so.1 \
-DPSC_LIBSUPCPP_PATH_x86_64=$GCCP \
-DPSC_LIBSTDCPP_PATH_x86_64=$GCCP \
-DPSC_LIBGCC_PATH_x86_64=$GCCP \
-DPSC_LIBGCC_EH_PATH_x86_64=$GCCP \
-DPSC_LIBGCC_S_PATH_x86_64=$GCCP \
../compiler
Last edited by DutchDaemon; June 20th, 2011 at 23:51. |
|
#14
|
|||
|
|||
|
Quote:
Code:
[ 52%] Building CXX object src/be/be/CMakeFiles/be-exec-x8664.dir/__/com/phase.cxx.o make: don't know how to make /usr/local/lib/libdwarf.a. Stop *** Error code 2 Stop in /tmp/build. *** Error code 1 Code:
commit c73993b29dac4d4f641ed09f0596679de49d509c Author: Roman Divacky <rdivacky@freebsd.org> Date: Tue Jun 21 10:21:34 2011 +0200 --Edit Just tried my "recipe" and using "Release". It crashes with the same error, but at 18%: Code:
[ 18%] Building CXX object src/be/be/CMakeFiles/be-exec-x8664.dir/__/com/phase.cxx.o make: don't know how to make /usr/local/lib/libdwarf.a. Stop *** Error code 2 )7 minutes after posting this I googled to find infos about my stop error. I found this page as the first result. Just 7 minutes later. Am I the only one to find this amazing? Last edited by DutchDaemon; June 21st, 2011 at 23:58. Reason: Also amazing: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#15
|
|||
|
|||
|
Hi,
Using pkg_add -r libdwarf will get you past that error at 18%, I'm now stuck at 28% where you were stuck at 33% before:Code:
[ 28%] Generating pscrt-static-x86_64/memcpy_em64t_c.o ### Assertion failure at line 812 of /root/work/path64/src/be/../common/util/id_map.h: ### Compiler Error in file /root/work/path64/src/libpscrt/memcpy_em64t.c during Global Optimization -- Create AUX Symbol table phase: ### ID_MAP::Insert: displaced item not found in hash table. *** Error code 1 I'm using the gorlani.com make line, with Debug instead of Release for the make build type. It's compiling now, we'll see where I end up tomorrow when I check. Last edited by DutchDaemon; June 22nd, 2011 at 16:52. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#16
|
|||
|
|||
|
Quote:
Code:
[ 30%] Generating ../../lib/x8664/64/libmv.so /usr/bin/ld: /use/lib/crti.o: No such file: No such file or directory *** Error code 1 Last edited by DutchDaemon; June 22nd, 2011 at 16:53. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#17
|
|||
|
|||
|
I managed to get to 38% before it crashed asking about the Fortran compiler. I didn't run into your errors.
Code:
[ 38%] Generating pathfortran-static-x86_64/__/libfi/mathlb/ieee_exceptions_F90.o, pathfortran-static-x86_64/IEEE_EXCEPTIONS.mod gcc: /root/work/path64/src/libpathfortran/../libfi/mathlb/ieee_exceptions.F90: Fortran compiler not installed on this system *** Error code 1 I'm running 9-CURRENT, built from 2011.05.28.15.00.00 on the csup src file. Last edited by DutchDaemon; June 22nd, 2011 at 18:59. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#18
|
|||
|
|||
|
Yup, that worked, I made it to 100%. I now have a shiny new compiler to play with on FreeBSD-9. Here's my cmake command that worked for me;
set MYLIBPATH=/usr/libCode:
cmake ~/work/path64 \ -DPATH64_ENABLE_TARGETS=x86_64 \ -DPATH64_ENABLE_MATHLIBS=ON \ -DPATH64_ENABLE_HUGEPAGES=OFF \ -DPATH64_ENABLE_FORTRAN=OFF \ -DPSC_CRT_PATH_x86_64=$MYLIBPATH \ -DPSC_DYNAMIC_LINKER_x86_64=/libexec/ld-elf.so.1 \ -DPSC_LIBSUPCPP_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBSTDCPP_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_EH_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_S_PATH_x86_64=$MYLIBPATH \ -DPATH64_ENABLE_HUGEPAGES=OFF \ -DCMAKE_BUILD_TYPE=Debug
Last edited by DutchDaemon; June 22nd, 2011 at 18:59. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#19
|
|||
|
|||
|
Update:
I have it compiling a basic "Hello World" program, and I'm even compiling a few of the smaller ports (TinyDNS for one) using pathcc. I notice that if I execute pathCC --help (the c++ version) I receive Code:
Bus error (core dumped) I also notice that any port that uses configure doesn't like pathcc - It fails the c preprocessor tests. Code:
checking for /opt/path64/bin/pathcc option to accept ANSI C... none needed checking for style of include used by make... GNU checking dependency style of /opt/path64/bin/pathcc... gcc3 checking how to run the C preprocessor... /opt/path64/bin/pathCC configure: error: C preprocessor "/opt/path64/bin/pathCC" fails sanity check ===> Script "configure" failed unexpectedly. Please report the problem to vd@FreeBSD.org [maintainer] and attach the "/usr/ports/net-mgmt/iftop/work/iftop-0.17/config.log" including the output of the failure of your make command. Also, it might be a good idea to provide an overview of all packages installed on your system (e.g. an `ls /var/db/pkg`). *** Error code 1 - set /etc/make.conf back to the defaults (use gcc) - run make configure in the port to generate all the configure data - set /etc/make.conf to the pathcc files - make install Worked for iftop, and it runs. I'm going to keep playing with some of the ports and see how this works. I'm interested in samba35, as I've seen increased performance with gcc46 and -O3 optimization on my file servers, so there could be room for pathcc to help as well. Kernel: Being aggressively optimistic, I went for a buildkernel - And it's as messy as you'd expect. I know I won't receive help on it here, but others will want to try this, so I'm passing on what I'm finding. One option that is helpful for using pathcc as a drop-in for gcc is -woffoptions, the rest is manually ripped out of the kern.mk files, to see how far I can push this to compile. Where a buildworld dies today is: Code:
### Assertion failure at line 521 of /test/path64/src/be/cg/tnutil.cxx: ### Compiler Error in file /usr/src/sys/fs/nfsclient/nfs_clbio.c during Code_Expansion phase: ### don't know how to make dedicated TN for class (null) *** Error code 1 Stop in /usr/obj/usr/src/sys/sankernel2. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. We'll see how much time I have tomorrow to test this further. Last edited by DutchDaemon; June 23rd, 2011 at 00:05. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#20
|
|||
|
|||
|
Quote:
The last git code says: Code:
commit 80b1b74250fd219b87ae74809172ca6b8f8363f5
Author: Alexander Esilevich <aesilevich@pathscale.com>
Date: Wed Jun 22 18:02:30 2011 +0700
added cmake option for path to libdwarf
Code:
[ 52%] Building CXX object src/be/be/CMakeFiles/be-exec-x8664.dir/iter.cxx.o [ 52%] Building CXX object src/be/be/CMakeFiles/be-exec-x8664.dir/__/com/phase.cxx.o Linking CXX executable ../../../lib/x8664/be /usr/lib/libdwarf.so: undefined reference to `elf_strptr' /usr/lib/libdwarf.so: undefined reference to `elf_getident' It's becoming very very tricky. Last edited by DutchDaemon; June 23rd, 2011 at 13:10. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
|
#21
|
|||
|
|||
|
Hmm, it sounds like you should start with a fresh 8.2.
Or better yet, try going up to a fresh install of 9-CURRENT - This is all pretty "testy-feely" anyway, and by the time you have something with Path64 stable enough to be using, 9 will be out anyway, so you may as well get a head-start on it. I'm finding my copies of 9 to be quite stable. I managed to build both istgt and samba35 with path64 last night, I'm setting up an environment for some small speed tests to see if there is a difference with path64 compiling these over gcc42 or gcc46. Last edited by DutchDaemon; June 23rd, 2011 at 13:10. |
|
#22
|
|||
|
|||
|
Quote:
Bye. Last edited by DutchDaemon; June 24th, 2011 at 13:39. |
|
#23
|
|||
|
|||
|
Try the last "stable" version 4.0.10, tagged at june 08, 2011:
Code:
git clone https://github.com/path64/compiler.git cd compiler/ git checkout 4.0.10 Code:
setenv CC pathcc setenv CXX pathCC cmake ../compiler \ -DCMAKE_INSTALL_PREFIX=/usr/opt/pathscale \ -DPATH64_ENABLE_TARGETS=x86_64 \ -DPATH64_ENABLE_MATHLIBS=ON \ -DPATH64_ENABLE_HUGEPAGES=OFF \ -DPATH64_ENABLE_FORTRAN=OFF \ -DPSC_CRT_PATH_x86_64=$MYLIBPATH \ -DPSC_DYNAMIC_LINKER_x86_64=/libexec/ld-elf.so.1 \ -DPSC_LIBSUPCPP_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBSTDCPP_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_EH_PATH_x86_64=$MYLIBPATH \ -DPSC_LIBGCC_S_PATH_x86_64=$MYLIBPATH \ -DPATH64_ENABLE_HUGEPAGES=OFF \ -DCMAKE_BUILD_TYPE=Release Last edited by DutchDaemon; June 25th, 2011 at 21:35. |
| The Following User Says Thank You to Yamagi For This Useful Post: | ||
LoZio (June 26th, 2011) | ||
|
#24
|
|||
|
|||
|
Thanks Yamagi for pointing out to checkout 4.0.10. I was able to build ekopath in debug and release (after an initial problem...).
I updated the how-to with the final procedure (and credits ) on http://www.gorlani.com/portal/Home/A...onFreeBSD.aspx. Now I'm going to build some programs I use and compare results. I'll post them when done. Thanks again to all people on the thread.
Last edited by DutchDaemon; June 26th, 2011 at 19:46. |
|
#25
|
|||
|
|||
|
Quote:
Code:
/usr/opt/pathscale/lib/4.0.10/x8664/ipa_link: cannot open linker script file ldscripts/elf_x86_64_fbsd.xsc: No such file or directory Last edited by DutchDaemon; June 26th, 2011 at 19:47. Reason: Proper formatting: http://forums.freebsd.org/showthread.php?t=8816 |
![]() |
| Thread Tools | |
| Display Modes | |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| [Solved] Is there any Fortran compiler works on freebsd 8.1 amd64? | gchnhn | Userland Programming & Scripting | 3 | October 1st, 2011 18:08 |
| Keeping EFL and Enlightenment stuff BSD licensed | B0o-supermario | Off-Topic | 12 | September 3rd, 2011 01:52 |
| PC-BSD 8.1 Released | admin | News & Announcements | 0 | July 24th, 2010 08:00 |
| PC-BSD 8.0 Released | admin | News & Announcements | 0 | February 26th, 2010 12:00 |
| PC-BSD 7.1 Released | admin | News & Announcements | 0 | April 13th, 2009 21:00 |