Code Monkey home page Code Monkey logo

buck-yeh / bux Goto Github PK

View Code? Open in Web Editor NEW
4.0 0.0 0.0 388 KB

Static library of whatever are seen required in general purpose but not directly supported from Modern C++. Or whatever reusable originated from my side projects.

Home Page: https://buck-yeh.github.io/bux/html/

License: MIT License

C++ 94.82% CMake 3.76% C 0.52% Dockerfile 0.43% Shell 0.48%
gereral-purposed argv-parser lr1-parser glr-parser logger partial-ordering unicode-converter atomic-lock cpp20-library exceptions

bux's People

Contributors

buck-yeh avatar

Stargazers

 avatar  avatar  avatar  avatar

bux's Issues

`bux::C_EZArgs` wish list

  1. Provide a switch to use '/' to start a flag instead of '-' (long/short name rule may have to switch with it)
  2. Provide a switch to enable case-ignored flag names.

Buck-yeh-bux build failed with error C7595 in MSVC

Hello, I'm a member of Microsoft VCPKG, when I built this port in an internal version of Visual Studio, it failed with following errors:
src\XException.cpp(49): error C7595: 'fmt::v8::basic_format_string<char,int,const char (&)[30],const DWORD &,const DWORD &,void *,void *,const DWORD &>::basic_format_string': call to immediate function is not a constant expression
This error is because of the format string is incorrect, it could be fixed by change the following codes in XException.cpp:

        if (const EXCEPTION_RECORD *er =pInfo->ExceptionRecord)
            RUNTIME_ERROR("code 0x{:x}, flags 0x{:x}, extra 0x{:x}, ip 0x{:x}, arg#{:x}",
                er->ExceptionCode,
                er->ExceptionFlags,
                static_cast<void*>(er->ExceptionRecord),
                static_cast<void*>(er->ExceptionAddress),
                er->NumberParameters);

Changed to:

        if (const EXCEPTION_RECORD *er =pInfo->ExceptionRecord)
            RUNTIME_ERROR("code 0x{:x}, flags 0x{:x}, extra 0x{:x}, ip 0x{:x}, arg#{:x}",
                er->ExceptionCode,
                er->ExceptionFlags,
                (size_t)static_cast<void*>(er->ExceptionRecord),
                (size_t)static_cast<void*>(er->ExceptionAddress),
                er->NumberParameters);

Could you please fix this problem? If you need any information, please contact me directly. Thanks in advance.

Clang link error

When I configure the repo to build with Clang like this:

rm CMakeCaches.txt
CXX=clang CC=clang cmake .
make clean
make -j

I got:

/usr/bin/ld: ../src/libbux.a(StrUtil.cpp.o): undefined reference to symbol '_ZSt20__throw_length_errorPKc@@GLIBCXX_3.4'
/usr/bin/ld: /usr/lib/libstdc++.so.6: error adding symbols: DSO missing from command line
clang-11: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [_deps/fetchedbux-build/test/CMakeFiles/test_expand_env.dir/build.make:104: _deps/fetchedbux-build/test/test_expand_env] Error 1
make[1]: *** [CMakeFiles/Makefile2:208: _deps/fetchedbux-build/test/CMakeFiles/test_expand_env.dir/all] Error 2
make: *** [Makefile:103: all] Error 2

Please advice

Logger.cpp needs a rehaul to have (new) parallel logger module

  • New C_ParaLog as container of any log objects.
  • Log level per contained logger outlet.
  • C_FileLog able to write to new file for size limit in addition to time format string.
  • Create unit test cases. Create sample program for each variation type of logger instead.
  • Port bux to Windows (Targeting only VS2019) and prepare PR from vcpkg

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.