Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Steps I can Remember and Problems I Encountered:
- Steps Taken to Build Static LIB From Fresh Solution/Projects:
- * : Create Static Lib non - windows -universal project
- * : Add Orc-0.4.28 code to project
- * : Add /TC
- * : Add include/dependency directories
- * : Define _CRT_SECURE_NO_WARNINGS in processor part of project file
- * : Used find/replace in visual studio to add underscores to needed calls such as strndup
- * : Added pre processor definitions as needed to code
- * : !!!Modify config.h to: https://pastebin.com/g5j6rcXV !!!
- * : Specified /Subsystem:Windows field to "Not Set" or empty
- * : Result: Success!
- Steps Taken to Build DLL From Fresh Solution/Projects:
- * : Create DLL project
- * : Add Orc-0.4.28 code to project
- * : Add /TC
- * : Change calling convention to __vectorcall
- * : Add include/dependency directories
- * : Define _CRT_SECURE_NO_WARNINGS in processor part of project file
- * : Used find/replace in visual studio to add underscores to needed calls such as strndup
- * : Added pre processor definitions as needed to code
- * : !!!Modify config.h to: https://pastebin.com/g5j6rcXV !!!
- * : Specified /Subsystem:Windows field to "Not Set" or empty
- * : Created a .def file by specifying /MAP, and /MAP:EXPORTS in the linker, then extracting the functions
- using python script, and created a basic .def file with said python script as well
- * : Create a "blacklist" of functions that wont export with python script and specify how many functions to
- include as not to include anything outside orc.
- * : Add .def to linker so it produces a .lib
- * : Result: Some things didn't want to export/link, I didn't build some things:
- * : Issue Later Resolved?: Some things didn't want to export. Solution?: Comment out calls to ORC_ASSERT, ORC_DEBUG, etc.
- Steps taken to Build Some of The Meson Files:
- * : Add include/dependency directories
- * : Remove paths from linker inputs
- * : Change all .dll.a to .lib
- * : Fix linked files
- * : Change calling convention to __vectorcall
- * : Add /TC
- * : Define _CRT_SECURE_NO_WARNINGS in processor part of project file
- * : Sometimes used notepad++'s find/replace in files feture to get rid of -std=gnu99 -fdiagnostics-color=always
- * : Sometimes unchecked Inherit Project Defaults for linker command line and got rid of extraneous arguments
- * : Got rid of "mainCRTStartup" left field blank
- * : Used find/replace in visual studio to add underscores to needed calls such as strndup
- * : Added pre processor definitions as needed to code
- * : !!!Modify config.h to: https://pastebin.com/g5j6rcXV !!!
- * : Got VisualGDB extension
- * : Got rid of random imports
- * : Specified /Subsystem:Windows feild to "Not Set" or empty
- * : Created a .def file by specifying /MAP, and /MAP:EXPORTS in the linker, then extracting the functions
- using python script, and created a basic .def file with said python script as well
- * : Create a "blacklist" of functions that wont export with python script and specify how many functions to
- include as not to include anything outside orc.
- * : Add .def to linker so it produces a .lib
- * : Comment out calls to ORC_ASSERT, ORC_DEBUG, etc.
- Result: everything compile/links that I tested but resulting executable's bug out.
- Unresolved Issues: Buggy executable's, some functions did not export
- Problems with project files:
- * : Some project files are unnecessary and are projects with a ".c" extension added, for example orc_test, then: orc_test.c
- * : The meson files generate unnecessary linker options which are duplicates of the default arguments with extra paramters i.e: -Wl,--start-group -lm -lkernel32 -luser32 -lgdi32 -lwinspool -lshell32 -lole32 -loleaut32 -luuid -lcomdlg32 -ladvapi32 -Wl,--end-group
- * : The meson files generate feed GCC options to the compiler i.e: -std=gnu99, and -fdiagnostics-color=always
- * : Entry point is defined as "mainCRTStartup" which has caused issues
- * : Linker options are set to link .dll.a files instead of .lib
- * : Project does not generate accompanying .lib file to .dll
- * : Linker input's specify paths (which doesn't work in MSVS)
- * : Necessary pre - processor definitions such as _CRT_SECURE_NO_WARNINGS are not defined
- * : Some C functions like strndup need an underscore... because Microsoft
- * : It is necessary to use /Gv __vectorcall or /Gr __fastcall when compiling DLL's in the dll, and exe
- * : Additional Dependency and Additional Include directories are not set.
- * : Need to compile with /TC
- * : Some projects seemingly randomly input random imports and exports including their own results.
- * : /Subsystem:Windows specified, causing linker/linking issues.
- * : Names of outputted files do not match files attempting to be linked with, for example liborc-0.4.dll vs. liborc-0.4-0.dll
- * : When compiling DLL, some functions "cant be found" when linking with an executable or when exporting.
- * : Pre - processor definitions such as ORC_ENABLE_UNSTABLE_API and HAVE_CONFIG did not resolve correctly, needed to modify code to add
- * : Default config file needed to be changed https://pastebin.com/g5j6rcXV
- * : Needed VisualGDB extension for some of its C files https://visualgdb.com/ .
- * : !!!Build is buggy, executable crash, however when I took the source and put it in a fresh project file and built static pretty much everything seems to work fine!!! (e.g exec_opcodes_sys.exe)
Add Comment
Please, Sign In to add comment