User forums > Using Code::Blocks

Cannot find libs ... but they are there...

(1/7) > >>

msdobrescu:
Hello,

I am trying to get rid of the MSCV++ 2015 compiler for a project due to its returning bug (find it here: https://connect.microsoft.com/VisualStudio/feedback/details/1853228/lnk1179-invalid-or-corrupt-obj-file-created-by-vs-2015-rtm-compiler-in-debug-builds).
Despite MSVC++ 2015 is pretty advanced in templates (it needs less "template" and "typename" keywords than gcc for the moment as it deduces well the purpose of a A::B::C or A::B::C::F() construct), I need to go with something closer to the standard.

I have an Adobe Illustrator plugin made with Adobe's template, which is MSVC++ based. I have installed Code::Blocks 16.01 and TDM-GCC-64 compiler under, configured the compiler, imported the MSCV++ project into C::B, configured the paths to the headers and libs in the project.

The project compiles pretty well under 64bit, much faster than MSVC++ (after some "template" and "typename" keywords  here and there), but it fails linking:


--- Code: ---
-------------- Build: Debug x64 in jScriptor (compiler: TDM-GCC-64)---------------

x86_64-w64-mingw32-g++.exe -shared -Wl,--output-def=libjScriptor.def -Wl,--out-implib=libjScriptor.a -Wl,--dll -L..\..\Mozilla\SpiderMonkey\mozjs-45.0.2\js\src\build_OPT.OBJ\dist\sdk\lib -L..\..\Mozilla\SpiderMonkey\mozjs-45.0.2\js\src\build_OPT.OBJ\dist\sdk\lib -L"C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10586.0\um\x64" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\illustratorapi\illustrator\IAIFilePath.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\illustratorapi\illustrator\IAIStringFormatUtils.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\illustratorapi\illustrator\IAIUnicodeString.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\AppContext.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\HtmlUIController.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\IllustratorSDK.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\Main.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\Plugin.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\SDKAboutPluginsHelper.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\SDKErrors.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\SDKPlugPlug.o" ".objs\Adobe\sdk\Adobe Illustrator CC_2015.3 SDK\samplecode\common\source\Suites.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsActionDialogStatus.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIArtboardLayout.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIArtType.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIBoolean.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIColorModel.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIColorProfile.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAICropMarkStyle.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDictionary.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentColorModelValue.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentFileFormatParameters.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentHandle.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentListSuite.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentMiPrintRecord.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentPlatformPrintRecord.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentRulerUnitValue.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentSetup.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentStartupProfile.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentSuite.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIDocumentVersionInfo.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIErr.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIFileFormatHandle.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIFileFormatOptions.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIFileFormatSuite.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIFilePath.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIInt16.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIInt32.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAINewDocumentPreset.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIPreviewMode.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIRasterResolution.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIReal.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIRealPoint.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIRealRect.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIRect.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAISpotColorMode.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAITransparencyGrid.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIUint32.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIUnicodeString.o" ".objs\jScriptor\jScriptor\Integration\Adobe Illustrator\jsAIVersion.o" ".objs\jScriptor\jScriptor\Integration\Adobe Text Engine\jsATEDocumentTextResources.o" ".objs\jScriptor\jScriptor\Integration\Adobe Text Engine\jsATEStory.o" ".objs\jScriptor\jScriptor\Integration\Adobe Text Engine\jsATETextRanges.o" .objs\jScriptor\jScriptor\Integration\jsClass.o .objs\jScriptor\jScriptor\Integration\jsConvert.o .objs\jScriptor\jScriptor\Integration\jsError.o .objs\jScriptor\jScriptor\Integration\jsProperty.o .objs\jScriptor\jScriptor\Integration\jsRTTI.o .objs\jScriptor\jScriptor\Integration\jsSuites.o .objs\jScriptor\jScriptor\Integration\jsTestSuite.o .objs\jScriptor\jScriptor\Integration\Native\jsBool.o .objs\jScriptor\jScriptor\Integration\Native\jsChar.o .objs\jScriptor\jScriptor\Integration\Native\jsCharArray.o .objs\jScriptor\jScriptor\Integration\Native\jsConstCharArray.o .objs\jScriptor\jScriptor\Integration\Native\jsFourCharacterCode.o .objs\jScriptor\jScriptor\Integration\Native\jsShort.o .objs\jScriptor\jScriptor\Integration\Native\jsVoid.o ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsPIProperty.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsPIType.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPErr.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPErrorData.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPPlatformFileReference.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPPlugin.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPPluginList.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPPluginListIterator.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPPluginsSuite.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPStringPool.o" ".objs\jScriptor\jScriptor\Integration\Sweet Pea\jsSPStringsSuite.o" .objs\jScriptor\jScriptor\Source\jScriptorFileHelper.o .objs\jScriptor\jScriptor\Source\jScriptorLog.o .objs\jScriptor\jScriptor\Source\jScriptorPanelController.o .objs\jScriptor\jScriptor\Source\jScriptorParameter.o .objs\jScriptor\jScriptor\Source\jScriptorPlugin.o .objs\jScriptor\jScriptor\Source\jScriptorPreferences.o .objs\jScriptor\jScriptor\Source\jScriptorPromptDialog.o .objs\jScriptor\jScriptor\Source\jScriptorSuites.o .objs\jScriptor\jScriptor\Source\jScriptorTokenisor.o .objs\jScriptor\jScriptor\Source\jScriptorUtils.o .objs\jScriptor\jScriptor\Source\jsEngine.o .objs\jScriptor\jScriptor\Source\utils.o  .objs\jScriptor\jScriptor\Resources\Win\jScriptor.res -o jScriptor.dll -m64  -lkernel32.lib -luser32.lib -lgdi32.lib -lwinspool.lib -lcomdlg32.lib -ladvapi32.lib -lshell32.lib -lole32.lib -loleaut32.lib -luuid.lib -lodbc32.lib -lodbccp32.lib -lmozjs-45.lib -lkernel32.lib -luser32.lib -lgdi32.lib -lwinspool.lib -lcomdlg32.lib -ladvapi32.lib -lshell32.lib -lole32.lib -loleaut32.lib -luuid.lib -lodbc32.lib -lodbccp32.lib -lmozjs-45.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lkernel32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -luser32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgdi32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lwinspool.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lcomdlg32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ladvapi32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lshell32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lole32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -loleaut32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -luuid.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lodbc32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lodbccp32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lmozjs-45.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lkernel32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -luser32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lgdi32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lwinspool.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lcomdlg32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -ladvapi32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lshell32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lole32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -loleaut32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -luuid.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lodbc32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lodbccp32.lib
M:/Development/Tools/c++/CodeBlocks/windows/codeblocks/TDM-GCC-64/bin/../lib/gcc/x86_64-w64-mingw32/5.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lmozjs-45.lib
C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10586.0\um\x64/kernel32.lib: error adding symbols: File in wrong format
collect2.exe: error: ld returned 1 exit status
Process terminated with status 1 (0 minute(s), 15 second(s))
27 error(s), 0 warning(s) (0 minute(s), 15 second(s))

--- End code ---

I see some libs duplicated, probably they are added by the compiler itself. Note, my libs from Windows SDK are on a path with spaces because Windows SDK traditionally installs in C:\Program Files (x86)\Windows SDK\10....

What can I do to fix this, as it is my first project on a gcc compiler from scratch?

Thank you.

BlueHazzard:
you can try to remove the .lib extension from the libraries in your project settings

msdobrescu:
I have removed the redundant entries (for each profile and the root profile I've put the libs, thus the duplication.
I have removed the .lib extension and the error stays the same, nothing changed.

BlueHazzard:

--- Code: ---C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10586.0\um\x64/kernel32.lib: error adding symbols: File in wrong format
--- End code ---
this looks like that you try to use a library not compiled with your compiler version (probably compiled with mvc and not gcc, so it is not possible to use this library...)

Have you checked the paths to the libraries? Also check that you don't have a second mingw installation in your PATH environment variables...

msdobrescu:
I don't find any other MinGW unless C::B uses some internally if there are several compilers installed in C::B.
I did not find any gcc version of the kernel32 library, for example.

Navigation

[0] Message Index

[#] Next page

Go to full version