File I/O for Game Developers: Past, Present, and Future
FILE I/O: PAST, PRESENT AND FUTURE CPPCON OCTOBER 3RD 2023 GUY DAVIDSON @HATCAT01INTRODUCTIONS • Head of Engineering Practice at Creative Assembly • 1980 – Acorn Atom • ISO/IEC JTC1/SC22/WG21 • BSI • Disk formatMORE RAM, MORE DISK CAPACITY “The Portable Operating System Interface (POSIX; IPA: /ˈpɒz.ɪks/) is a family of standards specified by the IEEE Computer Society for maintaining compatibility RAM, MORE DISK CAPACITY • Formatted i/o – scanf printf • Direct i/o – fread fwrite • File positioning – ftell fgetpos fseek fsetpos rewind • Unformatted i/o – fgetc/fgets fputc/fputs getchar putchar0 码力 | 64 页 | 2.69 MB | 5 月前3Conan 1 Documentation
For example, you have a package named myssl and you want to generate a Findmyssl.cmake module that de- clares the target MySSL::SSL, but for config mode you want to declare the target MySSL without namespaces runtime_type: Debug compiler.version: 193 os: Windows options shared: True d62dff20d86436b9c58ddc0162499d197be9de1e ... 2.2. Commands 29 Conan Documentation, Release 1.64.1 conan remote login This is the substitute substitute of the old “conan user”. $ conan remote login [-h] [-f FORMAT] [-v [V]] [--logger] [-p [PASSWORD]] remote␣ �→username conan upload The default behavior has changed from requiring –all to include0 码力 | 975 页 | 8.75 MB | 1 年前3Conan 2.0 Documentation
hello/1.0: Exporting package recipe ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example -------- Testing the package: Running shared: $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored package that is the latest created $ conan list hello/1.0#:* Local Cache: hello hello/1.0#fa5f6b17d0adc4de6030c9ab71cdbede (2022-12-22 17:32:19 UTC) PID: 6679492451b5d0750f14f9024fdbf84e19d2941b (2022-12-220 码力 | 652 页 | 4.00 MB | 1 年前3Conan 2.1 Documentation
the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing shared: $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored compiler.libcxx: libc++ compiler.version: 14 os: Macos options fPIC: True shared: False d15c4f81b5de757b13ca26b636246edff7bdbf24 info settings: arch: x86_64 build_type: Debug compiler: apple-clang0 码力 | 694 页 | 4.13 MB | 1 年前3Conan 2.3 Documentation
the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing shared: $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored compiler.libcxx: libc++ compiler.version: 14 os: Macos options fPIC: True shared: False d15c4f81b5de757b13ca26b636246edff7bdbf24 info settings: arch: x86_64 build_type: Debug compiler: apple-clang0 码力 | 748 页 | 4.65 MB | 1 年前3Conan 2.2 Documentation
the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing shared: $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored compiler.libcxx: libc++ compiler.version: 14 os: Macos options fPIC: True shared: False d15c4f81b5de757b13ca26b636246edff7bdbf24 info settings: arch: x86_64 build_type: Debug compiler: apple-clang0 码力 | 718 页 | 4.46 MB | 1 年前3Conan 2.5 Documentation
dependencies and we want all of our dependencies (whenever possible) as shared libraries, we would use -o *:shared=True, with the * pattern that matches all package references. Let’s build the application the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing Release 2.5.0 $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored0 码力 | 769 页 | 4.70 MB | 1 年前3Conan 2.4 Documentation
dependencies and we want all of our dependencies (whenever possible) as shared libraries, we would use -o *:shared=True, with the * pattern that matches all package references. Let’s build the application the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing Release 2.4.1 $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored0 码力 | 769 页 | 4.69 MB | 1 年前3Conan 2.10 Documentation
dependencies and we want all of our dependencies (whenever possible) as shared libraries, we would use -o *:shared=True, with the * pattern that matches all package references. Let’s build the application the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing Release 2.10.1 $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored0 码力 | 803 页 | 5.02 MB | 10 月前3Conan 2.9 Documentation
dependencies and we want all of our dependencies (whenever possible) as shared libraries, we would use -o *:shared=True, with the * pattern that matches all package references. Let’s build the application the package: Building ======== ... [ 50%] Building CXX object CMakeFiles/example.dir/src/example.cpp.o [100%] Linking CXX executable example [100%] Built target example ======== Testing the package: Executing Release 2.9.3 $ conan create . -s build_type=Debug ... hello/1.0: Hello World Debug! $ conan create . -o hello/1.0:shared=True ... hello/1.0: Hello World Release! These new package binaries will be also stored0 码力 | 795 页 | 4.99 MB | 10 月前3
共 339 条
- 1
- 2
- 3
- 4
- 5
- 6
- 34