Sonsivri
 
*
Welcome, Guest. Please login or register.
Did you miss your activation email?
April 18, 2024, 07:37:39 19:37


Login with username, password and session length


Pages: [1]
Print
Author Topic: C30 v3.31 for linux  (Read 5662 times)
0 Members and 1 Guest are viewing this topic.
dpmdo
Inactive

Offline Offline

Posts: 2

Thank You
-Given: 1
-Receive: 0


« on: March 25, 2014, 08:13:07 08:13 »

Hello.

I'm looking for C30 v3.31 for linux, because we have some old projects built with this compiler version, we need to maintain these projects somewhat, and therefore we need exactly the same compiler version, to avoid additional issues.

We even can't use XC16, at least because it can't build our project: we got 'internal compiler error'.

So I'm looking for C30 v3.31.

I spent a lot of time and I've found that I can download C30 v3.30c for linux here: http://www.microchip.com/mplabc30-linux-installer ( redirects to http://ww1.microchip.com/downloads/mplab/X/mplabc30-v3.30c-linux-installer.run ). I've tried to modify the latter link to download v3.31, tried many variants, no luck.

This version is buggy on my Linux Mint 13 (Ubuntu 12.04 LTS derivative), I've found the workaround here: http://thegnar.org/sync/?p=218 : you need to create two symlinks:

Code:
cd /opt/microchip/mplabc30/v3.30c/bin/bin
sudo ln -s ../c30_device.info
sudo ln -s ../device_files

Now, C30 v3.30c works for me. But we keep looking for v3.31.

I tried to build it from sources: here's github repo of v3.30c with all patches: https://github.com/kartikmohta/c30-linux , I downloaded 3.31 sources from microchip site: http://ww1.microchip.com/downloads/en/DeviceDoc/mplabalc30v3_31.tar.gz and http://ww1.microchip.com/downloads/en/DeviceDoc/mplabc30v3_31.tar.gz , it is built after all, but it anyway doesn't work: there are similar bugs with c30_device.info file, and when I workarounded them, compiler just segfaults. I tried to sort it out with strace, no luck.

If anyone has C30 v3.31 for linux, please share.

Thanks.

Logged
hate
Hero Member
*****
 Warned
Offline Offline

Posts: 555

Thank You
-Given: 156
-Receive: 355


« Reply #1 on: March 25, 2014, 09:24:19 09:24 »

I tried to build it from sources: here's github repo of v3.30c with all patches: https://github.com/kartikmohta/c30-linux , I downloaded 3.31 sources from microchip site: http://ww1.microchip.com/downloads/en/DeviceDoc/mplabalc30v3_31.tar.gz and http://ww1.microchip.com/downloads/en/DeviceDoc/mplabc30v3_31.tar.gz , it is built after all, but it anyway doesn't work: there are similar bugs with c30_device.info file, and when I workarounded them, compiler just segfaults. I tried to sort it out with strace, no luck.
I hope you are aware that the optimizer isn't open source which means you won't have the optimizer even if you make C30 build and work using sources. I haven't tried but people say it works under linux using 'wine' in case you haven't tried it yet.
Logged

Regards...
dpmdo
Inactive

Offline Offline

Posts: 2

Thank You
-Given: 1
-Receive: 0


« Reply #2 on: March 25, 2014, 09:32:51 09:32 »

I hope you are aware that the optimizer isn't open source which means you won't have the optimizer even if you make C30 build and work using sources. I haven't tried but people say it works under linux using 'wine' in case you haven't tried it yet.

No, I know at least one person who uses manually built C30 v3.31 for linux and he uses -Os ( here's the thread, in Russian: http://caxapa.ru/499581.html ), he shared it, but it works with COFF only, and it doesn't work good with MPLABX (he uses manually-written makefile and debugs it by importing COFF in MPLAB-8 under wine). Here's direct link to his manually-built C30_v3.31_COFF : http://caxapa.ru/upload/files/a92a8e3e9bc680636be03b0dd2c4f9b1b150059f/c30-3_31.tar.xz.zip

More, this compiler is based on GCC, optimizer is a part of GCC compiler, so how can optimizer be non-opensource? It must be opensource.

As to wine, thanks but it doesn't work too (crashes). Probably it is my local issue, not sure.
« Last Edit: March 25, 2014, 09:36:25 09:36 by dpmdo » Logged
hate
Hero Member
*****
 Warned
Offline Offline

Posts: 555

Thank You
-Given: 156
-Receive: 355


« Reply #3 on: March 25, 2014, 12:22:20 12:22 »

Well, the trick is you can implement plugins for the actual open source software which has no requirement for or relevance to the source of main application and license it with whatever license you want. That's what Microchip's been doing for all these years unfortunately. As the C30 code is based on gcc you can enable the default optimizations that comes with gcc but PIC specific optimizations are not there. There is some information in the link below:
http://www.microchip.com/forums/m139360.aspx

And for the wine failure, maybe you can try to run the windows compiler in a vm software but I believe it would be harder than dealing with wine.

Btw GPL states that the source must be available for the GPLed software so Microchip must have their source available somewhere if they want to stick with the GPL requirements. Maybe some deeper digging would reveal it. Just an idea.
« Last Edit: March 26, 2014, 12:06:52 00:06 by hate » Logged

Regards...
Pages: [1]
Print
Jump to:  


DISCLAIMER
WE DONT HOST ANY ILLEGAL FILES ON THE SERVER
USE CONTACT US TO REPORT ILLEGAL FILES
ADMINISTRATORS CANNOT BE HELD RESPONSIBLE FOR USERS POSTS AND LINKS

... Copyright © 2003-2999 Sonsivri.to ...
Powered by SMF 1.1.18 | SMF © 2006-2009, Simple Machines LLC | HarzeM Dilber MC