English 中文(简体)
C++ GNU linker errors
原标题:

I m trying to compile my program on Windows via Cygwin with the compilation command:

g++ ping.cpp -I./include -L./lib -lchartdir50

I m using an API called ChartDirector which draws charts for me. I ve never linked libraries this way before (usually I do it through Visual Studio), so I’m a little new to this. I ve got a really large list of errors, so I won t list them all, but I’ll list one just to clarify the type of linker errors I’m getting:

(.text$_ZN9BaseChartD1Ev[BaseChart::~BaseChart()]+0x4f): undefined reference to _CBaseChart_destroy

All of these are undefined reference to xxx errors.

I ve got a bunch of header files in ./include and a library called chartdir50.lib in ./lib.

What’s wrong with my compilation line?

最佳回答

Hmm... that’s odd. I m using a 64-bit system, but for some reason I tried it with the 32-bit library and it compiled. Thanks!

问题回答

I never use that library before, but when I googled it, I noticed that other people trying like -lchartdir instead of -lchartdir50, so you should give it a try.

I am not sure, but .lib have been compiled with Visual C++?

If yes, I don t think it s compatible with GCC. You have to compile the library with GCC/G++ and use that file or to use a compatible binary if you don t have access to the source.

I assume that library was also created with GCC.

As far as I know, .lib is a static library, so you don t have to point it with the -l compiler switch.

Just use it as another file on the command line, like

g++ ping.cpp -I./include -L./lib {path to lib here}/chartdir50.lib




相关问题
Undefined reference

I m getting this linker error. I know a way around it, but it s bugging me because another part of the project s linking fine and it s designed almost identically. First, I have namespace LCD. Then I ...

C++ Equivalent of Tidy

Is there an equivalent to tidy for HTML code for C++? I have searched on the internet, but I find nothing but C++ wrappers for tidy, etc... I think the keyword tidy is what has me hung up. I am ...

Template Classes in C++ ... a required skill set?

I m new to C++ and am wondering how much time I should invest in learning how to implement template classes. Are they widely used in industry, or is this something I should move through quickly?

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

typedef ing STL wstring

Why is it when i do the following i get errors when relating to with wchar_t? namespace Foo { typedef std::wstring String; } Now i declare all my strings as Foo::String through out the program, ...

C# Marshal / Pinvoke CBitmap?

I cannot figure out how to marshal a C++ CBitmap to a C# Bitmap or Image class. My import looks like this: [DllImport(@"test.dll", CharSet = CharSet.Unicode)] public static extern IntPtr ...

Window iconification status via Xlib

Is it possible to check with the means of pure X11/Xlib only whether the given window is iconified/minimized, and, if it is, how?

热门标签