Hi Kusti,

the error is from changes in gputils. You can downgrade your gputils to
avoid this problem.
I tested successfully with the (ancient ...) version
gplink-0.14.2 #774 (May 30 2013)
and could reproduce your problem with
gplink-1.4.0 #0 (Mar 21 2015)

I then bisected gputils using git and found that r955 from 2014-04-01 is
the last one, for which the old config word approach works.
If I am not mistaken, this should be gputils 1.1.0. So downgrading gputils
to 1.1.0 should solve your problem.

Hope that helps,
Raphael

2015-03-20 18:57 GMT+01:00 Kustaa Nyholm <kustaa.nyh...@planmeca.com>:

> I was trying to compile a project that compiled cleanly last time I tried
> (with SDCC 3.2.0),
> meanwhile I've upgraded to 3.4.0:
>
> ~/sdcc-3.4.0/bin/sdcc -v
> SDCC :
> mcs51/z80/z180/r2k/r3ka/gbz80/tlcs90/ds390/pic16/pic14/TININative/ds400/hc0
> 8/s08/stm8 3.4.0 #8981 (Apr  5 2014) (Mac OS X i386)
> published under GNU General Public License (GPL)
>
> my code contains:
>
> __code char __at 0x300000 CONFIG1L = 0x20; // USBDIV=1, CPUDIV=00, PLLDIV
> = 000
> __code char __at 0x300001 CONFIG1H = 0x0E; // IESO=0, FCMEN=0, FOSC = 1110
> __code char __at 0x300002 CONFIG2L = 0x20; // Brown out off, PWRT On
> __code char __at 0x300003 CONFIG2H = 0x00; // WDT off
> __code char __at 0x300004 CONFIG3L = 0xff; // Unused configuration bits
> __code char __at 0x300005 CONFIG3H = 0x80; // MCLR enabled , PORTB
> digital, CCP2 - RB2
> __code char __at 0x300006 CONFIG4L = 0x80; // ICD off, ext off, LVP off,
> stk ovr off
> __code char __at 0x300007 CONFIG4H = 0xff; // Unused configuration bits
>
> and the linking fails with:
>
>
> "(0x300000) is absolute but occurs in more than one file"
>
> now, if comment out all but one of these the compile succeeds, so my
> conclusion is that I don't have these defined in multiple files or
> above file included multiple times.
>
> A single:
>
> __code char __at 0x300000 CONFIG1L = 0x20; // USBDIV=1, CPUDIV=00, PLLDIV
> = 000
>
>
> in any file in the project seems to be fine but two lines:
>
> __code char __at 0x300000 CONFIG1L = 0x20; // USBDIV=1, CPUDIV=00, PLLDIV
> = 000
> __code char __at 0x300001 CONFIG1H = 0x0E; // IESO=0, FCMEN=0, FOSC = 1110
>
>
> anywhere will fail.
>
> I know, I should upgrade myc code to use the CONFIG as I get the warning:
> "Warning[212] __CONFIG has been deprecated for PIC18 devices. Use
> directive CONFIG."
> but right now I would not like to go through the datasheet and figure out
> names
> for all those bits, especially as not all of them are what I consider
> logical,
> that is error prone, time consuming and tedious. So is there any way
> I can use what I have without Doing The Right Thing(tm) ??
>
> Also, isn't the warning and apparent backwards compatibility a bit futile
> if
> it does not work, eh?
>
> cheers Kusti
>
>
>
>
>
>
>
>
>
>
>
> This e-mail may contain confidential or privileged information. If you are
> not the intended recipient (or have received this e-mail in error) please
> notify the sender immediately and destroy this e-mail. Any unauthorized
> copying, disclosure or distribution of the material in this e-mail is
> strictly forbidden. We will not be liable for direct, indirect, special or
> consequential damages arising from alteration of the contents of this
> message by a third party or as a result of any virus being passed on or as
> of transmission of this e-mail in general.
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> Sdcc-user mailing list
> Sdcc-user@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/sdcc-user
>
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to