Let me correct myself. It works no that I have both the include and library paths absolute. I have no idea if relative paths work or not. It worked until it did a c-compilation at which time it quit working; so I'm getting lost in my library and test config files.
Let me see if I understand this:
I want to make a library for the Lego NXT. It requires include files and a .lib file to be linked.
? 1. Setting these externals in the config file for the library does nothing because a library only produces byte code with no c compile.
? 2. If someone used the library they must remember to add the two externals to their config file. (The eiffel compiler does not pick up the requirement for the externals even though the project is using a libray that requires the externals?)
jjj
--- In
[hidden email], "Jimmy J. Johnson" <boxer41a@...> wrote:
>
> Thanks that fixed it. A relative path works for the include path but I had to use absolute path for the .lib file.
>
>
>
> --- In
[hidden email], "colinlema" <clemahieu@> wrote:
> >
> > Using relative paths in the include section is a different starting location than the relative paths in the library section; this is a big pain in the ass.
> >
> > If memory serves me right, one of them is relative to the .ECF directory and one of them in relative to .ECF/EIFGENS/w_code or something of the sorts. Absolute paths will solve it in the short term.
> >
> > --- In
[hidden email], "Jimmy J. Johnson" <boxer41a@> wrote:
> > >
> > > I have removed all the offending c++ code but now I get a link error. The "fantom.lib" is included in Externals/Libraries. Below is the last part of the C Output:
> > >
> > >
> > > Microsoft (R) Incremental Linker Version 8.00.50727.42
> > > Copyright (C) Microsoft Corporation. All rights reserved.
> > >
> > > -STACK:5000000 -NODEFAULTLIB:libc -STACK:5000000 -NODEFAULTLIB:libc -SUBSYSTEM:WINDOWS -OUT:mindstorms_tester.exe
> > > e1\emain.obj
> > > "C:\Program Files\Eiffel Software\EiffelStudio 6.3 GPL\studio\spec\windows\lib\msc\wkbench.lib" ".\clib\fantom.lib" "C:\e_Source\jj-mindstorms\library\fantom.lib"
> > > USER32.lib WS2_32.lib ADVAPI32.lib GDI32.lib SHELL32.lib MSIMG32.lib COMDLG32.lib UUID.lib OLE32.lib OLEAUT32.lib COMCTL32.lib MPR.LIB "c:\program files\eiffel software\eiffelstudio 6.3 gpl\precomp\spec\windows\EIFGENs\base\W_code\msc\precomp.lib"
> > > mindstorms_tester.res
> > > E1\eparents.obj E1\einit.obj E1\ececil.obj E1\evisib.obj E1\eskelet.obj
> > > E1\eplug.obj E1\ecall.obj E1\efrozen.obj E1\epattern.obj E1\eoption.obj
> > > C1\Cobj1.lib
> > > LINK : fatal error LNK1181: cannot open input file '.\clib\fantom.lib'
> > > NMAKE : fatal error U1077: '"C:\Program Files\Microsoft SDKs\Windows\v6.0\\VC\Bin\link.EXE"' : return code '0x49d'
> > > Stop.
> > >
> >
>