How can I link msvcrt.lib with delphi? I am trying to link a .obj file with Delphi. And it works but it has way too many missing dependencies.
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__purecall'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??2#YAPAXI#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??3#YAXPAX#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '_atexit'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp___hypot'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp__memchr'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp__memmove'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Debug_message#std##YAXPB_W0I#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Orphan_all#_Container_base12#std##QAEXXZ'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Xbad_alloc#std##YAXXZ'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Xlength_error#std##YAXPBD#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Xout_of_range#std##YAXPBD#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??_Eerror_category#std##UAEPAXI#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Syserror_map#std##YAPBDH#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__imp_?_Winerror_map#std##YAPBDH#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??_E_Generic_error_category#std##UAEPAXI#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??_E_Iostream_error_category#std##UAEPAXI#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??_E_System_error_category#std##UAEPAXI#Z'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '#__security_check_cookie#4'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__CxxThrowException#8'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '___CxxFrameHandler3'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '??_7type_info##6B#'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '___security_cookie'
[dcc32 Error] Project1.dpr(24): E2065 Unsatisfied forward or external declaration: '__fltused'
You cannot link .lib files to Delphi. If you link .obj files then you must supply any missing functions by either:
Linking a .obj file that defines the function, or
Implementing the function in Delphi and making it visible to the unit that links the other .obj files.
A bigger problem is that you are attempting to link a C++ object and to the very best of my knowledge that is not viable. If that's really what you need to do, then you will have to compile it to a DLL and link it that way.
Related
I can't get C++Builder 11 to link a project with CodeGuard. Not even with a new C++Builder VCL Application project.
I have tried various permutations of implib options (-a -c -f) on cg32.dll to create cg32.lib. The linker always comes back with multiple "unresolved external" errors from PROJECT1.OBJ / UNIT1.OBJ, like so:
[ilink32 Error] Error: Unresolved external '_CG_DESC' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\PROJECT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_THIS' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\UNIT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_DTORTHIS' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\UNIT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_DA_EPY' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\UNIT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_A_BP' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\UNIT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_A_PY' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\UNIT1.OBJ
[ilink32 Error] Error: Unresolved external '_CG_GDA_EGY' referenced from C:\PROJECT\TEST\000\WIN32\DEBUG\PROJECT1.OBJ
[ilink32 Error] Error: Unable to perform link
Failed
Elapsed time: 00:00:01.4
Am I missing something?
I downloaded Spring4D "sglienke-spring4d-ca8037a2fdec.zip" from this link https://bitbucket.org/sglienke/spring4d/downloads/.
And I downloaded DSharp "sglienke-dsharp-2eae62962442.zip" from this link https://bitbucket.org/sglienke/dsharp/downloads/
I tried to build DSharp using Tokyo 10.2.3, and having the following errors - seems DSharp is not compatible with the latest Spring4D commit?
[dcc32 Error] DSharp.Collections.Iterators.pas(54): E2170 Cannot override a non-virtual method
[dcc32 Error] DSharp.Collections.Iterators.pas(66): E2170 Cannot override a non-virtual method
[dcc32 Error] DSharp.Collections.Iterators.pas(129): E2003 Undeclared identifier: 'fState'
[dcc32 Error] DSharp.Collections.Iterators.pas(147): E2003 Undeclared identifier: 'fState'
[dcc32 Error] DSharp.Collections.Iterators.pas(148): E2003 Undeclared identifier: 'STATE_ENUMERATOR'
[dcc32 Error] DSharp.Collections.Iterators.pas(149): E2003 Undeclared identifier: 'STATE_RUNNING'
[dcc32 Error] DSharp.Collections.Iterators.pas(149): E2030 Duplicate case label
[dcc32 Error] DSharp.Collections.Iterators.pas(156): E2003 Undeclared identifier: 'fCurrent'
[dcc32 Error] DSharp.Collections.Iterators.pas(160): E2003 Undeclared identifier: 'STATE_FINISHED'
[dcc32 Error] DSharp.Collections.Iterators.pas(173): E2003 Undeclared identifier: 'fState'
[dcc32 Fatal Error] DSharp.Core.dpk(38): F2063 Could not compile used unit 'DSharp.Collections.Iterators.pas'
Failed
Elapsed time: 00:00:00.8
Don't use develop branch of Spring4D if you need compatibility with DSharp but the latest released version.
Currently compatible are Spring4D 1.2.1 and the DSharp spring-1.2.1 branch.
When I want to compile the project there is some warnings:
[dcc32 Error] Unit1.pas(34): E2003 Undeclared identifier: 'CreateRenderingContext'
[dcc32 Error] Unit1.pas(34): E2003 Undeclared identifier: 'opDoubleBuffered'
[dcc32 Error] Unit1.pas(35): E2003 Undeclared identifier: 'ActivateRenderingContext'
All libraries are imported(
P.S. This code works in Delphi 7.
libflac++ includer to project
but there is error.. what's wrong?
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::File::~File()' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::Stream::~Stream()' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::File::File()' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::Stream::is_valid() const' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::Stream::set_ogg_serial_number(long)' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::Stream::set_verify(bool)' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
[ILINK32 Error] Error: Unresolved external 'FLAC::Encoder::Stream::set_streamable_subset(bool)' referenced from C:\USERS\INK\DESKTOP\AMUU UI\RELEASE\UNIT1.OBJ
Make sure you either compile the libFLAC source into the project or link with the library.
I want to use Jpeg image in my delphi vcl application but the delphi giving me this error message, how can solve this problem ?
[DCC Error] Vcl.Imaging.jpeg.pas(747): E1026 File not found: 'jdapimin.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(748): E1026 File not found: 'jmemmgr.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(749): E1026 File not found: 'jmemnobs.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(750): E1026 File not found: 'jdinput.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(751): E1026 File not found: 'jdatasrc.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(752): E1026 File not found: 'jdapistd.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(753): E1026 File not found: 'jdmaster.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(754): E1026 File not found: 'jdphuff.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(755): E1026 File not found: 'jdhuff.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(756): E1026 File not found: 'jdmerge.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(757): E1026 File not found: 'jdcolor.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(758): E1026 File not found: 'jquant1.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(759): E1026 File not found: 'jquant2.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(760): E1026 File not found: 'jdmainct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(761): E1026 File not found: 'jdcoefct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(762): E1026 File not found: 'jdpostct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(763): E1026 File not found: 'jddctmgr.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(764): E1026 File not found: 'jdsample.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(765): E1026 File not found: 'jidctflt.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(766): E1026 File not found: 'jidctfst.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(767): E1026 File not found: 'jidctint.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(768): E1026 File not found: 'jidctred.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(769): E1026 File not found: 'jdmarker.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(770): E1026 File not found: 'jutils.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(771): E1026 File not found: 'jcomapi.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(772): E1026 File not found: 'jdatadst.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(773): E1026 File not found: 'jcparam.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(774): E1026 File not found: 'jcapistd.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(775): E1026 File not found: 'jcapimin.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(776): E1026 File not found: 'jcinit.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(777): E1026 File not found: 'jcmarker.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(778): E1026 File not found: 'jcmaster.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(779): E1026 File not found: 'jcmainct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(780): E1026 File not found: 'jcprepct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(781): E1026 File not found: 'jccoefct.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(782): E1026 File not found: 'jccolor.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(783): E1026 File not found: 'jcsample.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(784): E1026 File not found: 'jcdctmgr.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(785): E1026 File not found: 'jcphuff.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(786): E1026 File not found: 'jfdctint.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(787): E1026 File not found: 'jfdctfst.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(788): E1026 File not found: 'jfdctflt.obj'
[DCC Error] Vcl.Imaging.jpeg.pas(789): E1026 File not found: 'jchuff.obj'
Delphi XE2 does not ship with a unit named Vcl.Imaging.jpeg.pas. It ships with a pre-compiled DCU file named Vcl.Imaging.jpeg.dcu. You need to link against the pre-compiled DCU and not attempt to compile a VCL unit. The error message you are getting can only occur when you attempt to compile a unit from source. You cannot get this message if you pass a pre-compiled DCU to the linker.
I suspect that your .dpr file contains references to a file named Vcl.Imaging.jpeg.pas. Solve the problem by removing the references to Vcl.Imaging.jpeg.pas from your .dpr file. Another explanation is that you have a source file named Vcl.Imaging.jpeg.pas in your search path.
The best solution from DevExpress Forum:
To solve this issue, add the Vcl.Imaging name space to your application by using the Project->Options->Delphi compiler->Unit scope names menu option.
Find the directory where those obj files live. Make sure that directory appears on your project's search path. (They are not files you're meant to compile for yourself.)
If you don't have those obj files in your Delphi installation, then check the installation DVD.