View previous topic :: View next topic |
Author |
Message |
ch_dupre
Joined: 22 Aug 2006 Posts: 18
|
Linker in V4 |
Posted: Wed Oct 11, 2006 3:34 am |
|
|
Hello forum,
I'm currently trying the version 4 of the compiler and I am trying to compile different files into different objects, and link them together.
The page: http://www.ccsinfo.com/content.php?page=v4compiler shows how to compile and link files together from the console:
C:\project\ccsc +FH +EXPORT main.c
C:\project\ccsc +FH +EXPORT uart.c
C:\project\ccsc +FH +LINK="main.hex=main.o,uart.o"
The first 2 lines seems to be working, and I get 2 object files, but I am not able to link the objects together. The compiler gives me the following message: "Invalid option +LINK..."
Does that mean that V4 doesn't currently include the linker?
Thanks,
Christophe D |
|
|
PICoHolic
Joined: 04 Jan 2005 Posts: 224
|
|
Posted: Wed Oct 11, 2006 5:16 am |
|
|
excuse me ch_dupre,
since you're using V4; is the project wizard icon disabled??
10x |
|
|
ch_dupre
Joined: 22 Aug 2006 Posts: 18
|
|
Posted: Wed Oct 11, 2006 5:37 am |
|
|
I 'm only using the command line, not the IDE, so I can't answer your question.
Christophe |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
Re: Linker in V4 |
Posted: Fri Dec 08, 2006 2:21 pm |
|
|
ch_dupre wrote: | I'm currently trying the version 4 of the compiler and I am trying to compile different files into different objects, and link them together. |
I am trying to do exactly the same thing (with 4.016) and get the same error. Compilation to object files if fine but they will not link (I prefer to use the command line as I don't like the CCS IDE; expecially Ver4 which just seems to be a wacky non-standard user interface IMHO).
My main reason for moving to Ver4 is to get the linker so I can avoid having to include all the files (I prefer to split my code into separate files rather than one hugh main file!) in the right order which can be very troublesome.
This webpage seems to indicate that it IS included in version 4 and should work so I will be very annoyed if it does not work.
Have sent a help request to CCS so will post result... |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Mon Dec 11, 2006 10:10 am |
|
|
PICoHolic wrote: | since u're using V4; is the project wizard icon disabled?? |
The project Wizard is not disabled for me (4.017).
No news from CCS on the command line linker yet; I have been trying to get it working in the IDE too and can't seem to get anywhere with that either.
Does anyone have the linker working with or without the IDE? |
|
|
Ttelmah Guest
|
|
Posted: Mon Dec 11, 2006 10:26 am |
|
|
There is a lot of stuff, which 'marketting' would have you believe V4 can do. Little yet works.
When V3 was launched, it was about 6 months before a version came along for the 18 chips that approached useable working. V4 is looking to be about the same....
With luck, by perhaps March next year, I'd hope for beter than 80% operability for the new functions.
As a 'thought', has anybody tried linking using another linker (MPASM for example).
Best Wishes |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Mon Dec 11, 2006 2:12 pm |
|
|
Ttelmah wrote: | With luck, by perhaps March next year, I'd hope for beter than 80% operability for the new functions. |
Ttelmah wrote: | As a 'thought', has anybody tried linking using another linker (MPASM for example). |
Good idea Ttelmah - I will have to give this a try, thanks. |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Wed Dec 13, 2006 7:36 am |
|
|
Martin Berriman wrote: | Good idea Ttelmah - I will have to give this a try, thanks. |
Well I have tried with mplink (I assume that's what you meant) however it doesn't work:
Code: | Error - Coff file './global.o' does not appear to be a valid COFF file. |
Still no priority from CCS on this... |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
|
Posted: Thu Dec 14, 2006 3:27 am |
|
|
Martin Berriman wrote: | Does anyone have the linker working with or without the IDE? |
I guess silence means no then
Just a question on CCS support times:
I've sent in a bug report before for version 3.??? when I didn't have a maintenance agreement and as I expected, I got no response from CCS. I was not bothered because I expected them to give priority to people who were paying for support - not me.
However, I thought that I would get a priority response this time since I now have bought a years maintenance but unfortunately so far all I have received is:
CCS Support wrote: | Your e-mail has been assigned to someone in C Tech Support.
The e-mail has been reviewed, however, an answer is not yet ready.
A priority has not yet been determined for this issue. |
While it gives me a warm glow to know that someone has read my email, I'd be much happier if someone replied to me and said something like "thanks for reporting that, we are looking into it now and expect to have a fix for you in the next ? days".
Did I send my bug report to the wrong email address? (pcwsupport@...) |
|
|
newguy
Joined: 24 Jun 2004 Posts: 1911
|
|
Posted: Thu Dec 14, 2006 9:59 am |
|
|
I can top that. I sent in a bug report in July 2005 and have yet to hear back. At the time I did have the maintenance contract, and the bug was not fixed in any 3.xxx release.
I love this compiler, but I'm getting quite discouraged by CCS's behaviour. |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
Re: Linker in V4 |
Posted: Sat Dec 30, 2006 8:03 am |
|
|
Well since I got an email saying 4.019 was available I thought I'd check if the linker was now working. I couldn't remember the comman line syntax so I looked it up on the CCS website and tried it out - Shock It works
Now I have noticed something has changed. When Christophe D and I both last looked on the CCS website for information on how to use the linker, the information said this:
ch_dupre wrote: | C:\project\ccsc +FH +EXPORT main.c
C:\project\ccsc +FH +EXPORT uart.c
C:\project\ccsc +FH +LINK="main.hex=main.o,uart.o" |
However, it now says this:
CCS Website wrote: | C:\project\ccsc +FH +EXPORT main.c
C:\project\ccsc +FH +EXPORT uart.c
C:\project\ccsc +FH LINK="main.hex=main.o,uart.o" |
Notice the missing + before LINK (not easy to spot eh)
To me, it seems that the linker may have worked all along and it was the documentation that was wrong. Unfortunately I no longer have 4.018 or 4.017 installed so I cannot check to be certain. If this is the reason, why oh why couldn't CCS tech support have simply told me this was the problem
As it is, I have still heard nothing from them other than "we have received your report and have not assigned a priority". I'm glad I now have the linker working from the command line but it seems to be purely by luck than any input from CCS support. The linker still does not work within the IDE for me but then I don't like the IDE anyway |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
Re: Linker in V4 |
Posted: Sun Dec 31, 2006 2:10 am |
|
|
Martin Berriman wrote: | Shock It works |
Hmmm. In my excitement at getting something to compile and link, I didn't check that the produced HEX file actually worked - It doesn't
A reasonably simple program that compiles and works in V3 does not work when modified to use the linker feature of V4. It produces similar code in the LST file but I have not had time to try and figure out where it goes wrong yet.
A more complex program that uses STDLIBM.H works on V3 but when changed to use the linker in V4 gives the error "Import error dyn mem mis-match true!=false". This seems to occur as soon as I include STDLIBM.H
Off to post a bug report now |
|
|
Martin Berriman
Joined: 08 Dec 2005 Posts: 66 Location: UK
|
Re: Linker in V4 |
Posted: Thu Jan 18, 2007 1:34 am |
|
|
Martin Berriman wrote: | Hmmm. In my excitement at getting something to compile and link, I didn't check that the produced HEX file actually worked - It doesn't
A reasonably simple program that compiles and works in V3 does not work when modified to use the linker feature of V4. It produces similar code in the LST file but I have not had time to try and figure out where it goes wrong yet.
A more complex program that uses STDLIBM.H works on V3 but when changed to use the linker in V4 gives the error "Import error dyn mem mis-match true!=false". This seems to occur as soon as I include STDLIBM.H |
New version today 4.021 with a comment that there have been some changes to the linker however tried the above test again and it still does not work
CCS Technical Support does not monitor this forum on a regular basis. Please do not post bug reports to this form. All bug reports should be emailed to [email protected]. Thank you. |
|
|
|