■購入したもの
メルテック ローダウンフロアージャッキ(2t) ローダウン対応 油圧式 最高値:330mm/最低値:80mm/ストローク:250mm アタッチメント付・サドル30mm Meltec F-70
メルテック クロスレンチ 薄型ソケット仕様 ソケットサイズ:17/19/21/23mm Meltec F-43
ブリヂストン (タイヤ) ブリザック VRX 155/65R14 2018年製 (ホイール) アリア 14×4.5J PCD100/4H +43 シルバー ■軽自動車用 【スタッドレスタイヤ・ホイール4本セット】
コマンドプロンプトから、
osm2pgrouting -f "D:\postGIS\kashiwanoha.osm" -c "D:\PostgreSQL\10\bin\mapconfig_for_cars.xml" -W passXXXXword -p 5433 -d kashiwanoha_routing -U postgres -h localhost
Windows10の環境設定画面から、環境変数を設定しても消えてしまう(現時点で理由不明)ので、SETXを使って強制的に設定した。
システム環境変数の設定はできないみたいだら、取り敢えず、環境変数が設定できれば足りるので、これで対応した。
>SETX ISPELL_DICTDIR "C:\win32app\ispell-w32\dic"
PATHの追加の場合は、上書きにしなければならないことに注意。
>SETX PATH "%PATH%;C:\win32app\ispell-w32\bin"
-----
システム環境変数に設定したければ、コマンドプロンプトを管理者権限で立ち上げれば、対応可能(emacsを管理者権限で立ち上げてshellを使ったら成功した)
その場合は、
SETX → SETX /M
とすれば良い。
pacman -Syuu
以下のメッセージが表示された場合には、Shell の画面を 右上の×ボタンで閉じ、再度 MSYS2 の MSYS Shell (スタートボタンにメニューが出てきます:多分)を開いて、上記コマンドをもう1度実行します。
/* g++ -g time_point2.cpp -o time_point2 g++ -g time_point2.cpp -o time_point2 -I"D:\PostgreSQL\10\include" -L"D:\PostgreSQL\10\lib" -llibpq -lwsock32 -lws2_32 */ /* C言語のtime_tではなく、std::chrono::system_clock::time_point を使わなければならなくなり、 色々調べて、(エライ時間がかかったが)ようやくここに辿りついた ・・・そんなに便利かなあ? このライブラリ? (いや、勿論、時間計算が便利なのは分かっているんだけどね) */ #include <iostream> #include <chrono> #include <ctime> #include <time.h> int sub_time_point(std::chrono::system_clock::time_point tp) { // Add 0.123456 seconds // This will not compile if std::chrono::system_clock::time_point has // courser resolution than microseconds //tp += std::chrono::microseconds(123456); // Now output tp // Convert std::chrono::system_clock::time_point to std::time_t std::time_t tt = std::chrono::system_clock::to_time_t(tp); // Convert std::time_t to std::tm (popular extension) std::tm tm = std::tm{0}; //gmtime_r(&tt, &tm); // Error //gmtime_s(&tt, &tm); // Error // tm = *(gtime(&tt)); // グリニッジ時間 tm = *(localtime(&tt)); // ローカル時間 // Output year std::cout << tm.tm_year + 1900 << '-'; // Output month std::cout << tm.tm_mon << '-'; // Output day std::cout << tm.tm_mday << ' '; // Output hour if (tm.tm_hour <= 9) std::cout << '0'; std::cout << tm.tm_hour << ':'; // Output minute if (tm.tm_min <= 9) std::cout << '0'; std::cout << tm.tm_min << ':'; // Output second if (tm.tm_sec <= 9) std::cout << '0'; std::cout << tm.tm_sec << '\n'; return 0; } int main() { // Create 10-10-2012 12:38:40 UTC as a std::tm std::tm tm = {0}; tm.tm_sec = 14; tm.tm_min = 38; tm.tm_hour = 12; tm.tm_mday = 10; tm.tm_mon = 10; tm.tm_year = 112; // + 1900 tm.tm_isdst = -1; // Convert std::tm to std::time_t (popular extension) //std::time_t tt = timegm(&tm); std::time_t tt = mktime(&tm); // Convert std::time_t to std::chrono::system_clock::time_point std::chrono::system_clock::time_point tp = std::chrono::system_clock::from_time_t(tt); sub_time_point(tp); return 0; }
/* g++ -g test.cpp -o test */ #include <iostream> #include <string> #include <chrono> #include <time.h> class A { public: int a1; }; int func(int count, class A *a) { for ( int i = 0; i < count; i++){ a->a1 = i; a++; } return 0; }; int main() { class A aa[4]; func(4, (class A*)&aa); printf("%d %d %d %d\n", aa[0].a1,aa[1].a1,aa[2].a1,aa[3].a1); return 0; }
■Windowsコマンドプロンプトの文字コード確認方法
コマンドプロンプトで、
chcp
と入力して[Enter]キーを押す
932と表示されたら、文字コードは、Shift-JISに設定されている
→ が、私の環境ではやっぱり932を設定しなおさないと、化ける
■Windowsコマンドプロンプトの文字コード変更方法
文字コードをSJISに設定する場合 → chcp 932
文字コードをUTF8に設定する場合 → chcp 65001
と入力して[Enter]キーを押す
コマンドプロンプトを終了して、再度起動すると、文字コードは、Shift-JISに戻る(こともあるんだろうか?)
タスクリストMSYS2/MinGW-w64 (64bit)をインストールしたら、Windows10の環境で開発できなくなった件
d:\home\c-anemone2019\make_tables_20190110\make_tables> g++ -g Clock.cpp -o Clock.exe -std=c++0x -static-libstdc++ -static-libgcc -lodbc32 -lwsock32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lodbc32 -ladvapi32 -lodbc32 -lwsock32 -lopengl32 -lglu32 -lole32 -loleaut32 -luuid
g++ -g Clock.cpp -o Clock.exe -std=c++0x -static-libstdc++ -static-libgcc -lodbc32 -lwsock32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lodbc32 -ladvapi32 -lodbc32 -lwsock32 -lopengl32 -lglu32 -lole32 -loleaut32 -luuid
d:\home\c-anemone2019\make_tables_20190110\make_tables>Clock
Clock
date1, Tue Jan 01 00:00:36 2019
date1, Tue Jan 01 00:01:12 2019
date1, Tue Jan 01 00:01:48 2019
date1, Tue Jan 01 00:02:24 2019
1日目、現在日時はTue Jan 01 00:02:24 2019
稼動を確認したら、どんどん消していく。
今回の正解は、これ↓だった。
d:\home\c-anemone2019\make_tables_20190110\make_tables>g++ -g Clock.cpp -o Clock.exe -static-libstdc++
d:\home\c-anemone2019\make_tables_20190110\make_tables>Clock
Clock
date1, Tue Jan 01 00:00:36 2019
date1, Tue Jan 01 00:01:12 2019
date1, Tue Jan 01 00:01:48 2019
date1, Tue Jan 01 00:02:24 2019
1日目、現在日時はTue Jan 01 00:02:24 2019
(A)PosiViewは複数の車や物を追跡することを可能にするプラグインです。 それはGPS、USBLシステムまたは他のシステムのような装置から通常NMEA-0183フォーマットで提供される位置と他のデータを受け入れます。
(B)これらのデバイスへの接続は、ネットワークソケットに接続しているデータプロバイダ(UDP / TCP)によって確立されます。 ファイルベースの入力のような将来の代替案が計画されています。
・最初に新しい車両を追加し、それにユニークな名前を付けてそして特性を選択してください。
・タイプを選択してください。 シェイプタイプの場合は、シェイプlineeditを右クリックしてテンプレートシェイプを選択できます。 必要ならば手で形を変えなさい。
・形状タイプの場合は、実際のサイズを設定します。
・アウトライン、塗りつぶし、トラックの色の色を選択します。
・Z値は垂直方向の描画順序を定義します。
・タイムアウトを選択してください。 その時間内に修正が受信されないと、トラッキングウィンドウの表示は赤に変わります。 タイムアウトのn倍以内に修正が受信されないと、追加の通知がメッセージバーに表示されます。
・1つ以上のデータプロバイダを割り当てます。 プロバイダが複数のポジションを提供する場合は、フィルタが必要です。 これはビーコンIDまたは文字列です。 AISプロバイダの場合、フィルタはMMSIにする必要があります。
・変更を適用することを忘れないでください。
MinGWでのDLLの作り方と提供の仕方
(Step 1)
main.cpp
//-------------------------------
#include <stdio.h>
#include "dlltest.h"
int main(void)
{
printf("Add:%d\n", add(1, 2));
printf("Sub:%d\n", sub(1, 2));
return 0;
}
//-------------------------------
dlltest.h
//-------------------------------
int add(int x, int y);
int sub(int x, int y);
//-------------------------------
dlltest.cpp
//-------------------------------
int add(int x, int y)
{
return x + y;
}
int sub(int x, int y)
{
return x - y;
}
//-------------------------------
(Step 2)
>gcc -c dlltest.cpp
(gdbで調べたい時は">gcc -c -g dlltest.cpp")
(Step 3)
>gcc dlltest.o -o dlltest.dll -shared
(これで、dllファイルの完成)
(Step 4)
>gcc -c main.cpp
>gcc main.o dlltest.dll -o ebata.exe
("gcc -g main.cpp dlltest.dll -o ebata.exe" とすれば, main.oを生成することなく、かつ、gdbが使える)
==============================
MinGW以外のコンパイラ(Visual Studioとか)で作成したexeで、MinGW作成のDLLを使用する場合は、(Step 3)を以下のようにする
>gcc dlltest.o -o dlltest.dll -shared -Wl,--out-implib,dlltest.lib
すると"dlltest.lib"ができる。
dllの提供先には、"dlltest.h" ("dlltest.cpp"も付けた方が親切). "dlltest.dll", "dlltest.lib" の3つを全部送付する。